본문 바로가기

모니터링

[Portainer] portainer를 통한 도커 모니터링 및 관리

728x90

안녕하세요 오랜만입니다. 바쁜시기가 다 지나고 여유로워지고 나니 블로그가 생각났습니다.

 

오늘의 주제는 Portainer 입니다.

 

portainer는 Docker Web 관리 Tool 입니다. 간단하게 말해서 현재 실행되고있는 Docker 관련된 컨테이너, 이미지, 볼륨, 네트워크 등을 web에서 관리할 수 있게 해줍니다. 

 

무엇보다 로컬상의 Docker 뿐만아니라 다른 노드의 Docker도 agent를 통해 관리가 가능합니다.

 

portainer 의 공식 홈페이지입니다. 공식홈페이지를 읽어보면 컨테이너를 관리할수있는 GUI를 제공해주고 도커뿐만아니라 쿠버네티스, 도커스웜도 지원해준다고 되있네요

 

www.portainer.io/

 

Portainer | Open Source Container Management GUI for Kubernetes, Docker, Swarm

Portainer is the definitive open source container management GUI for Kubernetes, Docker, Swarm and ACI.

www.portainer.io

 

 

다음은 오늘이용할 portainer 공식 이미지입니다.

 

hub.docker.com/r/portainer/portainer

 

Docker Hub

 

hub.docker.com

다운로드 횟수가 10M+ 네요 굉장합니다.

 

오늘은 이 이미지를 통해 로컬상의 도커와 agent를 통해 다른 노드의 도커도 연결해보겠습니다.

 

전체 구성도를 대략적으로 그려보면 이런느낌이 됩니다. 

 

우선 노드1에서 포테이너와 포테이너 에이전트를 도커로 설치합니다.

 

docker run -d -p 8000:8000 -p 9000:9000 --name=portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce

docker run -d -p 9001:9001 --name portainer_agent --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker/volumes:/var/lib/docker/volumes portainer/agent

포테이너 접근 포트는 9000번입니다.

 

이런식으로 해주고 처음에 username 입력하고 pw 입력하는 부분이 나옵니다. 대충 적어주고 진행합시다. 그리고 무얼 매니지 할거냐 물어볼텐데 처음에 가장 왼쪽에 local을 클릭합시다. 

 

그러면 이제 메인화면이 다음처럼 나타납니다.

 

이 화면은 제가 다른 노드를 추가해 놓은상태라 여러개지만 여러분들은 local 하나만 존재하실겁니다. 이것저것 클릭해서 만져보면 여러가지를 컨트롤하고 모니터링할 수 있습니다.

 

 

 

 

자 그럼 이제 다른노드를 추가해봅시다. 

 

관리하고 싶은 노드에 portainer agent를 설치해줍니다.

 

docker run -d -p 9001:9001 --name portainer_agent --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v /var/lib/docker/volumes:/var/lib/docker/volumes portainer/agent

 

 

그리고 이제 portainer로 접속하여 엔드포인트 추가를 눌러줍니다.

 

 

이 엔드포인트 URL에 노드IP:9001 을 입력해주면 연결이됩니다.

 

 

 

이렇게 오늘은 도커 컨테이너 관리 도구인 포테이너를 컨테이너로 구축해보고 다른 노드도 연결해봤습니다.

 

다음시간엔 모니터링 도구인 zabbix에 대해 알아보겠습니다.

반응형