「Kubernetesエンジン」の問題

この項では、「Oracle Private Cloud Appliance Kubernetesエンジン(OKE)」に関連する既知の問題および回避策について説明します。

CSIプラグインを使用したブロック・ボリュームPVのクローニング機能は使用できません

既存のブロック・ボリュームのクローニング機能は、ワーカー・ノード・アプリケーションでCSIボリューム・プラグインを使用して作成されたPVCでは使用できません。

ブロック・ボリューム永続ストレージの場合は、「永続ブロック・ボリューム・ストレージの作成」の説明に従ってCSIプラグインを使用します。

回避策: CSIプラグインを使用して既存のボリュームをクローニングするために使用できる回避策はありません。

バグ: 36252730

バージョン: 3.0.2

サポートされているOCI Terraformプロバイダのバージョン

「Oracle Private Cloud Appliance Kubernetesエンジン(OKE)」ガイドでは、OKEリソースを構成するためのTerraformスクリプトの例を示します。 これらのスクリプトを使用するには、TerraformプロバイダとOracle Cloud Infrastructure (OCI) Terraformプロバイダの両方をインストールする必要があります。

providerブロックでTerraformスクリプトを「Kubernetesエンジン(OKE)」とともに使用する場合は、v4.50.0以上v6.36.0以下でインストールするOCI Terraformプロバイダのバージョンを指定します:

provider "oci" {
    version          = ">= 4.50.0, <= 6.36.0"
...
}

バグ: 37934227

バージョン: 3.0.2

「失敗した」状態でのアドオン作業リクエストの有効化

アドオンを有効にすると、アドオンのインストールを保留中として表示するかわりに、作業リクエストでアドオンのインストールが失敗したことが最初に表示される場合があります。 アドオンの状態は要注意です。 リコンシリエーション後にアドオンの状態が「アクティブ」に変更され、作業リクエストの状態が「成功」に変更されます。

回避策: リコンシリエーション・プロセスが数回実行されるのを待ちます。 作業リクエストがまだ「失敗」状態であり、2回のリコンシリエーションの実行後もアドオンが「注意が必要」状態の場合は、「Oracle Private Cloud Appliance Kubernetesエンジン(OKE)」ガイドの「OKEクラスタ・アドオンの管理」の章にある「アドオン・リコンシリエーション」の説明に従って調査してください。

バグ: 37967658

バージョン: 3.0.2

クラスタの作成は拡張パラメータをサポートしていません

Private Cloud Applianceリリース3.0.2-b1185392では、一部のクラスタ・コントロール・プレーン・ノードのプロパティは、OraclePCA定義タグを使用して指定されます。

以前のリリースのPrivate Cloud Applianceリリース3.0.2-b1081557では、これらの定義済タグは認識されません。 これらの値を指定するには、フリーフォーム・タグを使用する必要があります。

回避策: Private Cloud Applianceリリース3.0.2-b1081557で、フリーフォーム・タグを使用して、コントロール・プレーン・ノードに関する次の情報を指定します:

  • 公開SSHキー。

    タグ・キーにsshkeyを指定します。 公開SSHキーを「値」フィールドに貼り付けます。

    重要:

    クラスタの作成後にSSHキーを追加することはできません。

  • ノードの数。

    デフォルトでは、コントロール・プレーンのノード数は3です。 1、3または5ノードを指定できます。 コントロール・プレーン・ノードの数を指定するには、タグ・キーにcp_node_countを指定し、「値」フィールドに1、3または5を入力します。

  • ノード・シェイプ。

    Private Cloud Appliance X10システムの場合、コントロール・プレーン・ノードのシェイプはVM.PCAStandard.E5.Flexであり、変更できません。 他のすべてのPrivate Cloud Applianceシステムでは、デフォルトのシェイプはVM.PCAStandard1.1で、別のシェイプを指定できます。

    別のシェイプを使用するには、タグ・キーにcp_node_shapeを指定し、「値」フィールドにシェイプの名前を入力します。 各シェイプの説明は、「Oracle Private Cloud Appliance概要ガイド」「コンピュート・シェイプ」を参照してください。

  • ノード・シェイプ構成。

    フレキシブル・シェイプではないシェイプを指定する場合は、シェイプ構成を指定しないでください。 OCPUの数とメモリー容量は、「Oracle Private Cloud Appliance概要ガイド」「コンピュート・シェイプ」の「標準シェイプ」でこのシェイプに表示される値に設定されます。

    フレキシブル・シェイプを指定する場合は、デフォルトのシェイプ構成を変更できます。

    シェイプ構成情報を指定するには、タグ・キーにcp_node_shape_configを指定します。 必要なOCPUの数(ocpus)を指定する必要があります。 オプションで、必要なメモリーの合計量を指定できます(memoryInGBs)。 メモリーのギガバイトのデフォルト値は、OCPUに指定した数の16倍です。

    次に、ノード・シェイプ構成値の例を示します。 タグの「値」フィールドに、周囲の一重引用符を含むすべてを入力します。 最初の例では、デフォルトのメモリー量が構成されます。

    '{"ocpus":1}'
    '{"ocpus":2, "memoryInGBs":24}'

バグ: 36979754

バージョン: 3.0.2

アップグレードまたはパッチ後の不合格状態のノード

ノード・プールを持つOKEクラスタを持つアプライアンスのアップグレードまたはパッチにより、基礎となるコンピュート・インスタンスがRUNNING状態であっても、一部のノードがFAILING状態に移行する可能性があります。

この問題が発生した場合は、次の回避策を実行してください。

回避策: 次のメソッドを使用して、障害が発生したノードを新しいアクティブ・ノードに置き換え、障害が発生したノードから新しいノードにワークロードを自動的に転送します。

状態がFAILINGまたはFAILEDのノードを削除します。 ノード・プールのサイズを増やさないでください(ノード・プールをスケール・アップしないでください)。

削除されたノードはコードンおよびドレインされ、そのワークロードは、ノード・プールを同じサイズに保つために作成された新しいノードに自動的に転送されます。

「[PCA 3.x] 302M3.8から302M3.9へのアップグレード/パッチ適用後の失敗状態のノード・プール・ノード(ドキュメントID 3035508.1)」も参照してください。

バグ: 36814183

バージョン: 3.0.2

OKE 管理ネットワークを備えたシステムでスイッチのファームウェア・アップグレードが必要

Private Cloud Applianceが別個の管理ネットワークで構成されている場合、アプライアンスとデータ・センターのネットワーキングは、「Oracle Private Cloud Appliance Kubernetesエンジン(OKE)」で必要なトラフィック・フローを有効にするために再構成する必要があります。 さらに、ネットワークの再構成は、スイッチ・ソフトウェアの新しいバージョンに含まれる機能に依存します。

回避策: アプライアンス内のスイッチのソフトウェアをアップグレードまたはパッチ適用します。 ネットワークを再構成します。 詳細および手順は、次のドキュメント・セクションにあります:

バグ: 36073167

バージョン: 3.0.2

ノード・プールを作成するにはGPUシェイプを選択しないでください

GPUがインストールされているノードを含むシステムでは、OKEノード・プールを作成すると、GPUシェイプを選択できます。 操作は成功しますが、コンピュート・イメージにドライバがないため、OKEクラスタはGPUを使用できません。 GPUシェイプは、少ないコストで高価なリソースへのアクセスを提供します。これは、通常のコンピュート・インスタンス上の専用ワークロードを対象としています。

回避策: OKEノード・プールを作成する場合は、常に標準シェイプまたはフレキシブル・シェイプを選択する必要があります。

バグ: 37576565

バージョン: 3.0.2

以前使用したイメージはリストされなくなりました

「コンピュートWeb UI」およびcompute image listコマンドは、イメージの各メジャー・ディストリビューション(Oracle Linux 9など)の最新公開バージョンを3つのみリストします。 アップグレードまたはパッチにより、OKEノード・イメージの更新バージョン(たとえば、新しいKubernetesバージョンを持つ同じイメージ)が配信され、そのメジャー配布イメージがすでに3回配信されていた場合、そのイメージの4番目の最新公開バージョンがリストされなくなります。

以前に配信されたイメージは、リストされていなくても引き続きアクセスできます。

回避策: 以前に使用したものの、リストされていないイメージを使用するには、OCI CLIを使用してノード・プールを作成し、イメージのOCIDを指定します。 目的のイメージのOCIDを取得するには、このイメージを以前に使用したノード・プールに対してce node-pool getコマンドを使用します。

バグ: 36862970

バージョン: 3.0.2

Kubernetesノード・プールおよびノードで使用できないタグ・フィルタ

Oracle Cloud Infrastructureとは異なり、Private Cloud Applianceは現在、Kubernetesノード・プールおよびノードをリストする表にタグ・フィルタを使用する機能を提供していません。 タグ・フィルタリングは、Kubernetesクラスタで使用できます。

回避策: 回避策はありません。 UIでは、問題のタグ・フィルタは提供されません。

バグ: 36091835

バージョン: 3.0.2

OKE-特定のタグは削除できません

OKEの特定のプロパティおよび関数は、リソース・タグを介して有効化されます。 これらの予約済タグは、IAMサービスではなく、リソースに適用するユーザーによって作成されます。 したがって、IAMサービスでは、ユーザーがそのようなタグを削除できないようにすることはできません。 削除すると、「OKEサービス」が期待どおりに機能しない可能性があります。

回避策: 特定のOKEサービス機能に使用されるリソース・タグは削除しないでください。 これらのタグを削除する場合は、再度作成する必要があります。

バグ: 37157933

バージョン: 3.0.2

失敗状態のOKEクラスタを削除できません

クラスタをデプロイするために、「Oracle Private Cloud Appliance Kubernetesエンジン(OKE)」では、コンピュート・インスタンスやロード・バランサなどの他のインフラストラクチャ・サービスを介して管理できる様々なタイプのクラウド・リソースが使用されます。 ただし、OKEクラスタ・リソースは、不整合を回避するために、「OKEサービス」を介してのみ操作する必要があります。 OKEクラスタのネットワーク・ロード・バランサが「OKEサービス」の制御外で削除されると、そのクラスタは障害が発生した状態で終了し、削除できなくなります。

回避策: これは、クラスタAPIプロバイダの既知の問題です。 クラスタが障害状態にあり、そのネットワーク・ロード・バランサが存在しなくなった場合は、手動でクリーンアップする必要があります。 Oracleに連絡してください。

バグ: 36193835

バージョン: 3.0.2

UIおよびCLIは削除猶予期間を異なったものとして表します

ワーカー・ノード・プールからノードが削除されるまでの最小およびデフォルトの猶予期間は20秒です。 OCI CLIは、この値を正確に表示し、ISO8601形式を使用して猶予期間を秒または分単位で変更できます。 たとえば、--node-eviction-node-pool-settingsコマンド・パラメータに新しい値を指定することで、デフォルトの20秒(="PT20S")を3分(="PT3M")に変更できます。

対照的に、「コンピュートWeb UI」はISO8601時間書式を整数値に解析し、削除猶予期間を分単位で表示します。 その結果、20秒のデフォルトは、Kubernetesクラスタの詳細ページの「ノード・プール情報」タブに0分として表示されます。

この動作は、時間(分)を10進値として表示できるOracle Cloud Infrastructureコンソール(UI)とは異なります(例: : 0.35minutes). 最小猶予期間がないため、ゼロが有効なエントリです。

回避策: ノード・プールの正確な削除猶予期間を設定または確認するには、OCI CLIを使用して、ISO8601形式で時間を指定します。 「コンピュートWeb UI」を使用する場合は、説明されている制限を考慮してください。

バグ: 36696595

バージョン: 3.0.2

ノード・プール内のノードがフォルト・ドメイン全体に自動分散されない

特定のフォルト・ドメインを選択せずにOKEノード・プールを作成すると、コンピュート・サービスはフォルト・ドメイン間でのノードの分散を処理します。 ノード・プール・ノード(および一般的にコンピュート・インスタンス)は、使用可能なリソース容量が最も高いコンピュート・ノードに割り当てられます。 VMアクティビティとリソース消費の違いにより、3つのフォルト・ドメイン間の負荷が大きく異なる場合があります。 したがって、自動分散ロジックは、同じノード・プールのノードがフォルト・ドメイン全体に均等に分散されることを保証できません。 実際には、すべてのノードが同じフォルト・ドメインに終わる可能性がありますが、これはお薦めしません。

回避策: フォルト・ドメイン間でのノード・プール・ノードの最適な分散のために、自動分散に依存しないでください。 かわりに、ノード・プールの作成時に使用するフォルト・ドメインを選択します。

バグ: 36901742

バージョン: 3.0.2

OKEサービスのアプライアンスが最新ではないAPIリファレンス

すべてのPrivate Cloud Applianceには、ブラウザから便利にアクセスできるオンラインAPIリファレンス・ページが用意されています。 「コンピュート・エンクレーブ」の場合、これらのページはhttps://consoleにあります。mypca.mydomain /api-reference。 このAPI参照は、「Oracle Private Cloud Appliance Kubernetesエンジン(OKE)」を含むすべてのサービスに対して最新ではありません。

回避策: Oracle Private Cloud Appliance Compute EnclaveのREST APIは、CreateClusterおよびCreateNodePool操作の説明に最新のパラメータおよび値を示します。

ノート:

コンソールapi-referenceOracleヘルプ・センター「Oracle Private Cloud Appliance Compute EnclaveのREST API」の両方に、Private Cloud Applianceには適用されないためサポートされないパラメータおよびパラメータ値が表示されます。 これらを使用すると、サポートされていないエラー・メッセージが表示される場合があります。そうしないと、パラメータまたは値はAPIによって受け入れられますが、何も行われません。

バグ: 35710716, 36852746

バージョン: 3.0.2

OKE クラスタの作成に失敗

OKE システムが大文字を含むドメイン名で構成されている場合、クラスタの作成が失敗することがあります。 ドメイン名では大文字はサポートされていません。

回避策: Oracle Supportに連絡してください。

バグ: 36611385

バージョン: 3.0.2

「VCNネイティブ・ポッド・ネットワーキング」を使用したOKEクラスタ作成のレビュー・ページに間違ったポッドCIDRが表示される

「VCNネイティブ・ポッド・ネットワーキング」を使用してOKEクラスタを作成することで、ポッドがVCN範囲のIPアドレスを使用できるようになり、ネットワーク・トラフィックの制御がより柔軟になります。 ただし、新しいクラスタ構成を送信する前にUIに表示されるレビュー・ページには、デフォルトの「フランネル・オーバーレイ」サブネットがポッドCIDRブロックとして表示されます。 この情報は正しくありませんが、実際のクラスタ・ネットワーク構成には影響しません。

回避策: これはデータ表示エラーです。 これは無害であり、無視できます。

バグ: 37815929

バージョン: 3.0.2

タイプLoadBalancerのサービスが保留状態でスタックしています

Private Cloud Applianceの外部からコンテナ化されたアプリケーションへの接続を許可するには、外部ロード・バランサが必要です。 LoadBalancerタイプのKubernetesサービスとして設定します。 ただし、ロード・バランサ・サービスを作成するマニフェスト・ファイルがセキュリティ・リスト管理を明示的に無効にしない場合、ロード・バランサは「保留」状態でスタックします。

回避策: LoadBalancerタイプのサービスを作成して、Private Cloud Appliance環境の外部でコンテナ化されたアプリケーションを公開する場合は、セキュリティ・リスト管理モードをなしに設定する注釈がマニフェスト・ファイルに含まれていることを確認してください。 たとえば:

apiVersion: v1
kind: Service
metadata:
  name: my-nginx-svc
  labels:
    app: nginx
  annotations:
    oci.oraclecloud.com/load-balancer-type: "lb"
    service.beta.kubernetes.io/oci-load-balancer-shape: "400Mbps"
    service.beta.kubernetes.io/oci-load-balancer-security-list-management-mode: None
spec:
  type: LoadBalancer
  ports:
   - port: 80
  selector:
    app: nginx

バグ: 37199903

バージョン: 3.0.2

ラージ・プールのノード・サイクリング操作タイムアウト

30ノードを超えるOKEノード・プールのノード・サイクリングは、タイムアウトで終了することがあります。 これは、断続的なクラスタAPIプロバイダ接続の問題が原因である可能性があります。 ノードの循環中にタイムアウトが発生した場合、一部のノードはプロセスを完了していない可能性があり、最新の仕様と一致しない状態のままになります。

回避策: 仕様に一致しないノードを手動で削除し、クラスタを必要な数のノードに再度スケール・アップします。

  1. 循環していないノードを識別するには、作成タイムスタンプでノードをリストします。 循環ノードは通常数分経過しますが、循環していないノードはリストの中で最も古いノードになります。

    kubectl get nodes --sort-by=.metadata.creationTimestamp --kubeconfig <your_cluster.kubeconfig>
  2. 既存のアプリケーション・デプロイメントの場合は、循環していないノードをコードンおよびドレインします。 続行する前に、ノードがドレインされていることを確認してください。

  3. いずれかの管理ノードにログインし、対応するマシンを削除して、循環していないノードを手動で削除します。

    kubectl delete Machine <node_name> -n oke

    その結果、更新された設定を含む新しいノードが作成されます。

バグ: 37145441

バージョン: 3.0.2