NFSストレージの構成
Oracle Cloud Native EnvironmentでNFSストレージを構成するには、次のステップを実行します。
-
OLCNEクラスタを作成します。「OLCNEクラスタ」を参照してください。
クラスタには、3つ以上のワーカー・ノードが必要です。
-
NFSサーバーを作成します。Oracle LinuxでNFSサーバーを使用する例は、「Oracle Linux: Oracle Linux でのNFSサーバーの作成」を参照してください。
a.サーバー・インスタンスとクライアント・インスタンスにNFSユーティリティ・パッケージをインストールします。
$ sudo dnf install -y nfs-utils
b.共有ファイル用のディレクトリを作成します。サーバーがルート所有権を保持しないようにしてください。
c.共有ディレクトリを
/etc/exports
に定義して、正しい権限を設定します。必ずルート・スカッシュを無効にしてください。$ <path to directory> <ip-address/subnet-mask>(rw,sync,no_root_squash,no_subtree_check)
d.NFSトラフィックを許可するようにファイアウォールを設定します。
$ sudo firewall-cmd --permanent --zone=public --add-service=nfs $ sudo firewall-cmd --reload $ sudo firewall-cmd --list-all
e.NFSサービスを有効にして起動します。
$ sudo systemctl enable --now nfs-server
-
NFSプロビジョナをクラスタにデプロイします。
a.選択したNFSクライアント・プロビジョナをインストールします。例は、「Kubernetes NFSサブディレクトリの外部プロビジョナ」を参照してください。
b.必要なHelmリポジトリを追加します。
$ helm repo add nfs-subdir-external-provisioner https://kubernetes-sigs.github.io/nfs-subdir-external-provisioner/
c.プロビジョナをインストールします。ストレージ・クラスをデフォルトとして設定し、サービス・アカウントを作成します。
$ helm install nfs-test \ --set nfs.server=<server ip address> \ --set nfs.path=<path> \ --set storageClass.name=<name> \ --set storageClass.defaultClass=true,rbac.create=true \ --set storageClass.provisionerName=nfsclientprov/nfs \ --set serviceAccount.create=true \ --set serviceAccount.name=nfs-svc-acc-nfs nfs-subdir-external-provisioner/nfs-subdir-external-provisioner
d.1つのストレージ・クラスのみをデフォルトとして指定する必要があります。必要な場合には、他のストレージ・クラスを編集し、次の注釈を削除します:
$ storageclass.kubernetes.io/is-default-class: "true"