Ritolabo
  1. Home

HCP Terraform(旧 Terraform Cloud)の機能と仕組み

  • HCP Terraform
HCP Terraform(旧 Terraform Cloud)の機能と仕組み

HCP Terraform は、Terraform の plan と apply を HashiCorp のクラウドで実行し、state と認証情報もそこに置くサービス。HCP Terraform とは何か、何ができるか、どういう仕組みで動くかを、公式ドキュメントをもとに整理する。

Tilt で DB の起動と初期データの投入をまとめる

  • Tilt
Tilt で DB の起動と初期データの投入をまとめる

Tilt で、Go で書いた API と一緒に PostgreSQL を kind のクラスタで動かす。resource_deps で DB の Pod が Ready になるのを待ってから初期データを入れ、そのあと API を起動する。初期データの投入は local_resource で行い、trigger mode を manual にして管理画面のボタンで入れ直す。tilt down で DB も含めて削除されることを確認する。

Tilt の Live Update: image を作り直さずにコンテナを更新する

  • Tilt
Tilt の Live Update: image を作り直さずにコンテナを更新する

Tilt の Live Update を使い、Go で書いた API のソースの変更を、image を作り直さずに kind のクラスタで動いているコンテナへ反映する。ローカルの開発環境で go build した実行ファイルを sync でコンテナにコピーし、restart_process 拡張でプログラムを起動し直す。保存のあとも Pod の名前・RESTARTS・image のタグが変わらないことを確認する。

Tiltfile と tilt up: Kubernetes 上のアプリにソースの変更を反映する

  • Tilt
Tiltfile と tilt up: Kubernetes 上のアプリにソースの変更を反映する

Tilt を使い、自作の API を kind のクラスタで動かす。Tiltfile に docker_build・k8s_yaml・k8s_resource の 3 行を書いて tilt up を実行し、ソースを 1 行変えて保存するだけで image の作成から Pod の入れ替えまでが自動で行われることを確認する。開発用と判定できないクラスタでは Tilt が止まることも、kubeconfig の名前だけを変えて確かめる。

Tilt の概要と役割

  • Tilt
Tilt の概要と役割

Tilt は、ローカルの開発環境で動き、アプリのソースを保存するたびに image の作成・Kubernetes への反映・port-forward を自動でやり直すツール。Tilt とは何か、何ができるか、どういう仕組みで動くかを、公式ドキュメントをもとに整理する。

Argo CD と Kustomize で dev と prod 環境を作る

  • ArgoCD
Argo CD と Kustomize で dev と prod 環境を作る

同じアプリを dev と prod の 2 つの環境に入れる。Kustomize の base と overlay で共通の YAML と環境ごとの差分を分け、Argo CD の Application を環境ごとに作る。sops で暗号化した Secret を Kustomize と同じディレクトリに置けない理由と、その回避のしかたも整理する。

Author

rito

rito

  • Backend Engineer
  • Tokyo, Japan
  • PHP 5 技術者認定上級試験 認定者
  • 統計検定 3 級