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/[ドキュメント]を参照してください。

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

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

apiVersion: eksctl.io/v1alpha5
kind: ClusterConfig

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

managedNodeGroups:
  - name: <nodegroup-name-1>
    instanceType: <instance-type> # i.e., m5.large. see https://aws.amazon.com/ec2/instance-types/ for available instance types
    minSize: 4 # see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-minsize for more information
    maxSize: 6 # see https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html#cfn-as-group-maxsize for more information

他のクラスタ設定ファイルのサンプルについては、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.