1 wget https://kr.object.ncloudstorage.com/ncp-script2024/lab_source.zip unzip lab_source.zip /root/lab_source/lab2 [root@docker1 lab2]# ls Dockerfile 2 Docker 설치 sudo dnf config-manager --set-disabled kubernetes dnf install -y docker-ce --allowerasing sudo dnf -y install dnf-plugins-core sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker -version systemctl enable --now docker systemctl status docker systemctl start docker systemctl enable docker Y Y 3 docker build -t test-image . docker images REPOSITORY TAG IMAGE ID CREATED SIZE test-image latest 3eaf3b495f1d 11 seconds ago 192MB docker run -p 8080:80 --name test-nginx test-image # docker run -p 8080:80 --name 컨테이너_이름 이미지_이름 브라우저에서 접속 : 8080 4 # 컨테이너 레지스트리에 이미지 넣기 # Container Registry 의 Private Endpoint 확인 d9m59u2e.kr.private-ncr.ntruss.com 9 # 도커 로그인 # access-key , secret-key 준비 # Username 는 access-key , Password: 는 secret-key docker login xxxxxxxxx.kr.ncr.ntruss.com Username: ncp_iam_BPAMKR2pm0TU1 Password: Login Succeeded 10 # 태그 붙이기 docker image tag test-image xxxxxxxxxxxx.kr.ncr.ntruss.com/test-image:1.0 # 컨테이너 레지스트리에 이미지 넣기 docker push xxxxxxx.kr.ncr.ntruss.com/test-image:1.0 # 콘솔 에서 컨테이너 레지스트리에서 올라간거 확인 --------------------------------- 명령서버 구축 1 명령툴들 설치하기 1. 네이버 클라우드에 권한이 있어야 한다.- access-key,secret-key 2. ncloud CLI 다운로드 3. ncloud configure 4. NKS 사용을 위한 인증 - ncp-iam 설치 5. kubectl 명령어 설치 6. alials 단축 명령어 7. 게임 올리기 8. pod증가하기 1 네이버 클라우드에 권한이 있어야 한다. access-key , secret-key를 알아야 한다. 오른쪽 위 본인 이름 > 이용관리 > 계정 관리 > 인증키 관리 신규 API 인증키 생성 Access- Key ID와 Secret Key 보기 해서 노트패드에 복사해 놓기 ncp_iam_xxxxxxxxxxx ncp_iam_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 2 ncloud CLI 다운로드 # putty로 서버 로그인 명령 서버의 공인IP 확인 # 신규버전 다운로드 wget https://www.ncloud.com/api/support/download/files/cli/CLI_1.1.26_20250918.zip unzip CLI_1.1.26_20250918.zip cd CLI_1.1.26_20250918/ cd cli_linux/ cp ncloud /usr/bin/ ncloud help # 최신버전 참고 = https://cli.ncloud-docs.com/docs/guide-userguide 3 # ncloud 권한 설정 - Access-key , Secret-key 입력 ncloud configure ncp_iam_xxxxxxxxxxx ncp_iam_xxxxxxxxxxx <엔터> # 권한 있는지 확인 = 리전에 서버 리스트 확인하기 ncloud vserver getRegionList 4 # 사용을 위한 인증 = ncp-iam 설치 cd curl -o ncp-iam-authenticator -L https://github.com/NaverCloudPlatform/ncp-iam-authenticator/releases/latest/download/ncp-iam-authenticator_linux_amd64 chmod +x ./ncp-iam-authenticator mkdir -p $HOME/bin && cp ./ncp-iam-authenticator $HOME/bin/ncp-iam-authenticator && export PATH=$PATH:$HOME/bin echo 'export PATH=$PATH:$HOME/bin' >> ~/.bash_profile ncp-iam-authenticator help # 참고 - 매뉴얼 - ncp-iam 설치 - mac 설치법 https://guide.ncloud-docs.com/docs/k8s-iam-auth-ncp-iam-authenticator # clusterUuid는 콘솔에서 확인하자. 쿠버네티스 클러스터 UUID이다. 아래 명령어에 해당 UUID 를 입력한다. ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid b01xxxxxxxxxx --output kubeconfig.yaml ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid 8b45702f-9b81-4857-b178-7940877c7bd1 --output kubeconfig.yaml ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid 8b45702f-9b81-4857-b178-7940877c7bd1 --output kubeconfig.yaml 예) ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid 66e08b1e-57b6-4406-98df-c3cf47e4f6c3 --output kubeconfig.yaml 5 # kubectl 명령어 설치 curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl 6 # alials 단축 명령어 vi ~/.bash_profile 맨 아래줄에 아래 내용 추가 o 눌러 추가한다. alias k='kubectl --kubeconfig="/root/kubeconfig.yaml"' alias kw='watch -d kubectl get deploy,svc,pods --kubeconfig="/root/kubeconfig.yaml"' alias kwn='watch -d kubectl get no,deploy,svc,pods --kubeconfig="/root/kubeconfig.yaml"' 저장하고 나옴 esc 키 :wq! source ~/.bash_profile k get nodes NAME STATUS ROLES AGE VERSION agame-np-w-f514 Ready 68m v1.33.4 agame-np-w-f864 Ready 69m v1.33.4 # 터미널 2 - 모니터링 하기 kwn 7 모니터링하기, 웹서비스 올리기 # kube-ops-view 설치해 보자. # 파드와 노드증가를 시각화 하여 확인하는 Kubeops view 설치 1) # 방법 1 - git 다운로드 설치 - 80 접속 git clone https://codeberg.org/hjacobs/kube-ops-view.git cd kube-ops-view/ k apply -k deploy # 외부에서 kube-ops-view를 접속하기 위해서 Service Type을 LoadBalancer 로 변경한다. k edit svc kube-ops-view apiVersion: v1 kind: Service metadata: annotations: name: kube-ops-view spec: .... sessionAffinity: None type: LoadBalancer status: 변경전 type: ClusterIP 변경후 type: LoadBalancer 로 수정. = 로드 밸런서 생성됨. (3분 걸림) 콘솔에서 로드 밸런서 생성확인 웹 브라우저에서 실행. 2) # 웹서버 생성 k create deployment websrv --image=nginx --port=80 --replicas=4 k expose deployment websrv --port=80 --type=LoadBalancer k scale deployment websrv --replicas=20 cd 8 # 쿠버네티스에 게임 올리기 - deployment-2048 게임 올리기 cat <