OCI上のKubernetes(OKE) を使ってみる

 2021.07.19  株式会社テリロジー 技術統括部

こんにちは!テリロジーのY.Tです。
今回はOCIのContainer Engine for Kubernetes(OKE)をご紹介していきます。

OKEとは、OCI上で利用可能なKubernetesの環境のことです。
Kubernetesは、コンテナの管理が可能なOSSのプラットフォームであり、コンテナの自動構築、スケーリング、 各コンテナへの負荷分散することができます。OKEでは、利用するうえで必要なネットワークやコンテナの基盤となるワーカー・ノード(インスタンス)構築の設定を、容易に実施することができます。
※コンテナについて、「OCIのコンテナレジストリサービス」でご紹介していますのでよろしければご参照ください

ここでは、実際にOKEを作成し、作成方法必要な設定について確認していきます。

Kubernetesの構成

OKEを構築後、kubectlというKubernetes を操作するコマンドを利用し、Podのステータス確認や作成などができます。新規にPodやロードバランサーなどのサービスを作成する場合は「マニフェスト」内にポート番号などを指定し、kubectlコマンドで対象のマニフェストを実行することで、Kubernetes 上に環境を作成することが出来ます。

  • コントロールプレーン:kubectlコマンドでマニフェストを送信する対象の領域
  • データプレーン:すべてのノード(インスタンス)
  • ノードプール:一つ以上のノード(インスタンス)が所属しているグループ
  • ポッド:一つ以上のコンテナが所属しているグループ

構成例)

oke-environment

また、クラスタ内のノードやポッドでの障害時、スケーリングの対象別に、以下の自動スケーリングの機能を利用することができます。

  • Kubernetes Cluster Autoscaler:ノードの自動スケーリング
  • Kubernetes Horizontal Pod Autoscaler:ポッドの自動スケーリング
  • Kubernetes Vertical Pod Autoscaler:コンテナの自動スケーリング

OKEの構成と作成方法

OKEを作成する場合、指定が必要になるOCI上のコンポーネントは以下です。

  • コンパートメント
  • 仮想クラウドネットワーク(VCN)
  • ロードバランサーのサブネット
  • APIエンドポイントのサブネット(Kubernetes環境接続用)
  • インターネットゲートウェイ ※パブリックに構築する場合
  • NATゲートウェイ、サービスゲートウェイ ※プライベートに構築する場合
  • 新規に作成するワーカー・ノード(インスタンス)のシェイプ、数、ドメイン、サブネット
  • ルート表
  • セキュリティリスト

上記のコンポーネントを全て指定して作成する「カスタム作成」、また、ネットワーク環境などが自動で作成される「クイック作成」のいずれかを選択し、OKEを作成することが出来ます。

OKE「クイック作成」の実施

ここでは、「クイック作成」から、OKEを作成していきます。
OCI Webコンソールの「開発者サービス」>「Kubernetesクラスタ(OKE)」へ推移し、「クイック作成」をクリックします。

oke-quick-create

「クイック作成」の場合、既存の環境と分離してOKEの環境を作成することができ、
以下が新規に自動で作成されます。

  • 仮想クラウドネットワーク(VCN)
  • インターネットゲートウェイ
  • NATゲートウェイ、サービスゲートウェイ

また、以下は自動で設定されます。

  • ロードバランサー(パブリックサブネット)
    ※ロードバランサーをプライベートサブネットに配置する場合は、「カスタム作成」で作成する必要があります
  • 新規に作成するワーカー・ノード(インスタンス)のシェイプ、数、サブネット
    ※新規に作成するワーカー・ノード(インスタンス)のサブネットはパブリック/プライベートのいずれかが   指定可能です。新規VCN内に作成するため、既存のサブネットを指定することはできません

「クイック作成」を選択後、「ワークフローの起動」をクリックすると、以下の設定画面が表示されます。

oke-quick-create-image02

コンパートメント、エンドポイントとワーカー・ノードのサブネット(パブリック/プライベート)やシェイプなどを 指定します。
また、「拡張オプション」をクリックすると、ワーカー・ノードのSSHキーがダウンロードできます。

設定後、クラスタを作成すると、仮想クラウドネットワーク(VCN)、サブネット、セキュリティリスト、 インターネットゲートウェイなどが自動で作成されていることが確認できます。

oke-quick-create-image03
新規に作成されたVCNとサブネットの例

まとめ

今回はKubernetesの概要とOKEのご紹介をしました。
次回は「カスタム作成」で、プライベート環境にOKEを作成し、kubectlコマンドを使って、
実際にOKEにアクセスしたいと思います。

最後までお読みいただき、ありがとうございました。🙇


RECENT POST「OCIサービス紹介」の最新記事


OCIサービス紹介

テリロジーが提供しているOCIの4つのサービス

OCIサービス紹介

Oracle FunctionsのスクリプトをAPIGW経由で確認 Part1

OCIサービス紹介

Oracle FunctionsのスクリプトをAPIGW経由で確認 Part2

OCIサービス紹介

OCIのDNSサービス

OCI上のKubernetes(OKE) を使ってみる