kubernetes terraform helm 起手式

楔子 現在雲端化的產品服務這麼多,怎一開始入門來使用這些服務,這次來聊聊這個話題吧。 觀念 主要有幾個東西: kubernetes:負責 app 的擴展,穩定服務等等 helm:負責產生 kubernetes 的設定參數樣版文件 terraform:負責來設定雲端的資源環境 為了不讓東西討論到細節,就先簡單把 kubernetes 想像成可以使用的程式,而 helm 就想像成去設定程式的一些參數,而 terraform 想像成要用哪些資源。 當然可以去花點時間去官網看看詳細的介紹。 環境 為了在本地端使用開發測試,就本地安裝 minikube 來替代 kubernetes ,再簡化說明, helm 就是這些設定 kubernetes 的相關設定,至於 terraform 就當做設定這些程式所需要的相關資源(eg.多大的 cpu 和 ram) 示範 code 使用 terraform + kubernetes config terraform 要設定幾個東西 kubernetes mysql deployment & mysql service wordpress deployment & wordpress service provider "kubernetes" { config_context = "minikube" } locals { wordpress_labels = { App = "wordpress" Tier = "frontend" } mysql_labels = { App = "wordpress" Tier = "mysql" } } resource "kubernetes_secret" "mysql-pass" { metadata { name = "mysql-pass" } data = { password = "root" } } resource "kubernetes_deployment" "wordpress" { metadata { name = "wordpress" labels = local....

April 28, 2022