原创 查看 Secret - 每天5分鐘玩轉 Docker 容器技術(156)

可以通過 kubectl get secret 查看存在的 secret。 顯示有兩個數據條目,kubectl describe secret 查看條目的 Key: 如果還想查看 Value,可以用 kubectl e

原创 用 k8s 管理機密信息 - 每天5分鐘玩轉 Docker 容器技術(155)

應用啓動過程中可能需要一些敏感信息,比如訪問數據庫的用戶名密碼或者祕鑰。將這些信息直接保存在容器鏡像中顯然不妥,Kubernetes 提供的解決方案是 Secret。 Secret 會以密文的方式存儲數據,避免了直接在配置文件中保存敏

原创 PV 動態供給 - 每天5分鐘玩轉 Docker 容器技術(153)

前面的例子中,我們提前創建了 PV,然後通過 PVC 申請 PV 並在 Pod 中使用,這種方式叫做靜態供給(Static Provision)。 與之對應的是動態供給(Dynamical Provision),即如果沒有滿足 PVC

原创 MySQL 如何使用 PV 和 PVC?- 每天5分鐘玩轉 Docker 容器技術(154)

本節演示如何爲 MySQL 數據庫提供持久化存儲,步驟爲:創建 PV 和 PVC。部署 MySQL。向 MySQL 添加數據。模擬節點宕機故障,Kubernetes 將 MySQL 自動遷移到其他節點。驗證數據一致性。首先創建 PV 和

原创 外部 Storage Provider - 每天5分鐘玩轉 Docker 容器技術(149)

如果 Kubernetes 部署在諸如 AWS、GCE、Azure 等公有云上,可以直接使用雲硬盤作爲 Volume,下面是 AWS Elastic Block Store 的例子: 要在 Pod 中使用 ESB volume,必

原创 volume 方式使用 Secret - 每天5分鐘玩轉 Docker 容器技術(157)

Pod 可以通過 Volume 或者環境變量的方式使用 Secret,今天先學習 Volume 方式。 Pod 的配置文件如下所示: ① 定義 volume foo,來源爲 secret mysecret。 ② 將 foo 

原创 數據管理 - 每天5分鐘玩轉 Docker 容器技術(147)

本章將討論 Kubernetes 如何管理存儲資源。 首先我們會學習 Volume,以及 Kubernetes 如何通過 Volume 爲集羣中的容器提供存儲;然後我們會實踐幾種常用的 Volume 類型並理解它們各自的應用場景;最後

原创 Liveness 探測 - 每天5分鐘玩轉 Docker 容器技術(143)

Liveness 探測讓用戶可以自定義判斷容器是否健康的條件。如果探測失敗,Kubernetes 就會重啓容器。 還是舉例說明,創建如下 Pod: 啓動進程首先創建文件 /tmp/healthy,30 秒後刪除,在我們的設定中

原创 在 Rolling Update 中使用 Health Check - 每天5分鐘玩轉 Docker 容器技術(146)

上一節討論了 Health Check 在 Scale Up 中的應用,Health Check 另一個重要的應用場景是 Rolling Update。試想一下下面的情況: 現有一個正常運行的多副本應用,接下來對應用進行更新(比如使用

原创 在 Scale Up 中使用 Health Check - 每天5分鐘玩轉 Docker 容器技術(145)

對於多副本應用,當執行 Scale Up 操作時,新副本會作爲 backend 被添加到 Service 的負責均衡中,與已有副本一起處理客戶的請求。考慮到應用啓動通常都需要一個準備階段,比如加載緩存數據,連接數據庫等,從容器啓動到正真

原创 Readiness 探測 - 每天5分鐘玩轉 Docker 容器技術(144)

除了 Liveness 探測,Kubernetes Health Check 機制還包括 Readiness 探測。 用戶通過 Liveness 探測可以告訴 Kubernetes 什麼時候通過重啓容器實現自愈;Readiness 探

原创 環境變量方式使用 Secret - 每天5分鐘玩轉 Docker 容器技術(158)

通過 Volume 使用 Secret,容器必須從文件讀取數據,會稍顯麻煩,Kubernetes 還支持通過環境變量使用 Secret。 Pod 配置文件示例如下: 創建 Pod 並讀取 Secret。 通過環境變量 SE

原创 Health Check - 每天5分鐘玩轉 Docker 容器技術(142)

強大的自愈能力是 Kubernetes 這類容器編排引擎的一個重要特性。自愈的默認實現方式是自動重啓發生故障的容器。除此之外,用戶還可以利用 Liveness 和 Readiness 探測機制設置更精細的健康檢查,進而實現如下需求:

原创 回收 PV - 每天5分鐘玩轉 Docker 容器技術(152)

當 PV 不再需要時,可通過刪除 PVC 回收。 當 PVC mypvc1 被刪除後,我們發現 Kubernetes 啓動了一個新 Pod recycler-for-mypv1,這個 Pod 的作用就是清除 PV mypv1 

原创 用 ConfigMap 管理配置 - 每天5分鐘玩轉 Docker 容器技術(159)

Secret 可以爲 Pod 提供密碼、Token、私鑰等敏感數據;對於一些非敏感數據,比如應用的配置信息,則可以用 ConfigMap。 ConfigMap 的創建和使用方式與 Secret 非常類似,主要的不同是數據以明文的形式存