機械翻訳について

2 Multusモジュールのインストール

重要:

このドキュメントで説明されているソフトウェアは、Extended SupportまたはSustaining Supportにあります。 詳細は、「Oracleオープン・ソース・サポート・ポリシー」を参照してください。

このドキュメントに記載されているソフトウェアをできるだけ早くアップグレードすることをお勧めします。

この章では、MultusモジュールをOracle Cloud Native Environmentにインストールする方法について説明します。

前提条件

このセクションでは、Multusモジュールの設定に必要な前提条件について説明します。

プロキシ構成の更新

環境でプロキシ・サーバーを使用している場合は、CRI-Oプロキシ構成ファイルを編集し、KubernetesサービスIP (デフォルトは10.96.0.1)をNO_PROXY変数に追加します。 たとえば、各Kubernetesノードで、/etc/systemd/system/crio.service.d/proxy.confファイルを編集します:

[Service]
Environment="HTTP_PROXY=http://proxy.example.com:3128"
Environment="HTTPS_PROXY=https://proxy.example.com:3128"
Environment="NO_PROXY=mydomain.example.com,10.96.0.1"

構成ファイルを再ロードし、crioサービスを再起動します:

sudo systemctl daemon-reload
sudo systemctl restart crio.service

ノート:

olcnectl provisionコマンドを使用してクイック・インストールを実行する場合は、このステップを実行する必要はありません。 これは、そのインストール・メソッドを使用してプロキシ情報を指定するときに自動的に設定されます。

Multus構成ファイルの作成

Multusモジュールをデプロイするときに、オプションでMultus構成ファイルを指定してNetworkAttachmentDefinitionsを設定できます。

構成ファイルなしでMultusモジュールをデプロイする場合、MultusモジュールはNetworkAttachmentDefinitionsを設定せずに作成されます。 その後、モジュールのインストール後にkubectlコマンドを使用してNetworkAttachmentDefinitionsを作成できます。

構成ファイルには、1つ以上のKubernetes NetworkAttachmentDefinitionカスタム・リソース定義(CRD)が含まれている必要があります。 これらの定義は、ポッドのセカンダリ・インタフェースを構成するネットワーク・アタッチメントを設定します。 YAML形式のオペレータ・ノードにMultus構成ファイルを指定します。 たとえば:

---
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: bridge-conf
spec:
  config: '{
      ...
      }
    }'
---
apiVersion: "k8s.cni.cncf.io/v1"
kind: NetworkAttachmentDefinition
metadata:
  name: macvlan-conf
spec:
  config: '{
      ...
      }
    }'

Platform API Serverは、Multusモジュールの作成時に構成ファイルに含まれる情報を使用してNetworkAttachmentDefinitionsを作成します。

Multus構成ファイルの作成の詳細は、アップストリームの「Multusドキュメント」を参照してください。

Multusモジュールのデプロイ

このセクションでは、Multusモジュールを取り付ける方法について説明します。 Multusをインストールする前に、Kubernetesモジュールをインストールしておく必要があります。 Kubernetesモジュールは、デフォルトのKubernetesポッド・ネットワークCNIとしてFlannelを使用します。

Multusモジュールの作成に使用する構文については、「Platform Command-Line Interface」olcnectl module createコマンドのmultusオプションを参照してください。

Multusモジュールをデプロイするには:

  1. Kubernetesモジュールを作成してインストールします。 この例のKubernetesモジュールの名前は、myclusterです。

  2. Multusモジュールを作成し、--multus-kubernetes-moduleオプションを使用してmyclusterという名前のKubernetesモジュールに関連付けます。 この例では、Multusモジュールの名前はmymultusです。

    olcnectl module create \
    --environment-name myenvironment \
    --module multus \
    --name mymultus \
    --multus-kubernetes-module mycluster 

    --moduleオプションは、モジュール・タイプを作成(multus)に設定します。 --nameオプション(この場合はmymultus)を使用して、Multusモジュールの名前を定義します。

    --multus-kubernetes-moduleオプションは、Kubernetesモジュールの名前を設定します。

    オプションで、--multus-configオプションを指定して、Multus構成ファイルのロケーションを設定できます。 このファイルは、指定されたパスのオペレータ・ノードで使用可能である必要があります。 この構成ファイルの作成については、「事前設定」を参照してください。

    モジュールの追加時に必要なオプションの一部が含まれていないと、そのオプションを指定するように求められます。

    重要:

    Multusは、デフォルトでKubernetes kube-systemネームスペースにデプロイされます。 構成ファイルを使用してモジュールをデプロイするときにNetworkAttachmentDefinitionsを作成する場合は、--multus-namespaceオプションを使用して、これを作成するネームスペースを指定します。 構成ファイルを使用すると、MultusポッドとNetworkAttachmentDefinitionsの両方が、このネームスペースに作成されます。 これらのNetworkAttachmentDefinitionsを使用するKubernetesアプリケーションは、このオプションで指定するネームスペースにも作成する必要があります。 たとえば:

    --multus-namespace default
  3. olcnectl module installコマンドを使用して、Multusモジュールをインストールします。 たとえば:

    olcnectl module install \
    --environment-name myenvironment \
    --name mymultus

    Multusモジュールは、Kubernetesクラスタにデプロイされます。

Multusモジュール・デプロイメントの確認

オペレータ・ノードでolcnectl module instancesコマンドを使用して、Multusモジュールがデプロイされていることを確認できます。 たとえば:

olcnectl module instances \
--environment-name myenvironment

出力は次のようになります:

INSTANCE                  MODULE        STATE  
mymultus                  multus        installed 
mycluster                 kubernetes    installed
...

MODULE列のmultusのエントリは、installed状態であることに注意してください。

また、olcnectl module reportコマンドを使用して、モジュールに関する情報を確認します。 たとえば、次のコマンドを使用して、myenvironmentmymultusという名前のMultusモジュールを確認します:

olcnectl module report \
--environment-name myenvironment \
--name mymultus \
--children

olcnectl module reportコマンドの構文の詳細は、「Platform Command-Line Interface」を参照してください。