検証
前の手順で構成されたマルチテナント アーキテクチャを検証するには、次の手順を実行します。
割り当てられたプロジェクトで PVC またはポッドを作成するためのアクセスを検証する
-
project-1 の開発者、ocp-project-1-user としてログインします。
-
新しいプロジェクトを作成するにはアクセスを確認してください。
oc create ns sub-project-1
-
project-1 に割り当てられているストレージクラスを使用して、project-1 に PVC を作成します。
cat << EOF | oc create -f - kind: PersistentVolumeClaim apiVersion: v1 metadata: name: test-pvc-project-1 namespace: project-1 annotations: trident.netapp.io/reclaimPolicy: Retain spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: project-1-sc EOF
-
PVC に関連付けられている PV を確認します。
oc get pv
-
NetApp ONTAP上の project-1 専用の SVM に PV とそのボリュームが作成されていることを確認します。
volume show -vserver project-1-svm
-
project-1 にポッドを作成し、前の手順で作成した PVC をマウントします。
cat << EOF | oc create -f - kind: Pod apiVersion: v1 metadata: name: test-pvc-pod namespace: project-1 spec: volumes: - name: test-pvc-project-1 persistentVolumeClaim: claimName: test-pvc-project-1 containers: - name: test-container image: nginx ports: - containerPort: 80 name: "http-server" volumeMounts: - mountPath: "/usr/share/nginx/html" name: test-pvc-project-1 EOF
-
ポッドが実行中かどうか、ボリュームがマウントされているかどうかを確認します。
oc describe pods test-pvc-pod -n project-1
別のプロジェクトで PVC またはポッドを作成したり、別のプロジェクト専用のリソースを使用したりするためのアクセスを検証します
-
project-1 の開発者、ocp-project-1-user としてログインします。
-
project-2 に割り当てられているストレージクラスを使用して、project-1 に PVC を作成します。
cat << EOF | oc create -f - kind: PersistentVolumeClaim apiVersion: v1 metadata: name: test-pvc-project-1-sc-2 namespace: project-1 annotations: trident.netapp.io/reclaimPolicy: Retain spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: project-2-sc EOF
-
プロジェクト 2 に PVC を作成します。
cat << EOF | oc create -f - kind: PersistentVolumeClaim apiVersion: v1 metadata: name: test-pvc-project-2-sc-1 namespace: project-2 annotations: trident.netapp.io/reclaimPolicy: Retain spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi storageClassName: project-1-sc EOF
-
PVCが `test-pvc-project-1-sc-2`そして `test-pvc-project-2-sc-1`作成されませんでした。
oc get pvc -n project-1 oc get pvc -n project-2
-
project-2 にポッドを作成します。
cat << EOF | oc create -f - kind: Pod apiVersion: v1 metadata: name: test-pvc-pod namespace: project-1 spec: containers: - name: test-container image: nginx ports: - containerPort: 80 name: "http-server" EOF
プロジェクト、リソースクォータ、ストレージクラスの表示と編集へのアクセスを検証する
-
project-1 の開発者、ocp-project-1-user としてログインします。
-
新しいプロジェクトを作成するためのアクセスを確認します。
oc create ns sub-project-1
-
プロジェクトを表示するためのアクセスを検証します。
oc get ns
-
ユーザーが project-1 の ResourceQuotas を表示または編集できるかどうかを確認します。
oc get resourcequotas -n project-1 oc edit resourcequotas project-1-sc-rq -n project-1
-
ユーザーがストレージクラスを表示するアクセス権を持っていることを確認します。
oc get sc
-
ストレージクラスを記述するためのアクセスを確認します。
-
ストレージクラスを編集するためのユーザーのアクセスを検証します。
oc edit sc project-1-sc