ノート:

異なる容量タイプでのOCI Kubernetesエンジンの管理とプリエンプティブル・ノードでの一般的な問題の解決

イントロダクション

デジタルトランスフォーメーションの各サイクルを経て、企業は革新と反復を続け、インフラストラクチャ、アプリケーション、管理に可能な限界を大規模に押し上げます。インフラストラクチャおよびアプリケーション管理をサポートするために使用される、より新しく広く採用されているテクノロジの1つは、Kubernetesです。Kubernetesについてさらに詳しく調べる前に、まずコンテナの概念について調べてみる必要があります。

コンテナは、アプリケーションの信頼できる実行をサポートするために必要なランタイムおよびプログラム・ライブラリとともに、アプリケーション固有のコードのコレクションを含むソフトウェアのパッケージです。コンテナは、基礎となるサーバーのオペレーティング・システム(OS)内のユーザー・スペース内で実行するように構成されます。このアーキテクチャにより、コア・サービスと依存関係の分離により、アプリケーションの軽量なデプロイメントが可能になります。アプリケーション・コンテナ化の利点には、ワークロードの分離、リソースの効率性、スケーラビリティおよびフォルト・トレランスの改善があります。

コンテナのパワーと効率を大規模に活用するには、コンテナベースのデプロイメントをインタフェースまたは管理するための何らかのツールが必要です。Kubernetes (K8sとも呼ばれる)は、コンテナを実行、スケーリングおよびユーザーに配信できるサーバーのクラスタを作成することでコンテナ・デプロイメントを自動化するオープンソースのコンテナ・オーケストレーション・ツールです。Kubernetesクラスタ・アーキテクチャには、マスター・ノード(コントロール・プレーン)と複数のワーカー・ノードが含まれます。各ワーカーは、アプリケーションを提供するポッド(コンテナのコレクション)をホストします。

アーキテクチャ

Kubernetesの歴史

目的

前提条件

Oracleはコンテナ・テクノロジをどのように位置付けていますか。

OKEは、完全に管理されたスケーラブルで可用性の高いKubernetesサービスであり、コンテナ化されたアプリケーションをクラウドにデプロイするのに役立ちます。OKEは、OCIのお客様がコンピュート・リソース使用率を最適化して独自のワークロード要件を満たし、ワークロード要件の変化に迅速に対応できるようにします。OKEはシームレスなカスタマー・エクスペリエンスを提供し、比類のない価格性能、リソースの効率性、移植性、信頼性を提供します。OKEは、コンテナ・レジストリ、CI/CDフレームワーク、ネットワーキング・ソリューション、ストレージ・オプション、一流のセキュリティ機能など、様々なコンテナ・ライフサイクル管理製品とのいくつかの主要な統合を提供します。

OKEでは、クラスタタイプを基本クラスタまたは拡張クラスタのいずれかとして指定できます。基本クラスタは、OKEによって提供されるすべてのコア機能をサポートします。機能を強化するために、拡張クラスタは、仮想ノード、自己管理ノード、クラスタ・アドオン管理、より詳細なOracle Cloud Infrastructure Identity and Access Management (OCI IAM)構成など、使用可能なすべての機能をサポートします。

異なる容量タイプでの OKE

プリエンプティブル・ノード・プールおよびOnDemandノード・プールを使用したOKEデプロイメント

プリエンプティブルを使用したOKEデプロイメント

プリエンプティブルに関する既知の問題

OKEでプリエンプティブルを使用する場合、いくつかの既知の問題があります。

タスク1: コマンドライン・インタフェース(CLI)を使用したE5プリエンプティブルOKEワーカー・ノードプールの作成ステップ

  1. OCIコンソールにログインし、「サービス」メニューをクリックします。

  2. 「開発者サービス」に移動します。

  3. 「コンテナとアーティファクト」で、「Kubernetes Engine (OKE)」をクリックします。

  4. 「OCI Cloud Shell」をクリックして、CLIを表示します。

  5. node-pool OCID、compartment OCID、subnet-idfault domain、構成およびサイズを編集してから、テナンシで次のCLIコマンドを実行します。

    oci ce node-pool create 
    --cluster-id ocid1.cluster.oc1.iad.aaaaaaaaxlokvt2r25b6dmdxxxxxxxxxxxxxxxxxkhdilj7kpehc5vke2ve5gq
    --compartment-id ocid1.compartment.oc1..aaaaaaaaqufgrkgzr4zb3dxxxxxxxxxxxxxxxxxxp7jx7yckglghxppfrui6a 
    --name E5_Preemtible 
    --node-shape VM.Standard.E5.Flex 
    --placement-configs '[{"availabilityDomain": "FZyT:US-ASHBURN-AD-2", "preemptibleNodeConfig": {"preemptionAction":{"isPreserveBootVolume":true, "type": "TERMINATE"}}, "subnet-id": "ocid1.subnet.oc1.iad.aaaaaaaapmekowq4rqhu72xxxxxxxxxxxxxxxxxxxxtlkp4dmixebzhgrwdlmtteclq", "faultDomains":["FAULT-DOMAIN-1"]}]'
    --size 1 
    --node-image-id ocid1.image.oc1.iad.aaaaaaaajvtta4i5sq4xxxxxxxxxxxxxcskfxjwz4vwxz6ersmmax6q 
    --node-shape-config '{"memoryInGBs": 6.0, "ocpus": 1.0}'
    --pod-subnet-ids '["ocid1.subnet.oc1.iad.aaaaaaaapmekowq4rqhxxxxxxxxxxxxxxxkp4dmixebzhgrwdlmtteclq"]'
    

    これにより、ノード・プールを作成するための作業リクエストのOCIDが出力され、次の図に示すように、既存のクラスタにE5プリエンプティブル・ワーカー・ノードが作成されます。

    E5プリエンプティブル・ワーカー・ノード

承認

その他の学習リソース

docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。

製品ドキュメントは、Oracle Help Centerを参照してください。