본문 바로가기

분류 전체보기10

Max user processes & Open files Elasticsearch를 처음 설치하다 보면 항상 보는 에러들이 몇 가지 있습니다. 1) root 계정으로 실행할 수 없으며 2) openfiles, max process 값을 수정해야하고 3) swappiness 값 설정 변경 요청도 있습니다. 그 중에 elasticsearch는 openfiles와 max process는 최소 65535로 설정하라며, 커널에서 해주는 기본 설정보다 큰 값을 요구하는데요, 오늘은 해당 파라미터가 정확히 어떤 것을 가르키는지 그리고 설정된 값 이상이 되면 어떤 일이 일어나는지 알아보겠습니다. 1. Max user processes Max user processes의 의미는 하나의 계정에서 최대로 실행할 수 있는 process의 개수를 말합니다. OS에서의 확인은 # ul.. 2022. 10. 18.
WEB - WAS를 연동해서 쓰는 이유 안녕하세요! 오늘은 WEB/WAS에 관련된 내용입니다. 대부분의 회사에서 Web 서비스를 운영할 때 보통 WEB-WAS 구조로 많이 설계합니다. WEB-WAS 연동의 이유를 구글에 검색하면 “정적(html) 컨텐츠의 처리는 web이 더 빠르고 동적(DB 요청 등) 컨텐츠의 처리는 WAS가 빠르기 때문입니다.” 라는 내용이 대부분입니다. 절대 틀린 내용은 아닙니다. WAS 입장에서 모든 일을 혼자 처리하지 않고 Web에서 정적인 컨텐츠를 처리하는 것은 꼭 필요한 로직일 수 있습니다. 하지만 이 구조는 보는 관점에 따라서는 비효율적일 수 있겠습니다. WAS만으로 할 수 있는 일을 Web 서버까지 두어 자원의 손해 발생 외부에서의 Timeout 이외에 Web/WAS 사이에서 발생하는 내부 Timeout에 대한.. 2022. 3. 18.
Elasticsearch가 왜 느려졌을까? 지난 XX월 저희 모니터링 서버가 느려지는 현상이 있었습니다. XX월 중순부터 진행한 “TMS기능” PoC로 Elasticsearch성능 저하 유발되었습니다. TMS는 네트워크 장비에서 각 포트별 Flow 정보를 분석하여 트래픽을 상세히 분석할 수 있는 기능인데, 해당 기능이 과도한 데이터 발생으로 성능통계(Elasticsearch)부분에 많은 부하를 발생하였습니다. XX 연구소와 같이 원인 분석하였지만 원인 파악은 안되었고, 해당 기능은 disable 되었습니다. ※ 해당 TMS기능은 ‘PRTG’ 등 대체 솔루션이 있으며, 이를 대신하여 검토 중입니다. 위 내용은 모니터링 서버 담당자의 원인 분석 메일입니다. Elasticsearch를 공부하고 있던 입자에서 해당 현상이 왜 생겼는지 궁금했습니다. 그래.. 2022. 2. 18.
[Kubernetes] Container Runtime 컨테이너를 구글에 검색했을 때 가장 많이 나오는 내용은 역시 Docker와 쿠버네티스(이하 K8s)입니다. Docker와 K8s의 역할은 다릅니다. Docker는 컨테이너를 띄워주는 역할이고, K8s는 그 띄워진 컨테이너의 안정적인 운영을 위해 여러가지 기능들을 추가한 container orchestration입니다. (조금 의미가 없는 말입니다. Docker는 Docker swam을 이용해 K8s를 대체할 수 있고, K8s에서도 알아서 컨테이너를 띄울 수 있기 때문입니다.) 그리고 여기서 컨테이너를 띄워주는 역할을 할 수 있는 도구 즉, 컨테이너 런타임은 여러가지가 있습니다. docker, CRI-O, containerd 등이 있는데요. 최근 K8s가 컨테이너 런타임으로서 더 이상 docker를 지원하.. 2022. 1. 26.