這次唸的書是 Kubernetes Cookbook(https://www.packtpub.com/virtualization-and-cloud/kubernetes-cookbook)
K8s 系統由以下幾個元素構成
雖然很多前輩告誡想玩 k8s 好好玩就好,不要跳太深坑超多,但是如果未來要上 Production ,自己不了解細節還是很恐怖的,趁著連假來衝一波!
教科書和官方都用 centos,昨天不信邪拿 amazon-linux 來裝果然遇到問題.因為 安裝 k8s 需要 systemd 但是 amazon-linux 無法安裝 systemd 所以又老實的換回 centos7.第一次裝應該會很亂,但是盡量寫完整一點
上一篇(網路設定篇)先跑去安裝 etcd 和 flannel ,希望進行到這邊可以安裝k8s了.
打開 /etc/kubernetes/apiserver 修改下列幾項:
# The address on the local server to listen to…
前一篇要在同一台機器安裝 k8s 但是一直起不來,看一下官方文件發現…
上一篇已經將 nginx 掛到 pods 上了,這篇將接續怎麼來使用該服務.啟動服務就會需要將服務導向外部,而網路這段是 k8s 架構中最複雜的一步.
記得先前安裝 k8s 的時候有使用到 Flannel 網路吧,這層網路決定了每個 Pod 的網路 IP 如何分配.網路示意圖如下:
神器x神器=?
k8s 是由 google 釋出的 container 編排工具,就不再這篇多介紹:k8s 讀書會 — introduction.
Coding everything
前一篇 main.tf 介紹了怎麼啟動集群,但是如果想要增加不同的 Node Pools,難道要一直重複貼上嗎?很幸運 Terraform 和一般程式語言一樣有 Module 的概念,可以透過 Module 來快速產生多個相似的物件.
在使用 Module 之前,要先看一下資料夾結構