StorageReview.com

씬 클라이언트에 Docker Swarm 설치

기업  ◇  홈랩

홈랩 구축에 많은 예산을 투자할 수 없는 저에게 HP t730 씬 클라이언트는 홈랩 용도에 정말 딱 맞는 제품입니다. 운 좋게도 최근 StorageReview 서브레딧 에서 진행된 이벤트에 당첨되어 이 제품을 받게 되었습니다 . t730은 다양한 용도에 충분히 활용할 수 있을 만큼의 RAM과 CPU 성능을 갖추고 있으면서도 과하지 않은 사양입니다. Pi-Hole을 호스팅하거나, PfSense 라우터/방화벽으로 사용하거나, 이번 경우처럼 Docker Swarm에 연결하는 등 다양한 용도로 사용할 수 있습니다.

도커 스웜 설치

Docker 또는 컨테이너 전체에 익숙하지 않은 경우 거의 모든 것에서 실행되는 경량 VM으로 생각할 수 있습니다. 이는 지나친 단순화이지만 압도적이지 않으면서 충분한 정보를 제공합니다. Swarm은 Docker의 확장입니다. 컨테이너를 "오케스트레이션"하여 여러 노드에 배포하고 리소스를 관리하는 등의 기본 제공 방식을 간단하게 제공합니다.

기존 인프라에는 이미 Swarm으로 실행되는 노드가 5개 있었습니다. 라즈베리 파이 B4 4개와 델 옵티플렉스 7040 1개였죠. 덕분에 시작하기에 아주 좋은 기반이 마련되었습니다. 하지만 이 Docker Swarm 튜토리얼을 따라 하려면 노드가 하나만 있어도 충분합니다. 참고로 저는 이 노드를 거의 공짜로 얻었지만, 잘 찾아보고 흥정하면 이베이에서 200달러 이하 로 구할 수도 있습니다.

Docker Swarm 설치 운영 체제

먼저, 제가 선호하는 리눅스 배포판인 데비안 버스터를 HP t730에 설치했습니다. 다음으로, 데비안 설치 파일을 USB 플래시 드라이브에 플래싱해야 했습니다. 이미지를 플래싱하는 데에는 무료이고 사용하기 쉬운 Balena Etcher 가 좋은 선택입니다 . 이 과정이 완료되면 설치 과정을 시작하겠습니다.

HP T730그림 1: 새 SSD 설치

먼저, T730에 장착된 32GB SATA M.2 드라이브를 256GB 드라이브로 교체했습니다. 하지만 당시에는 몰랐지만, 이것이 나중에 문제를 일으켰습니다. 일부 펌웨어 인터페이스는 버그가 있어서 제조사 정품이 아닌 드라이브와 호환되지 않는 경우가 있습니다. 제가 설치한 드라이브가 바로 그런 불량 드라이브였습니다. 이 문제를 해결하기 위해 Debian을 설치할 때 Grub을 이동식 드라이브로 설치하도록 설정해야 했습니다. 어떤 드라이브를 설치하느냐에 따라 이 과정이 필요할 수도 있고 필요하지 않을 수도 있습니다.

256GB는 오늘날 우리가 하는 일에 필요하지 않다는 것을 명심하십시오. 저는 그냥 가지고 있었습니다. 최소 64GB를 권장하지만 드라이브에 저장할 수 있는 데이터 양이 제한될 수 있습니다.

드라이브를 설치한 후 데비안 설치 화면으로 부팅했습니다. 기본 설치를 거쳐 언어, 키보드 레이아웃 등을 선택했습니다. 사용자 구성을 위해 특정 작업을 수행합니다. 계정을 비활성화하는 루트 사용자의 암호를 전혀 입력하지 않습니다. 그리고 암호 관리자에 저장한 매우 긴 암호를 가진 관리자라는 새 사용자를 만듭니다. 이것은 시스템을 가능한 한 안전하게 유지합니다.

파티셔닝을 위해 저는 매우 간단한 레이아웃, 1GB 부트 파티션, 루트 파티션에 할당된 나머지 드라이브를 선택했습니다. 나는 파일 시스템에 대해 각각 FAT32와 ext4를 선택했고, 새로운 파일 시스템의 최첨단 기능이 부족하더라도 안정성과 속도 때문에 Btrfs와 같은 것보다 ext4를 선호합니다.

기본 패키지 선택 화면에 도달했을 때 OpenSSH 서버를 제외한 모든 항목을 선택 취소했습니다. 이것에 대한 나의 추론은 기본 시스템이 가능한 한 가볍고 GUI가 없기 때문에 헤드리스 시스템을 원하기 때문입니다. 하지만 이 자습서를 완료하려면 OpenSSH 서버만 있으면 됩니다. 필요한 추가 패키지를 설치할 수 있습니다.

그림 2: 설치 중인 패키지

앞서 언급한 EFI 펌웨어 버그가 발생하면 데비안 위키에 해결 방법이 자세히 나와 있습니다 . Grub 설치가 완료되면 재부팅하고 USB 스틱을 분리합니다. 모든 과정이 순조롭게 진행되면 설치 프로그램에 따라 TTY 또는 GUI로 부팅됩니다.

설치 후 구성

설치가 완료되면 시스템 구성을 시작합니다. 저는 이 과정을 자동화하는 Ansible 플레이북을 작성했습니다 . 하지만 이 가이드를 간결하게 유지하기 위해 여기서는 명령어를 수동으로 실행하겠습니다.

# 이것은 향후 단계를 완료하는 데 필요한 패키지를 설치합니다. sudo apt updatesudo apt install gnupg ca-certificates apt-transport-https curl lsb-release -y# 이것은 apt가 Docker 패키지에서 서명을 확인하는 데 필요한 키를 추가합니다. curl -fsSL https://download .docker.com/linux/debian/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# Docker를 설치하는 리포지토리를 추가하려면 다음을 실행합니다.echo “deb [arch=amd64 signed-by=/usr/share/keyrings/ docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) 안정” | sudo 티 /etc/apt/sources.list.d/docker.list > /dev/null

완료되면 Docker 자체를 설치하고 서비스를 활성화해야 합니다.

sudo apt install docker-ce

sudo systemctl enable -now 도커

이제 Docker를 사용하여 서비스를 실행할 준비가 되었습니다!

HP t730에서 Docker Swarm 사용

Swarm을 처음 사용하는 경우 Swarm을 초기화해야 합니다. 아래 명령을 살펴보겠습니다. 이미 스웜이 있는 경우 이 단계를 건너뜁니다.

sudo 도커 스웜 초기화

제대로 작동하는지 확인하려면 다음 명령을 터미널에 붙여넣으십시오.

만약 [ “$(sudo docker info | grep Swarm | sed 's/Swarm: //g')” == “inactive” ]이면, false를 출력하고, 그렇지 않으면 true를 출력합니다.

호스트가 Swarm 모드에서 실행 중인 경우 해당 명령은 'true'를 반환해야 합니다.

첫 번째 서비스 실행

Swarm을 사용하면 서비스를 생성하는 두 가지 방법이 있습니다.

  1. 도커 서비스 생성 이것은 비슷하다 도커 실행
  2. 도커 스택 배포 이것은 비슷하다 도커 작성

일반적으로 스택을 쉽게 재현할 수 있기 때문에 docker stack deploy를 사용하려고 합니다.

그러나 제대로 작동하는지 확인하기 위해 docker service create를 사용하는 것이 좋습니다.

sudo 도커 서비스 생성 -p 3000:80 httpd

완료하는 데 시간이 다소 걸릴 수 있지만, 명령이 완료되면 노드의 IP 주소와 3000번 포트로 접속할 수 있습니다. IP 주소를 모르는 경우 `hostname -I` 명령어를 실행하세요. 제 경우에는 192.168.19.73:3000 으로 접속했습니다 . "It works!"라는 메시지가 표시될 것입니다.

폐회사

HP t730은 초보자든 베테랑이든 홈랩을 구축하기에 아주 좋은 소형 머신입니다. 다양한 용도에 적합하고 가격 대비 성능이 매우 뛰어납니다. 제 경우에는 배송비 15달러만 지불 하면 됐는데, StorageReview 덕분입니다! 이 글을 통해 새로운 기술을 배우거나 자신만의 홈랩을 구축하는 데 영감을 얻으셨기를 바랍니다.

-에단 에드워즈

eBay의 HP t730 씬 클라이언트

StorageReview에 참여

뉴스레터 | 유튜브 | 팟캐스트 ( 아이튠즈 / 스포티파이) | 인스타그램 | 트위터 | 틱톡 | RSS 피드

게스트 작성자