CircleCI Server v3.x - 初めてのクラスタの作成 (任意)

ここでは、Kubernetes クラスタをセットアップしたことがない方のために、簡単なヒントをご紹介します。

ステップ 1 - 作成

Amazon EKS

CircleCI では、AWS で初めてクラスタをセットアップする場合、eksctl の使用をお勧めしています。 eksctl を使用すると、セキュリティ グループの選択だけでなく VPC の作成も自動で行われます。

クラスタを作成する前に、次の手順を完了してください。

  1. 最新の AWS CLI をhttps://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2.html[インストール]し、お使いの AWS アカウント用にhttps://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-configure.html[構成する]

  2. eksctl をインストールする

  3. kubectl をインストールする

フラグを使用してクラスタを作成します。

シンプルなクラスタを作成するには、次のコマンドを実行します。

eksctl create cluster

コマンドラインでは、他のフラグも使用できます。 詳細については、eksctl のhttps://eksctl.io/introduction</a>を参照してください。

設定ファイルを使用してクラスタを作成する

次のようなクラスタ設定ファイルを作成することもできます。

apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig

metadata:
  name: <your-cluster-name>
  region: <aws-region>

managedNodeGroups:
  - name: <nodegroup-name-1>
    instanceType: <instance-type> # m5.large など。 利用可能なインスタンス タイプは https://aws.amazon.com/ec2/instance-types/ を参照
    minSize: 4 # 詳細は https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-minsize を参照
    maxSize: 6 # 詳細は https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-maxsize を参照

他のクラスタ設定ファイルのサンプルについては、https://eksctl.io[eksctl.io] をご覧ください。

クラスタ設定ファイルが完成したら、保存して次のコマンドを実行します。

eksctl create cluster -f <your-cluster-config.yaml>

eksctl ツールを使ってクラスタを作成する場合、次のような AWS STS アクセス エラーが発生することがあります: AWS STS access – cannot get role ARN for current session: InvalidClientTokenId.

この原因は、https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-configure-files.html[AWS 認証情報]が無効であるか、利用中の IAM ユーザーに EKS クラスタの作成権限が付与されていないことです。 eksctl を使用するには適切な IAM 権限が必要です。 必要な IAM 権限については、https://docs.aws.amazon.com/ja_jp/eks/latest/userguide/getting-started-eksctl.html#eksctl-prereqs[AWS のドキュメント]を参照してください。

ステップ 2 - 検証

クラスタの作成が完了したら、kubectl の各種コマンドを実行して、クラスタ リソースを確認できるか試してください。

たとえば、クラスタ’のhttps://kubernetes.io/docs/tasks/access-application-cluster/access-cluster/#discovering-builtin-services[ビルトイン サービス]を表示するには、次のコマンドを実行します。

kubectl cluster-info

また、クラスタにワーカー ノードがアタッチされているかどうかを確認するには、次のコマンドを実行します。

kubectl get nodes -o wide

作成したクラスタの情報を確認する方法の詳細については、次のドキュメントを参照してください。



Help make this document better

This guide, as well as the rest of our docs, are open-source and available on GitHub. We welcome your contributions.