싱글 AZ 서비스용 NKS이다.
cgame 서비스 만들어보자.
NAT도 구성한다.
Private Subnet에 NKS구성한다.
DB 서브넷도 별도로 구성한다.
https://brunch.co.kr/@topasvga/2420
1
# 명령서버 네트워크 생성
ncp-cgame3-vpc
192.168.0.0/21
ncp-cgame3-pub1
192.168.0.0/24
# 명령서버 생성
Rocky Linux 8.10
Standard (필수)
vCPU 2개 , 메모리8GB 선택 (필수)
ncp-cgame3-com
새로운 공인 IP 할당
2
명령툴들 설치하기
1) 네이버 클라우드에 권한이 있어야 한다.- access-key,secret-key
2) ncloud configure
3) ncloud CLI 다운로드
4) # NKS 사용을 위한 인증 - ncp-iam 설치
5) # kubectl 명령어 설치
6) # alials 단축 명령어
7) 테라폼 유틸 설치
1
네이버 클라우드에 권한이 있어야 한다.
access-key , secret-key를 알아야 한다.
오른쪽 위 본인 계정 > 이용관리 > 계정 관리 > 인증키 관리
https://www.ncloud.com/mypage/status/usage
Access Key ID , Secret Key 복사해 두기
ncp_iam_xxxxxxxxxxx
ncp_iam_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
2
public 서브넷에 로키 리눅스로 개발자 명령서버 1대를 만들자.
명령을 내릴 서버에 로그온해 명령툴을 설치하자.
콘솔 > Sever > 서버 생성
[Standard] - 확인
vCPU 2개, 메모리 8GB ,[SSD] 디스크 50GB[g2]- 확인
새로운 공인 IP 할당
새로운 인증키
ncp-com1-12-24-1-key
default acg 사용
3
# 서버 로그인
root
passwd
g1!!
# ncloud CLI 다운로드
# 신규버전
wget https://www.ncloud.com/api/support/download/files/cli/CLI_1.1.23_20241121.zip
unzip CLI_1.1.23_20241121.zip
cd CLI_1.1.23_20241121/
cd cli_linux/
cp ncloud /usr/bin/
ncloud help
최신버전
https://cli.ncloud-docs.com/docs/guide-clichange
4
# ncloud 권한 설정 - Access-key , Secret-key 입력
ncloud configure
# 리전에 서버 리스트 확인하기
ncloud vserver getRegionList
https://cli.ncloud-docs.com/docs/cli-vserver-server-common-getregionlist
# MacOS를 사용할 때 자바 바이너리 파일이 실행이 안되는 문제도 발생해서 jdk17버전으로 수정하는 방법
https://hgk5722.tistory.com/560
# 다음 오류시 아래 경로에서 실행해야 한다.
[root@agame-web01-dev ~]# ncloud vserver getRegionList
/usr/bin/ncloud: line 2: ./jre8/bin/java: No such file or directory
cd /root/CLI_1.1.20_20240620/cli_linux
ncloud vserver getRegionList
# CLI 명령어들
https://brunch.co.kr/@topasvga/2054
5
# 사용을 위한 인증 = ncp-iam 설치
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
cd
매뉴얼
https://guide.ncloud-docs.com/docs/k8s-iam-auth-ncp-iam-authenticator
# NKS 클러스터 생성후 실행 , 클러스터의 ClusterUUID 필요함
# -clusterUuid는 콘솔에서 확인하자. 쿠버네티스 클러스터 UUID이다.
cd
ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid b01xxxxxxxxxx --output kubeconfig.yaml
6
# 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
7
# alials 단축 명령어
vi ~/.bash_profile
# 맨 아래줄에 아래 내용 추가
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"'
source ~/.bash_profile
kubectl get nodes
8
# 하시코프 테라폼 설치하기 (선택) , 테라폼 사용시만 설치
sudo yum install -y yum-utils shadow-utils
sudo yum-config-manager --add-repo https://rpm.releases.hashicorp.com/AmazonLinux/hashicorp.repo
sudo yum -y install terraform
terraform -version
# 터미널 2 - 모니터링 하기
kw
kwn
1
테라폼 코드 다운로드
https://brunch.co.kr/@topasvga/4060
2
vi variables.tf
login 키 이름 수정 필요!!
terraform init
terraform plan
terraform apply -auto-approve
# 삭제
terraform destroy -auto-approve
# 여러번 실행시 로그인키 중복 오류 함.
vi variables.tf
login 키 이름 수정 필요!!
terraform apply -auto-approve
# 클러스터 생성에 17분 , 노드 생성에 11분 , 총 28분 걸린다.
ncloud_nks_cluster.cluster: Still creating... [16m51s elapsed]
ncloud_nks_cluster.cluster: Still creating... [17m1s elapsed]
ncloud_nks_cluster.cluster: Creation complete after 17m10s [id=60ef54df-1487-42f1-b71a-b17d7f89b729]
ncloud_nks_node_pool.node_pool: Still creating... [10m40s elapsed]
ncloud_nks_node_pool.node_pool: Still creating... [10m50s elapsed]
ncloud_nks_node_pool.node_pool: Creation complete after 10m51s [id=9d946de5-4337-465b-a885-547e92cc626a:pool1]
https://vclock.kr/timer/#countdown=00:10:00&enabled=0&seconds=0&sound=xylophone&loop=1
3
결과
VPC 생성
클러스터 생성
4
인증
cd
ncp-iam-authenticator create-kubeconfig --region KR --clusterUuid ce88e483-b057-4b92-b0cb-2cdb14101c28 --output kubeconfig.yaml
1
kubectl 사용
k get nodes
[root@ncp-cgame-com ~]# k get nodes
NAME STATUS ROLES AGE VERSION
pool1-w-398c Ready <none> 9m33s v1.28.10
pool1-w-60db Ready <none> 10m v1.28.10
2
콘솔에서 네트워크 구축 확인 - NAT까지 구축되었다. 비용이 좀 발생한다.
NKS 구축 확인
다음
https://brunch.co.kr/@topasvga/4207