만쥬의 개발일기
article thumbnail
[Elasticsearch] - Elasticsearch의 각 노드 별 적정 메모리 할당
🛠️TOOL/🔭Elasticsearch 2024. 3. 27. 17:51

Elasticsearch의 램 부족 현상 엘라스틱 서치를 멀티 노드 클러스터 환경에서 연습하던 중, 노드가 error code 137과 함께 죽는 현상이 종종 발생했습니다. 이는 메모리 부족과 관련된 이슈였는데, 사용 중인 랩탑의 총 메모리가 8GB에 불과해 노드 3개짜리 클러스터를 도커 컨테이너로 구성할 때 각 노드에 단 1GB씩을 할당해줘서 발생한 것이었습니다. (기존 아키텍쳐 그림입니다) 엘라스틱 서치를 사용할 때는 연습환경일지라도 한 노드 당 최소 4GB 이상씩을 할당해줘야하고, 물론 빠른 작업을 제공하기 위해서는 메모리는 많으면 많을 수록 좋습니다. 만약 메모리가 남는다면, 특히 인덱싱과 CRUD, 검색 및 집계 등을 처리하는 데이터 노드에 더 많은 메모리를 할당해주는 것이 일반적으로 좋습니다...

article thumbnail
[Elasticsearch] - 실제 배포 환경과 동일하게 멀티 노드 클러스터 구축하기
🛠️TOOL/🔭Elasticsearch 2024. 3. 27. 17:48

엘라스틱서치 노드 & 키바나 & 로그스태시 서버를 각각 구축했다면, 이제 각각의 yml 파일들을 수정해주어야 합니다. 최종 목표 아키텍쳐는 다음 그림처럼 각 서버당 도커 컨테이너를 띄우고, 세 개의 서버에서는 엘라스틱 서치를 , 한 개의 서버에서는 키바나를 띄우는 멀티 노드 클러스터를 구축하는 것입니다. 엘라스틱 서치와 키바나 설치 과정은 이전 포스팅을 참고해주세요. [ELK] - Elasticsearch & Kibana 8.12.2 설치 (with docker,WSL2) 이번 포스팅에서는 엘라스틱 서치와 키바나 8.12.2 버전을 설치하고, 단일 노드와 멀티 노드 클러스터 환경을 각각 구축하는 방법에 대해 알아보겠습니다. 만약 서버(컴퓨팅 자원)이 여러 대라면 kangmanjoo.tistory.com ..

[Docker] - 빈 도커 이미지 기본 세팅 (Ubuntu용)
🛠️TOOL/🐳Docker 2024. 3. 26. 17:45

도커 이미지를 받으면 보통 안에 아무런 툴도 깔려있지 않아 굉장히 불편하다. 할 때마다 찾기가 귀찮아서 한 번에 정리해놓겠다. 우선 관리자 모드로 들어가기 위해 다음 옵션으로 bash에 접속해준다. docker exec -u 0 -it {컨테이너명} /bin/bash 그리고 다음 입력으로 sudo, vim, net-tools(ifconfig 등) , iputils-ping(ping 용) 을 설치해준다. 이 명령어는 도커가 아닌 데비안 계열 리눅스 VM을 처음 설치할 때도 유용하게 쓰일 수 있다. apt-get update && apt-get install -y sudo && sudo apt-get install vim && sudo apt install net-tools && sudo apt-get in..

article thumbnail
[ELK] - Elasticsearch & Kibana 8.12.2 설치 (with docker,WSL2)
🛠️TOOL/🔭Elasticsearch 2024. 3. 25. 15:58

이번 포스팅에서는 엘라스틱 서치와 키바나 8.12.2 버전을 설치하고, 단일 노드와 멀티 노드 클러스터 환경을 각각 구축하는 방법에 대해 알아보겠습니다. 만약 서버(컴퓨팅 자원)이 여러 대라면 멀티 노드 클러스터 구축 시 단일 노드를 각 서버마다 구축해주면 되고, 서버가 한 대로 한정적이라면 멀티 노드 클러스터를 구축해주면 됩니다. 개발환경 ubuntu 20.04 java 17 docker 26.0.0 elastic search 8.12.2 🚨주의사항🚨 엘라스틱 서치는 일정량 이상의 메모리가 필요합니다. 노드당 최소 4GB를 할당해주는 것이 바람직하며, 만약 1GB등 매우 낮은 메모리를 할당해준다면 작동 도중 137번 error code와 함께 프로그램이 중단될 수 있습니다. 따라서 충분한 컴퓨팅 자원을..

article thumbnail
[Network] - 업링크와 다운링크
🖥️CS/🛜네트워크 2024. 3. 20. 09:13

중계기에는 Donor 안테나와 Service 안테나가 있습니다. Donor 안테나는 기지국으로부터 신호를 받는 안테나이고, Service 안테나는 단말기에 신호를 제공하는 안테나입니다. 업링크와 다운링크를 그림으로 나타내면 다음과 같습니다. 업링크(Up Link) UL은 단말기로부터 신호를 올려보내는 통로입니다. UL IN : 단말기로부터 신호를 받는다. UL OUT : 단말기로부터 받은 신호를 증폭하여 기지국으로 보낸다. 네트워크에서는 단말기와 중계기 뿐 아니라 물리적으로 하위 장비에 연결된 상위 장비와의 연결을 의미하기도 합니다. 일반적으로 컴퓨터 네트워크에서는 스위치 또는 라우터와 같은 상위 장비와의 연결을 말합니다. 대규모 기업이나 데이터 센터에서는 여러 개의 스위치를 병렬로 연결하여 스위치 간의..

article thumbnail
[Network] - NAT란?
🖥️CS/🛜네트워크 2024. 3. 20. 09:09

Private Network(사설망)은 공인 인터넷이 아닌 한정된 공간에서 사용하는 네트워크를 의미합니다. 간단히 생각하면, 공유기는 공인 IP를 통해 인터넷 네트워크를 연결하고, 공유기는 공유기에 연결된 기기들에 사설 IP를 분배해주는 방식으로 네트워크가 구성됩니다. 가정에서 사용하는 공유기 이외에도, 라우터, 방화벽과 같은 네트워크 장비에서 사설 IP와 서브넷 마스크를 지정하고 게이트웨이로 사용가능하며, 이에 연결된 기기들에 사설 IP를 할당합니다. 만약 공인 IP와 사설 IP에 대한 도메인 지식이 없다면 이전 포스팅을 보며 간단히 이해하고 넘어갈 수 있습니다. [스마트팜] - 공인IP와 사설 IP, 포트 포워딩 킥오프 미팅이후, 메일로 다음 미팅 약속을잡은 뒤 우리는 강서구에 위치한 업체에 가서 나..

[Infra] - AD 서버
🖥️CS/🗄️인프라 2024. 3. 20. 08:57

AD AD(Active Directory)란? AD는 사용자가 마이크로소프트 IT 환경에서 업무를 수행하는 데 도움을 주는 데이터베이스이자 서비스 집합입니다. 데이터베이스(또는 디렉토리)는 환경에 대한 중요한 정보를 담고 있습니다. 여기는 사용자와 컴퓨터 목록, 권한에 대한 정보 등이 포함됩니다. 일반적인 데이터베이스와는 달라 암호화 되어있기 때문에 메모장이나 텍스트 에디터로 열람이 불가능합니다. 서비스는 IT 환경에서 일어나는 대부분의 활동을 제어합니다. 특히 서비스는 일반적으로 사용자가 입력하는 사용자 ID와 비밀번호를 확인하는 방법으로, 사용자가 주장하는 본인이 맞는지 검증하고(인증), 각기 허용된 데이터에만 액세스할 수 있도록 합니다(승인). 주 AD 서비스인 AD DS(Active Directo..

article thumbnail
[Network] - SDN, NFV, VFN
🖥️CS/🛜네트워크 2024. 3. 20. 08:49

이번 포스팅에서는 SDN(Software Defined Networking)과 NFV(Network Function Virtualization), NFV와 관련된 VNF(Virtual Network Functions)에 대해 알아보겠습니다. SDN : 소프트웨어 정의 네트워킹 SDN은 네트워크의 컨트롤 플레인을 네트워크 트래픽을 전달하는 데이터 플레인과 분리한다는 개념입니다. 아마 벌써 네트워크의 제어 플레인과 데이터 플레인에 대해 모를 수 있으니 이에 대한 용어 정리를 먼저 하고 넘어가겠습니다. 네트워크 계층은 OSI 7계층의 제 3계층입니다. 이전에도 OSI 7계층을 다룬적은 있지만, 이번에 네트워크 레이어에 대해서만 자세히 다뤄보겠습니다. 네트워크 레이어는 데이터 플레인과 컨트롤 플레인으로 나뉩니다..