ノート:
- このチュートリアルは、Oracle提供の無料ラボ環境で使用できます。
- Oracle Cloud Infrastructureの資格証明、テナンシおよびコンパートメントの値の例を使用します。演習が完了したら、これらの値をクラウド環境に特有の値に置き換えます。
Oracle Container Engine for Kubernetesのデプロイ
イントロダクション
Kubernetesクラスタは、一連のノードです。ノードは、アプリケーションを実行しているマシンです。各ノードは物理マシンでも仮想マシンでもかまいません。ノードの容量(CPUおよびメモリー量)は、ノードの作成時に定義されます。クラスタは次で構成されます:
- 1つ以上のマスター・ノード(高可用性のために、通常は多数のマスター・ノードがあります)
- 1つ以上のワーカー・ノード(ミニオンとも呼ばれます)
Kubernetesクラスタは、ネームスペースに編成して、クラスタのリソースを複数のユーザーに分割できます。最初、クラスタには次のネームスペースがあります:
- デフォルト(他のネームスペースがないリソースの場合)
- kube-system (Kubernetesシステムによって作成されたリソース)
- kube-node-lease (ノード可用性の決定に役立てる)
- kube-public (通常、クラスタ全体でアクセスできる必要があるリソースに使用される)
目的
- Kubernetesクラスタの作成
- サンプル・アプリケーションのデプロイ
前提条件
Oracle Cloud Infrastructure上のOracke Kubernetes Enging (OKE)のデモについては、次のビデオをご覧ください。
Oracle Kubernetes Engine OKEのビデオ-レベル100 -パート2 - OKEクラスタ・デモ
Kubernetesクラスタの作成
-
クラウド・テナント名、ユーザー名およびパスワードを使用してOracle Cloud Infrastructureコンソールにサインインします。
-
OCIサービス・メニューから、「開発者サービス」の下の「Kubernetesクラスタ」をクリックします。
すべてのポリシーが事前構成されているため、OKEのポリシーを作成する必要はありません。
-
「リスト範囲」で、コンパートメントを選択します。
-
「クラスタの作成」をクリックします。「クイック作成」を選択し、「ワークフローの起動」をクリックします。
-
ダイアログ・ボックスに入力します。
- 名前:名前(この例ではoke-cluster)を指定します
- コンパートメント:コンパートメントの選択
- 表示タイプの選択:パブリック
- シェイプ: VMシェイプを選択します
- ノード数: 1
-
「次へ」をクリックし、「クラスタの作成」をクリックします。
これで、1つのノードと仮想クラウド・ネットワークを持つOKEクラスタができ、必要なすべてのリソースと構成が必要です。
クラウド・シェルでOCI CLIをチェック
OCIコマンドラインはOracle Cloud Shellに事前インストールされています。
-
OCI CLIのインストール・バージョンを確認します。
Oracle Cloud Shellがまだ実行されていない場合は起動します。コマンドの入力:
oci -v
OCI CLIのバージョンを確認します(2.5.x以上)。
環境の初期化
-
「OCIコンソール」ウィンドウに切り替えて、クラスタに移動します。クラスタ詳細ウィンドウで、スクロール・ダウンし、「リソース」の下の「クイック・スタート」をクリックします。
「クイック・スタート」セクションのステップに従います。
-
クイック・スタートの方向では、ローカル・ターミナル内のコマンドをコピーして実行するよう指示されます。
kubectlを使用したクラスタへのNginxアプリケーションのデプロイ
-
3つのレプリカでnginxデプロイメントを作成します。コマンドの入力:
kubectl run nginx --image=nginx --port=80 --replicas=3
-
Kubernetesデプロイメントを取得します。コマンドの入力:
kubectl get deployments
-
ポッドの取得コマンドの入力:
kubectl get pods -o wide
-
アプリケーションを公開するサービスを作成します。クラスタはOCI Cloud Controller Manager (CCM)と統合されています。その結果、
--type=LoadBalancer
タイプのサービスを作成すると、OCIロード・バランサを使用してポッドがインターネットに公開されます。ターミナルで次のコマンドを入力します。kubectl expose deployment nginx --port=80 --type=LoadBalancer
-
OCIコンソール・ウィンドウに切り替えます。OCIサービス・メニューから、「ネットワーキング」の下の「ロード・バランサ」をクリックします。新しいOCI LBをプロビジョニングする必要があります(これは上のコマンドによるものです)。
-
ロード・バランサがアクティブになったら、ロード・バランサ名をクリックし、ロード・バランサ情報ページでIPアドレスをメモします。
-
新しいブラウザ・タブを開き、URL http://
<Load-Balancer-Public-IP>
(この例ではhttp://129.213.76.26)を入力します。Nginxのようこそ画面が表示されます。
リソースの削除
ノート- Oracleの無料テナンシを使用している場合は、「リソースの削除」セクションを無視できます。そうしないと、独自のテナンシのリソースの削除はオプションです。
OKEクラスタの削除
-
OCIコンソール・ウィンドウに戻るには、「開発者サービス」の下の「コンテナ・クラスタ(OKE)」をクリックします。
-
クラスタに移動します。「クラスタの削除」をクリックし、確認ウィンドウの「削除」をクリックします。
VCNの削除
-
OCIサービス・メニューから、「ネットワーキング」の下の「仮想クラウド・ネットワーク」をクリックします。すべてのVCNのリストが表示されます。
-
VCNを探し、「アクション」アイコンをクリックし、「終了」をクリックします。確認ウィンドウで「すべて削除」をクリックします。VCNの削除後、「閉じる」をクリックします。
APIキーの削除
-
ユーザー設定に移動するには、ウィンドウの右上隅にある「プロファイル」アイコンをクリックします。次に、「ユーザー設定」を選択します。
-
スクロール・ダウンして、「リソース」セクションの下にある「APIキー」を選択します。
-
「アクション」アイコンをクリックし、「削除」をクリックしてAPIキーを削除します。
謝辞
- 原本著者 - Flavio Pereira (OCI製品マネージャ)、Larry Beausoleil (OCI Enablement)
- コントリビュータ - LiveLabs QAチーム(Arabella Yao、Product Manager Intern、Isa Kessinger、QA Intern)、Yaisah Granillillo (クラウド・ソリューション・エンジニア)、Orlando Gentil (OCI Product Manager)
その他の学習リソース
docs.oracle.com/learnのその他のラボを確認するか、Oracle Learning YouTubeチャネルでより無料の学習コンテンツにアクセスします。また、education.oracle.com/learning-explorerにアクセスしてOracleラーニング・エクスプローラになることもできます。
製品ドキュメントは、Oracleヘルプ・センターを参照してください。
Deploy Oracle Container Engine for Kubernetes
F49966-01
November 2021
Copyright © 2021, Oracle and/or its affiliates.