home..

홈 서버 클러스터링(2) 확장

kubernetes msa mont-kim aws eks gpu homeserver

홈서버 클러스터링하기(2) - GPU 노드 추가

1편에서는 단일노드 쿠버네티스를 kubespray로 프로비저닝하는 과정을 담았었다.

이번에는 ML 공부를 위해 GPU를 사용하는 노드를 추가하고자 kubespray를 이용해 노드를 확장하는 과정을 담았다.

노드 추가하기

기본적인 “추가할 노드에서의 사전작업” 과정은 (1)편에서 담았던 내용과 동일하

노드에서 사전준비

sudo su
apt update
apt install sshpass
apt install python3-pip -y

root login 허용하기

sudo vi /etc/ssh/sshd_config

PermitRootLogin yes

코드 추가

service ssh restart

ssh 데몬 재실행

설명은 전편에 상세하게 적어두어 설명은 생략한다.

host.yaml 파일 수정

all:
  hosts:
    node1:
      ansible_host: 192.168.219.105
      ip: 192.168.219.105
      access_ip: 192.168.219.105
    node2:                    # 새로운 노드 추가
      ansible_host: 192.168.219.107
      ip: 192.168.219.107
      access_ip: 192.168.219.107
  children:
    kube_control_plane:
      hosts:
        node1:
    kube_node:
      hosts:
        node1:
        node2:               # 새로운 노드 추가
    etcd:
      hosts:
        node1:
    k8s_cluster:
      children:
        kube_control_plane:
        kube_node:
    calico_rr:
      hosts: {}

새로운 노드는 192.168.219.107이라는 IP를 사용한다.

호스트 작업

전편에서 맥북에서 kubespray (ansible)을 실행했었고, 프로비저닝을 진행할 환경에서 ssh key copy를 진행한다.

ssh-pass로 키 추가

ssh-copy-id mont@192.168.219.107
ssh-copy-id root@192.168.219.107

업데이트하기

프로비저닝 했던

ansible-playbook -i inventory/mycluster/hosts.yaml --become --become-user=root -K cluster.yml

비밀번호 입력하면 노드 추가하는 과정을 진행한다.

최초로 프로비저닝했을때와 동일하게, 15~30분까지 소요되니 느긋하게 확인하면 된다.

Untitled

© 2024 mont kim   •  Powered by Soopr   •  Theme  Moonwalk