VPC環境で利用できます。
Ncloud Kubernetes Serviceのワーカーノードに Server Roleタイプのロールを付与し、AccessKey、SecretKeyを設定しなくても NAVERクラウドプラットフォームの APIを使用できます。
Object Storageバケットリスト照会のユースケース
Object Storageにアクセス可能なノードプールを作成し、PODで Object Storageのバケットリストが照会されることを確認するには、以下のタスクを実行します。
1. Sub Accountロール作成
ロール作成ガイドを参照して Serverタイプのロールを作成し、NCP OBJECT STORAGE_VIEWERポリシーを追加します。
2. ノードプール作成
ノードプールを作成する時、1番で作成したロールを Node IAM Roleとして選択します。
3. ロール付与の確認
ノードプールの作成が完了した後、 Sub Account > Roles - ロール名 > ロール適用対象 を選択して作成されたノードプールのノードが追加されたことを確認します。
4. ロール適用の確認
- 以下のコードをコピーして alpine.yamlファイルで保存します。
apiVersion: v1
kind: Pod
metadata:
name: alpine
spec:
containers:
- name: alpine
image: alpine:3.12
command:
- sleep
- "3600"
imagePullPolicy: IfNotPresent
restartPolicy: Always
- 以下のコマンドを実行して PODをリリースします。
$ kubectl apply -f alpine.yaml
pod/node-iam-test created
- 下記のコマンドを実行して PODに shellでアクセスします。
$ kubectl exec -it alpine -- sh
/ #
- 下記のコマンドを実行して aws-cliをインストールします。
/ # apk add aws-cli
fetch http://dl-cdn.alpinelinux.org/alpine/v3.12/main/x86_64/APKINDEX.tar.gz
(1/46) Installing libbz2 (1.0.8-r1)
(2/46) Installing expat (2.2.10-r4)
...
(46/46) Installing aws-cli (1.18.55-r0)
Executing busybox-1.31.1-r22.trigger
OK: 134 MiB in 60 packages
- 下記のコマンドを実行して Object Storageの Bucketリストを照会します。
/ # aws s3 ls --endpoint-url=https://kr.object.ncloudstorage.com
2020-09-01 07:58:31 bucket1
2020-12-08 14:52:07 bucket2
2020-07-20 06:37:20 bucket3
...
Container Registryイメージ Pullのユースケース
Container Registryにアクセス可能なノードプールを作成し、PODで別途の認証手続きなしで Container Registryからイメージを Pullできます。
当該機能を使用するには、Container Registry を使用するを参照してレジストリおよびイメージを準備します。
1. Sub Accountロール作成
ロール作成ガイドを参照して Serverタイプのロールを作成し、NCP CONTAINER REGISTRY_VIEWERポリシーを追加します。
2. ノードプール作成
ノードプールを作成する時、1番で作成したロールを Node IAM Roleとして選択します。
3. ロール付与の確認
ノードプールの作成が完了した後、 Sub Account > Roles - ロール名 > ロール適用対象 を選択して作成されたノードプールのノードが追加されたことを確認します。
4. ロール適用の確認
- 以下のコードをコピーして alpine.yamlファイルで保存します。
apiVersion: v1
kind: Pod
metadata:
name: alpine
spec:
containers:
- name: alpine
image: <registry-name>.ncr.ntruss.com/alpine:3.12
command:
- sleep
- "3600"
imagePullPolicy: IfNotPresent
restartPolicy: Always
- 以下のコマンドを実行して PODをリリースします。
$ kubectl apply -f alpine.yaml
pod/node-iam-test created
- 以下のコマンドを実行してイメージが正常に Pullされ、PODが Runningされたことを確認します。
$ kubectl get pod
NAME READY STATUS RESTARTS AGE
alpine 1/1 Running 0 16s