-太鼓と懸甲を掛ける
これは、GETUUBアクションを使用してPulUMI上でAWSプロバイダーを持つEKS環境をPythonで作成するためのモデルです. アクセスhttps://github.com/smashse/pulumi-iac-eks " このテンプレートを使う テンプレート「Pulumi IAC EKS」(例「Pulumi IAC EKS」)から新しいリポジトリを作成して、「個人的な」として選んだ
AWSをインストールする(オプション)
Pulumiテンプレートをダウンロードしてください
インストールスクリプトを実行することでLinux上でPulumiをインストールします.
Python VirtualEnvをインストールします
プロジェクトを作成します
Python要件をインストールする
最初の配備を実行し、次のコマンドを実行します.
以下のように設定します.
設定領域
「Pulumiworth EksShand Py」プロジェクトのレビュー
ワークフローを有効にする
環境変数
アクションと相互作用するように設定できる環境変数がいくつかあります. デフォルトではPulumiはPulumi SaaS . これが起こるために、Githubアクションは「PulumiRadiance」トークンを通過する必要があります.
アマゾンウェブサービス
AWSでは、既存のIAMユーザーを作成したり使用したりする必要があります.ご覧下さいthe Pulumi documentation page これを行うための関連AWSドキュメントへのポインタ.
AWSユーザが手に入るとすぐに、あなたは環境変数「AWSRAGE ACTIVERHE KeyLIGHT ID」と「AWSHERSECTTRANDACHIGHLER KEY」をGITHUB秘密を使用して設定します.
注:設定に行くと秘密に“PulumiRadioChoNesトークン”、“AwsLes AccessLes Keychen ID”と“AwsSense SecrettAccessキー”新しいリポジトリの秘密を追加します.
変更をコミットする
Kebernetesクラスター
「Pulumiworth EksShand Py」プロジェクトを破壊する
スタックから"Pulumither EksShand PY "プロジェクトを削除する
ソース
https://www.pulumi.com/docs/get-started/
https://www.pulumi.com/docs/reference/pkg/
https://www.pulumi.com/docs/intro/concepts/state/
https://www.pulumi.com/docs/guides/continuous-delivery/github-actions/
https://github.com/pulumi/actions
AWSをインストールする(オプション)
cd /tmp
ssh-keygen -f pulumi_eks_py_access
curl "<https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip>" -o "awscliv2.zip"
unzip awscliv2.zip && sudo ./aws/install
aws configure
aws ec2 import-key-pair --public-key-material "$(cat pulumi_eks_py_access.pub | base64)" --key-name pulumi_eks_py_access --region us-west-2 --profile yourprofile
Pulumiテンプレートをダウンロードしてください
mkdir -p $HOME/Pulumi
cd $HOME/Pulumi
git clone https://github.com/yourgithubuser/pulumi-iac-eks.git
cd pulumi-iac-eks
インストールスクリプトを実行することでLinux上でPulumiをインストールします.
curl -fsSL https://get.pulumi.com | sh && bash
Python VirtualEnvをインストールします
sudo apt -y install python3-virtualenv
プロジェクトを作成します
cd $HOME/Pulumi/pulumi-iac-eks/pulumi_eks_py
注意: Kubernetesクラスタに与えられた名前を変更する場合は、以下のコマンドをテンプレートフォルダで実行します.sed -i "s/"template-"/"desiredname-"/g" *.py
Python要件をインストールする
python3 -m venv venv
source venv/bin/activate
python -m pip install --upgrade pip setuptools wheel
python -m pip install -r requirements.txt
最初の配備を実行し、次のコマンドを実行します.
pulumi login
pulumi stack init pulumi_eks_py
以下のように設定します.
pulumi config set aws:profile yourprofile
設定領域
pulumi config set aws:region us-west-2
「Pulumiworth EksShand Py」プロジェクトのレビュー
pulumi preview
ワークフローを有効にする
cd $HOME/Pulumi/pulumi-iac-eks/.github/workflows
mv pull_request.yml.template pull_request.yml
mv push.yml.template push.yml
環境変数
アクションと相互作用するように設定できる環境変数がいくつかあります.
アマゾンウェブサービス
AWSでは、既存のIAMユーザーを作成したり使用したりする必要があります.ご覧下さいthe Pulumi documentation page これを行うための関連AWSドキュメントへのポインタ.
AWSユーザが手に入るとすぐに、あなたは環境変数「AWSRAGE ACTIVERHE KeyLIGHT ID」と「AWSHERSECTTRANDACHIGHLER KEY」をGITHUB秘密を使用して設定します.
注:設定に行くと秘密に“PulumiRadioChoNesトークン”、“AwsLes AccessLes Keychen ID”と“AwsSense SecrettAccessキー”新しいリポジトリの秘密を追加します.
変更をコミットする
cd $HOME/Pulumi/pulumi-iac-eks/
git add *
git add .github/workflows/*
git add .pulumi/*
git add pulumi_eks_py/*
git commit -m "pulumi-iac-eks"
git push
Kebernetesクラスター
sudo snap install kubectl --classic
aws eks list-clusters --region us-west-2 --profile yourprofile
aws eks --region us-west-2 --profile yourprofile update-kubeconfig --name $(pulumi stack output cluster-name)
kubectl get po --all-namespaces
「Pulumiworth EksShand Py」プロジェクトを破壊する
cd $HOME/Pulumi/pulumi-iac-eks/pulumi_eks_py
pulumi destroy
スタックから"Pulumither EksShand PY "プロジェクトを削除する
cd $HOME/Pulumi/pulumi-iac-eks/pulumi_eks_py
pulumi stack rm pulumi_eks_py
ソース
https://www.pulumi.com/docs/get-started/
https://www.pulumi.com/docs/reference/pkg/
https://www.pulumi.com/docs/intro/concepts/state/
https://www.pulumi.com/docs/guides/continuous-delivery/github-actions/
https://github.com/pulumi/actions
Reference
この問題について(-太鼓と懸甲を掛ける), 我々は、より多くの情報をここで見つけました https://dev.to/smashse/pulumi-with-github-actions-to-provision-a-cluster-on-aws-with-eks-31maテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol