## init script DaemonSet 생성
> kubectl apply -f https://raw.githubusercontent.com/NaverCloudPlatform/nks-examples/main/examples/initscript/gov/kr.yml
## 생성 확인
> kubectl get daemonset init-script -n kube-system
NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE
init-script 5 5 5 5 5 <none> 23h
## 생성 후 동작 확인
> kubectl logs -l name=init-script -n kube-system
kubernetes service
!!! startup-script succeeded!
kubernetes service
!!! startup-script succeeded!
kubernetes service
!!! startup-script succeeded!
kubernetes service
!!! startup-script succeeded!
kubernetes service
!!! startup-script succeeded!
ncloud ~~
로 시작하는 CLI 명령어를 통해 NCP의 리소스들을 조작할 수 있도록 도와주는 명령이다.NAS 볼륨 ACL에 서버를 추가
해주는 아래 명령어이다../ncloud vnas addNasVolumeAccessControl \
--regionCode KR \
--nasVolumeInstanceNo [NAS 볼륨 번호] \
--serverInstanceNoList [Server 인스턴트 번호]
curl http://169.254.169.254/latest/meta-data/serverInstanceNo
< nas-autoadd.sh >
#!/bin/bash
# ncloud cli configure 기본 경로
CONFIG_FILE="$HOME/.ncloud/configure"
# NCP server instance 번호
INSTANCE_NO="$(curl http://169.254.169.254/latest/meta-data/serverInstanceNo)"
# NAS volume instance 번호 (등록하려는 NAS에 맞게 수정)
NAS_NO="2400790"
# ncloud cli file clone & 권한 설정
cd $HOME
git clone https://github.com/Hyunsoo-Ryan-Lee/ncloud-cli.git
cd $HOME/ncloud-cli/cli_linux
chmod +x $HOME/ncloud-cli/cli_linux/ncloud
chmod +x $HOME/ncloud-cli/cli_linux/jre8/bin/java
# ncloud cli config 파일 유무 확인 후 생성
if [ ! -f "$CONFIG_FILE" ]; then
mkdir -p "$(dirname "$CONFIG_FILE")"
touch "$CONFIG_FILE"
fi
# ncloud configuration 내용 등록
cat <<EOT >> "$CONFIG_FILE"
[DEFAULT]
ncloud_access_key_id =
ncloud_secret_access_key =
ncloud_api_url = https://ncloud.apigw.gov-ntruss.com
EOT
# ncloud 명령어 위치로 이동
cd $HOME/ncloud-cli/cli_linux
# Server instance를 NAS ACL에 등록하는 명령어 실행
./ncloud vnas addNasVolumeAccessControl \
--regionCode KR \
--nasVolumeInstanceNo $NAS_NO \
--serverInstanceNoList $INSTANCE_NO
# 실행 결과 출력
echo "INSTANCE($INSTANCE_NO) HAS BEEN ADDED TO NAS($NAS_NO)"
# 불필요한 파일들 삭제
rm -rf $HOME/ncloud-cli CONFIG_FILE
> kubectl set env daemonset/init-script -n kube-system STARTUP_SCRIPT=$(base64 [nas-autoadd.sh 파일 경로] -w 0)
## 예시
> kubectl set env daemonset/init-script -n kube-system STARTUP_SCRIPT=$(base64 [/workspace/nks/nas-autoadd.sh] -w 0)
daemonset.apps/init-script env updated
안녕하세요, 네이버 클라우드 플랫폼입니다.
네이버클라우드의 기술 콘텐츠 리워드 프로그램 '이달의 Nclouder(2월)' 도전자로 초대합니다 :)
네이버 클라우드 플랫폼 서비스와 관련된 모든 주제로 3/7(목) 23시까지 신청 가능합니다. (*2월 작성 콘텐츠 한정 신청 가능)
Ncloud 크레딧을 포함한 다양한 리워드가 준비되어 있으니 많은 관심 부탁드립니다!
자세한 내용은 아래 링크에서 확인부탁드립니다.
https://blog.naver.com/n_cloudplatform/223344999298
신청 링크
https://navercloud.typeform.com/to/lF8NUaCF