以 ExternalDNS 自動同步 Kubernetes Ingress 與 Service DNS 資源紀錄

本篇說明如何透過 CoreDNS 自建一套 DNS 服務,並利用 Kubernetes ExternalDNS 同步 Kubernetes 的 Ingress 與 Service API object 中的域名(Domain Name)來產生資源紀錄(Record Resources),讓使用者能夠透過自建 DNS 服務來導向到 Kubernetes 上的應用服務。

Read More

Share Comments

Kubernetes v1.11.x HA 全手動苦工安裝教學(TL;DR)

本篇延續過往手動安裝方式來部署 Kubernetes v1.11.x 版本的 High Availability 叢集,而此次教學將直接透過裸機進行部署 Kubernetes 叢集。以手動安裝的目標是學習 Kubernetes 各元件關析、流程、設定與部署方式。若不想這麼累的話,可以參考 Picking the Right Solution 來選擇自己最喜歡的方式。

Read More

Share Comments

Prometheus 高可靠實現方式

前面幾篇提到了 Prometheus 儲存系統與 Federation 功能,其中在儲存系統可以得知 Local on-disk 方式雖然能夠帶來很好的效能,但是卻也存在著單點故障的問題,並且限制了 Prometehsu 的可擴展性,引發資料的持久等問題,也因此 Prometheus 提供了遠端儲存(Remote storage)的特性來解決擴展性問題。

而除了儲存問題外,另一方面就是要考量單一 Prometheus 在大規模環境下的採集樣本效能與乘載量(所能夠處理的時間序列資料),因此這時候可以利用 Federation 來將不同監測任務劃分到不同實例當中,以解決單台 Prometheus 無法有效處理的狀況。

Read More

Share Comments

了解 Prometheus Federation 功能

Prometheus 在效能上是能夠以單個 Server 支撐百萬個時間序列,當然根據不同規模的改變,Promethes 是能夠進行擴展的,這邊將介紹 Prometheus Federation 來達到此效果。

Prometheus Federation 允許一台 Prometheus Server 從另一台 Prometheus Server 刮取選定的時間序列資料。Federation 提供 Prometheus 擴展能力,這能夠讓 Prometheus 節點擴展至多個,並且能夠實現高可靠性(High Availability)與切片(Sharding)。對於 Prometheus 的 Federation 有不同的使用方式,一般分為Cross-service federationHierarchical federation

Read More

Share Comments

Prometheus 儲存系統解析

Prometheus 系統包含了 Local on-disk storage 與 Remote storage,本節將說明兩者差異,以了解作為實現資料儲存可靠性的基礎。

Read More

Share Comments

Kubernetes exec API 串接分析

本篇將說明 Kubernetes exec API 的運作方式,並以簡單範例進行開發在前後端上。雖然 Kubernetes 提供了不同資源的 RESTful API 來進行 CRUD 操作,但是部分 API 並非單純的回傳一個資料,有些是需要透過 SPDY 或 WebSocket 建立長連線串流,這種 API 以 exec、attach 為主,目標是對一個 Pod 執行指定指令,或者進入該 Pod 進行互動等等。

Read More

Share Comments

Prometheus Operator 介紹與安裝

Prometheus Operator 是 CoreOS 開源的一套用於管理在 Kubernetes 上的 Prometheus 控制器,目標當然就是簡化部署與維護 Prometheus 上的事情,其架構如下所示:

Read More

Share Comments

Prometheus 介紹與基礎入門

Prometheus 是一套開放式原始碼的系統監控警報框架TSDB(Time Series Database),該專案是由 SoundCloud 的工程師(前 Google 工程師)建立,Prometheus 啟發於 Google 的 Borgmon 監控系統。目前 Prometheus 已貢獻到 CNCF 成為孵化專案(2016-),其受歡迎程度僅次於 Kubernetes。

Read More

Share Comments

以 Keystone 作為 Kubernetes 使用者認證

本文章將說明如何整合 Keystone 來提供給 Kubernetes 進行使用者認證。但由於 Keystone 整合 Kubernetes 認證在 1.10.x 版本已從原生移除(--experimental-keystone-url, --experimental-keystone-ca-file),並轉而使用 cloud-provider-openstack 中的 Webhook 來達成,而篇將說明如何建置與設定以整合該 Webhook。

Read More

Share Comments

在 AWS 上建立跨地區的 Kubernetes Federation 叢集


本文章已被棄用,請不要參考。
(This post is being deprecated. Don’t refer it.)

本篇延續先前 On-premises Federation 與 Kops 經驗來嘗試在 AWS 上建立 Federaion 叢集,這邊架構如下圖所示:

Read More

Share Comments