Docker Swarm은 Docker 컨테이너를위한 기본 클러스터링 및 스케줄링 도구로 Docker 호스트 풀을 단일 가상 Docker 호스트로 바꾸는 도구입니다. 컨테이너 오케스트레이션에 Docker Swarm을 사용하려면 다음과 같은 일반 단계를 따르십시오.
docker swarm join --token <token> <manager-ip>:<port></port></manager-ip></token>
실행합니다.docker service create
사용하여 서비스를 배포 할 수 있습니다. 예를 들어, <code>docker service create --name myservice --replicas 3 nginx</code> Nginx 컨테이너의 세 가지 인스턴스를 시작합니다.docker service scale
으로 서비스를 업 또는 다운 할 수 있습니다. 예를 들어, <code>docker service scale myservice=5</code> myservice
서비스를 5 개의 인스턴스로 확장합니다.docker node
명령을 배포하여 Swarm에서 노드를 관리하는 데 docker stack deploy
사용하십시오.docker network create -d overlay my-network
만들 수 있습니다.이 단계를 수행하면 Docker Swarm을 효과적으로 사용하여 컨테이너를 조정하여 필요에 따라 배치, 관리 및 조정을 할 수 있습니다.
Docker Swarm 클러스터를 설정하려면 관리자 노드를 초기화하고 클러스터에 작업자 노드를 추가해야합니다. 자세한 단계는 다음과 같습니다.
Swarm 초기화 : Manager 노드로 사용하려는 컴퓨터에서 실행하십시오.
<code>docker swarm init</code>
이 명령은 떼를 초기화하고 작업자 노드에 대한 조인 토큰을 제공합니다.
작업자 노드에 가입하십시오 : 각 작업자 노드에서 관리자 노드에서 <code>docker swarm init</code> 제공 한 명령을 실행하십시오. 명령은 다음과 같습니다.
<code>docker swarm join --token SWMTKN-1-3pu6hszjas19xyp7ghgosyx9k8atbfcr8p2is99znpy26u2lkl-1awxwuwd3z9j1z3puu7rcgdbx 192.168.99.100:2377</code>
Swarm 확인 : 관리자 노드에서 다시 Swarm의 상태를 확인할 수 있습니다.
<code>docker node ls</code>
이것은 떼에있는 모든 노드를 나열하여 자신의 상태와 관리자인지 근로자인지를 보여줍니다.
오버레이 네트워크 만들기 : 선택적으로 서비스를 통신 할 오버레이 네트워크를 만듭니다.
<code>docker network create -d overlay my-overlay-network</code>
이 단계를 수행하면 기본 Docker Swarm 클러스터가 설정되어 서비스를 배포 할 준비가됩니다.
Docker Swarm의 서비스 관리 및 스케일링은 간단하며 몇 가지 명령으로 수행 할 수 있습니다. 주요 작업은 다음과 같습니다.
서비스 작성 : 새 서비스를 만들려면 docker service create
명령을 사용하십시오. 예를 들어:
<code>docker service create --name myservice --replicas 3 nginx</code>
이 명령은 nginx 컨테이너의 3 개의 복제품으로 myservice
라는 서비스를 만듭니다.
서비스 스케일 : 서비스를 위 또는 아래로 확장하려면 docker service scale
명령을 사용하십시오. 예를 들어, myservice
5 개의 복제본으로 확장하려면 :
<code>docker service scale myservice=5</code>
서비스 업데이트 : 실행중인 서비스 구성을 업데이트하려면 docker service update
명령을 사용하십시오. 예를 들어, myservice
의 이미지를 최신 버전의 Nginx로 변경합니다.
<code>docker service update --image nginx:latest myservice</code>
롤백 서비스 : 업데이트 후 서비스를 이전 상태로 롤백 해야하는 경우 docker service rollback
명령을 사용하십시오.
<code>docker service rollback myservice</code>
서비스 목록 : Swarm의 모든 서비스를 보려면 사용하십시오.
<code>docker service ls</code>
서비스 검사 : 서비스에 대한 자세한 정보를 얻으려면 사용하십시오.
<code>docker service inspect myservice</code>
이러한 명령을 사용하면 Docker Swarm 클러스터 내에서 서비스를 효과적으로 관리하고 확장하여 응용 프로그램의 요구를 충족시킬 수 있습니다.
Docker Swarm 배포 확보는 응용 프로그램 및 데이터를 보호하는 데 중요합니다. 다음은 다음과 같은 모범 사례입니다.
Swarm 통신에 TLS를 사용하십시오 . Swarm 노드 간의 모든 통신이 TLS를 사용하여 암호화되도록하십시오. 이것은 다음과 함께 떼 초기화 중에 설정할 수 있습니다.
<code>docker swarm init --advertise-addr <manager-ip> --listen-addr <manager-ip>:2377 --tlsverify --tlscacert=ca.pem --tlscert=server-cert.pem --tlskey=server-key.pem</manager-ip></manager-ip></code>
결합 토큰을 회전시킵니다 : 합의되지 않은 노드가 떼가 결합하는 것을 방지하기 위해 조인 토큰을 정기적으로 회전시킵니다. 다음 명령을 사용하십시오.
<code>docker swarm join-token --rotate worker docker swarm join-token --rotate manager</code>
민감한 데이터에 비밀을 사용하십시오 : Docker 비밀을 사용하여 비밀번호 및 API 키와 같은 민감한 데이터를 관리하십시오. 비밀은 휴식과 운송 중에 암호화되며 액세스는 엄격하게 제어 될 수 있습니다.
<code>echo "my_secret_password" | docker secret create my_secret -</code>
docker system prune
사용하여 사용되지 않은 이미지와 컨테이너를 정리하십시오.이러한 모범 사례를 따르면 Docker Swarm 배포의 보안을 크게 향상시켜 응용 프로그램과 데이터를 잠재적 인 위협으로부터 보호 할 수 있습니다.
위 내용은 컨테이너 오케스트레이션에 Docker Swarm을 어떻게 사용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!