minikubeの上にローカルにアプリケーションをデプロイし、 cloud.google.comのkubernetesの上で実行することにより、 terraformの使用を開始する方法
ミニクベ
最初に、 minikubeを構成し、 terraformを使用してアプリケーションをデプロイします。このため、プロジェクトを準備しました。 それだけです:
- VirtualBoxをインストールする
- Vagrantをインストールする
- ultral / terraform-exampleリポジトリのコピーを作成します
- 作る
vagrant up
出力では、ユーザー名/パスワードvagrant / vagrantおよび/またはルートおよびvagrantユーザーの公開鍵を持つ仮想マシンが192.168.56.123にあります。
Googleクラウド
ここですべてがより興味深いものになります。cloud.google.comに接続し、 そこでアプリケーションを起動します。
- https://cloud.google.comを登録して300ドルを獲得
- デプロイされたVMで、
gcloud init
を実行し、指示に従います
gcloud init
- 指示に従って、 開発者コンソールでキーを取得し、仮想マシンの/root/.gcloud/terraform.jsonに配置します
- cloud.google.comでクラスターを作成します
gcloud container clusters create gke-cluster gcloud container clusters list
- kubectlをcloud.google.comに接続するための投票/パスワードを受け取ります
[root@terraform-adm terraform]# gcloud container clusters get-credentials gke-cluster Fetching cluster endpoint and auth data. kubeconfig entry generated for gke-cluster.
- kubectlコンテキストの切り替え
[root@terraform-adm terraform]# kubectl config use-context gke_tutorial-project-183818_europe-west1-d_gke-cluster Switched to context "gke_tutorial-project-183818_europe-west1-d_gke-cluster".
- kubectlコンテキストの名前を変更します(terraformで指定されます)
[root@terraform-adm terraform]# kubectl config rename-context gke_tutorial-project-183818_europe-west1-d_gke-cluster gke_tutorial Context "gke_tutorial-project-183818_europe-west1-d_gke-cluster" was renamed to "gke_tutorial".
- 画像内の変数とテラフォームの類似度の準備
cp /vagrant/terraform/terraform.tfvars.example /vagrant/terraform/terraform.tfvars vi /vagrant/terraform/terraform.tfvars
- テラフォームを準備して適用する
terraform workspace new prod terraform init terraform plan terraform apply
- これで、アプリケーションのアドレスを取得し、ブラウザを介してアクセスできます。 よくできました。
terraform output lb_ingress
- 後ろの尾をきれいにします
terraform destroy gcloud container clusters delete gke-cluster
おわりに
Terraformはそれほど怖くありませんでした。 Terraformは、同じ状態の環境を構築および維持するためのスペースを開きます。