不知道大家是否都有使用 Network Policy 來設定 Kubernetes 內部的 ACL?
這邊有個叫做 OPA 的工具可以用幫你驗證你的 Network Policy 是否運作良好,甚至當有新的應用服務要部署的時候,也會確定是否有跟 Network Policy 衝突
有興趣的人可以研究看看
https://www.cncf.io/blog/2020/09/09/how-to-enforce-kubernetes-network-security-policies-using-opa/
這邊有個叫做 OPA 的工具可以用幫你驗證你的 Network Policy 是否運作良好,甚至當有新的應用服務要部署的時候,也會確定是否有跟 Network Policy 衝突
有興趣的人可以研究看看
https://www.cncf.io/blog/2020/09/09/how-to-enforce-kubernetes-network-security-policies-using-opa/
CNCF
How to enforce Kubernetes network security policies using OPA
Guest post originally published on the Magalix blog by Mohammed Ahmed This article is part of our Open Policy Agent (OPA) series, and assumes that you are familiar with Kubernetes and OPA.
#小編 #深夜讀物
一篇關於 Service Mesh 的好文,發布已經有段時間了不過還是值得一讀, 文章作者是非常早期 Service Mesh 項目: Linkerd 的核心開發成員之一也是新創公司 Buoyant 公司的 CEO。
相信大家應該對於 Service Mesh 一詞已經不陌生,可能對於這個名詞比較熟悉的朋友大多是從另一個 Service Mesh 項目: Istio 去了解 Service Mesh 的面貌,從這篇文章你可以從不同觀點認識 Service Mesh ,全文非常長內容涵蓋
• Service Mesh 詳盡介紹
• 為什麼 Service Mesh 可以被施行?
• 為什麼 Service Mesh 是個好的 idea (比起其他方法)?
• Service Mesh 幫助了什麼?
• Service Mesh 有解決掉所有問題嗎?
• 為什麼在現今 Service Mesh 可以被施行?
• 為什麼人們那麼愛談論 Service Mesh?
• 身為一個謙虛的開發者需要關注 Service Mesh 嗎?
• 一系列F&Q
這裡對 Service Mesh 的需求做個小結,Service Mesh 帶來了三大好處:
1. Reliability: 包含提供請求重試、超時、金絲雀部署(Traffic shifting/splitting) 等功能
2. Observability: 包含提供請求成功率、延時、粒度到個別服務等級的請求量、個別服務等級路由、服務等級拓墣圖等功能
3. Security: ACL 及 Mutual TLS (客戶端及服務端互信)
值得一提的是,本篇作者 William Morgan 對於 istio 持負面的態度,並不是因為 istio 與 linkerd 處於競爭關係的兩個產品,而是對於 istio 在 service mesh 做了太多的商業性 marketing 操作(大部分來自Google的操作)
文章來源: https://servicemesh.io/
有興趣的朋友也可以在 Podcast 上聽到作者在 Podcast 上的訪談: https://reurl.cc/N6GbW9
一篇關於 Service Mesh 的好文,發布已經有段時間了不過還是值得一讀, 文章作者是非常早期 Service Mesh 項目: Linkerd 的核心開發成員之一也是新創公司 Buoyant 公司的 CEO。
相信大家應該對於 Service Mesh 一詞已經不陌生,可能對於這個名詞比較熟悉的朋友大多是從另一個 Service Mesh 項目: Istio 去了解 Service Mesh 的面貌,從這篇文章你可以從不同觀點認識 Service Mesh ,全文非常長內容涵蓋
• Service Mesh 詳盡介紹
• 為什麼 Service Mesh 可以被施行?
• 為什麼 Service Mesh 是個好的 idea (比起其他方法)?
• Service Mesh 幫助了什麼?
• Service Mesh 有解決掉所有問題嗎?
• 為什麼在現今 Service Mesh 可以被施行?
• 為什麼人們那麼愛談論 Service Mesh?
• 身為一個謙虛的開發者需要關注 Service Mesh 嗎?
• 一系列F&Q
這裡對 Service Mesh 的需求做個小結,Service Mesh 帶來了三大好處:
1. Reliability: 包含提供請求重試、超時、金絲雀部署(Traffic shifting/splitting) 等功能
2. Observability: 包含提供請求成功率、延時、粒度到個別服務等級的請求量、個別服務等級路由、服務等級拓墣圖等功能
3. Security: ACL 及 Mutual TLS (客戶端及服務端互信)
值得一提的是,本篇作者 William Morgan 對於 istio 持負面的態度,並不是因為 istio 與 linkerd 處於競爭關係的兩個產品,而是對於 istio 在 service mesh 做了太多的商業性 marketing 操作(大部分來自Google的操作)
文章來源: https://servicemesh.io/
有興趣的朋友也可以在 Podcast 上聽到作者在 Podcast 上的訪談: https://reurl.cc/N6GbW9
buoyant.io
What is a Service Mesh? Service Mesh Explained
Architecturally, the service mesh is nothing more than a bunch of userspace proxies stuck next to your services, plus a set of management processes.
從 Gitlab 出發探討 GitOps 的概念,有興趣的可以閱讀這篇由 Cheng Wei Chen 於 ITHOME Cloud Edge Summit 2020 的精彩分享
https://blog.chengweichen.com/2020/09/from-devops-to-gitops-with-gitlab.html?fbclid=IwAR3gJJZ_J3hsX7rOJ6MYcIOoDuqwuz2J3xLJxANnvIsvkhra02UfzktjC9Q
https://blog.chengweichen.com/2020/09/from-devops-to-gitops-with-gitlab.html?fbclid=IwAR3gJJZ_J3hsX7rOJ6MYcIOoDuqwuz2J3xLJxANnvIsvkhra02UfzktjC9Q
艦長,你有事嗎?
From DevOps to GitOps with GitLab
感謝 iThome 的邀請,有幸能擔任 iThome Cloud Edge Summit 2020 的講師,分享 GitOps 相關主題。
七個邁向 Cloud Native 的挑戰!!
本篇文章列出了七個企業想要踏入 Cloud Native 之路上最常遇到的問題
以下幫大家總結並節錄一點小內文
1. 過於緩慢的發布週期
創新需要有能力很快速地針對每次的修改去快速發布。
2. 使用過時的技術
作者認為時時關注當前這個迅速發展的世界是非常重要的,特別是的相關開源專案。
3. 綁定特定服務供應商且成長方面缺乏彈性
當服務與特定廠商的解決方案綁定太深時,很容易遇到所有功能都由該廠商綁定,想要做什麼都會綁手綁腳。
4. 缺乏專業性人才
根據 2019 一篇調查,只有 7% 的 IT 主管再招聘與慰留人才方面沒有遇到困難
5. 安全性
人們總是當問題發生的時候才會開始注意安全性的問題,但是往往這些問題的代價都很高。儘管安全防護是一個複雜且困難的領域,但是擁有一個資安的實踐守則還是非常重要。
6. 過高的運營與技術成本
滿多企業都會使用雲端服務來減少自行維護伺服器所需的成本,然而 Cloud Native 的環境常常會用到各式各樣的元件,這些元件所消耗的成本都會隨者規模放大而有所影響,如何去最佳化你的雲端資源使用量來盡可能的減少你的花費也是一大挑戰
7. Cloud Native 的概念難以溝通
Cloud Native 的觀念難以溝通與理解,對於任何想要導入 Cloud Native 到團隊中的企業來說,領導團隊必須要先理解到底這些解決方案的重要性與複雜性。
甚至可能還會因為微服務,容器等其他概念的認知不同而花時間理解。
https://www.cncf.io/blog/2020/09/15/top-7-challenges-to-becoming-cloud-native/
本篇文章列出了七個企業想要踏入 Cloud Native 之路上最常遇到的問題
以下幫大家總結並節錄一點小內文
1. 過於緩慢的發布週期
創新需要有能力很快速地針對每次的修改去快速發布。
2. 使用過時的技術
作者認為時時關注當前這個迅速發展的世界是非常重要的,特別是的相關開源專案。
3. 綁定特定服務供應商且成長方面缺乏彈性
當服務與特定廠商的解決方案綁定太深時,很容易遇到所有功能都由該廠商綁定,想要做什麼都會綁手綁腳。
4. 缺乏專業性人才
根據 2019 一篇調查,只有 7% 的 IT 主管再招聘與慰留人才方面沒有遇到困難
5. 安全性
人們總是當問題發生的時候才會開始注意安全性的問題,但是往往這些問題的代價都很高。儘管安全防護是一個複雜且困難的領域,但是擁有一個資安的實踐守則還是非常重要。
6. 過高的運營與技術成本
滿多企業都會使用雲端服務來減少自行維護伺服器所需的成本,然而 Cloud Native 的環境常常會用到各式各樣的元件,這些元件所消耗的成本都會隨者規模放大而有所影響,如何去最佳化你的雲端資源使用量來盡可能的減少你的花費也是一大挑戰
7. Cloud Native 的概念難以溝通
Cloud Native 的觀念難以溝通與理解,對於任何想要導入 Cloud Native 到團隊中的企業來說,領導團隊必須要先理解到底這些解決方案的重要性與複雜性。
甚至可能還會因為微服務,容器等其他概念的認知不同而花時間理解。
https://www.cncf.io/blog/2020/09/15/top-7-challenges-to-becoming-cloud-native/
Cloud Native Computing Foundation
Top 7 challenges to becoming cloud native | Cloud Native Computing Foundation
Guest post originally published on the CloudOps blog Cloud native applications take full advantage of the cloud's operational model, driving business value by being auto-provisioning, scaling…
這次帶來一篇 CNI 效能的文章分析,該文章介紹不同 CNI 基於 10G 網路下的效能評比,詳細請點下方連結參閱全文,
以下節錄重點
1. Kube-OVN 不但資源吃很多,效能還很不好
2. Canal/Calico/Flannel 三者的運算資源使用量都不多,且效能都很好
3. Kube-Router 的效能都很差,資源使用方便也不是特別出色
4. WeaveNet 與 Cilium 效能都不差,但是 Cilium 吃的效能很高,可說跟 Kube-OVN 同等級,而 WeaveNet 用到的資源少
5. 這次的實驗評比我認為其實能看到的東西有限,主要是不同的 CNI 所搭配的解決方案不同,目標要配合的情境也不同,雖然從圖表中可以看到 Kube-OVN 的綜合評比最差,但是其要用的場景本>身就不太一樣,單純用最原始的流量互打來判別優劣其實不太對
6. 如果今天要選擇網路 CNI 的時候,可以看到效能跟資源方面, Flannel/Calico/Canal 幾乎等級都差不多,而且 Calico 還支援加密與 Network Policy 等功能。
7. 此外,目前 Flannel 也從 Kubeadm 的官方教學頁面中移除,因為太多問題且維護者沒有要修復。所以我認為如果沒有特別使用情境需求的話,可以考慮使用 Calico.
8. Cilium 對於安全性以及 load-balancing 方面也有別的功能,就如同(5)點所提到,不同的場景有不同的需求,有些功能是獨占的。
https://www.hwchiu.com/cni-performance-2020.html
以下節錄重點
1. Kube-OVN 不但資源吃很多,效能還很不好
2. Canal/Calico/Flannel 三者的運算資源使用量都不多,且效能都很好
3. Kube-Router 的效能都很差,資源使用方便也不是特別出色
4. WeaveNet 與 Cilium 效能都不差,但是 Cilium 吃的效能很高,可說跟 Kube-OVN 同等級,而 WeaveNet 用到的資源少
5. 這次的實驗評比我認為其實能看到的東西有限,主要是不同的 CNI 所搭配的解決方案不同,目標要配合的情境也不同,雖然從圖表中可以看到 Kube-OVN 的綜合評比最差,但是其要用的場景本>身就不太一樣,單純用最原始的流量互打來判別優劣其實不太對
6. 如果今天要選擇網路 CNI 的時候,可以看到效能跟資源方面, Flannel/Calico/Canal 幾乎等級都差不多,而且 Calico 還支援加密與 Network Policy 等功能。
7. 此外,目前 Flannel 也從 Kubeadm 的官方教學頁面中移除,因為太多問題且維護者沒有要修復。所以我認為如果沒有特別使用情境需求的話,可以考慮使用 Calico.
8. Cilium 對於安全性以及 load-balancing 方面也有別的功能,就如同(5)點所提到,不同的場景有不同的需求,有些功能是獨占的。
https://www.hwchiu.com/cni-performance-2020.html
Hwchiu Learning Note
[文章導讀] - 基於10G網路的 Kubernetes CNI 效能比較
本篇文章是節錄自網路上一篇關於 CNI 於10G網路下的效能分析,主要是讀後心得分享
這篇分享一篇非常有趣的問題,從 Container 的實作開始介紹,最後介紹幾個與 Container 相關的 CVE
對於資安有興趣的可以研究看看
https://teamt5.org/tw/posts/container-escape-101/
對於資安有興趣的可以研究看看
https://teamt5.org/tw/posts/container-escape-101/
teamt5.org
Container Escape 101 - TeamT5
# 前言
本月來到 D39 與大家分享近期有趣的研究,Lab 團隊雖然不像是科幻電影中的實驗室般,穿著帥氣的白袍與擁有高科技的實驗室,但我們主要專注於最新技術與威脅研究,與惡意程式作者們互相切磋是我們的日常。而 Lab 中的 D39 成員更致力於弱點安全與漏洞挖掘領域,研究範圍包含 Mobile、IOT、Linux、Windows 等有機會連網的系統與裝置都是我們的目標,期許能提升客戶產品安全性,打造優良的上網環境(笑)
這一次由 D39 實習生 Jack,為我們精心整理 Container 相關的…
本月來到 D39 與大家分享近期有趣的研究,Lab 團隊雖然不像是科幻電影中的實驗室般,穿著帥氣的白袍與擁有高科技的實驗室,但我們主要專注於最新技術與威脅研究,與惡意程式作者們互相切磋是我們的日常。而 Lab 中的 D39 成員更致力於弱點安全與漏洞挖掘領域,研究範圍包含 Mobile、IOT、Linux、Windows 等有機會連網的系統與裝置都是我們的目標,期許能提升客戶產品安全性,打造優良的上網環境(笑)
這一次由 D39 實習生 Jack,為我們精心整理 Container 相關的…
這邊跟大家分享一個有趣的入門文章,介紹各種不同部署方式的差異,譬如Ramped, A/B, Green/Blue, Shadow, Canary 等等
每個更新方式帶來的效果不同,同時需要的環境建置也不同,這部分還會影響到整體的預算成本,最後還有一張簡易的表來快速介紹其差異性,有興趣的可以看看
https://thenewstack.io/deployment-strategies/
每個更新方式帶來的效果不同,同時需要的環境建置也不同,這部分還會影響到整體的預算成本,最後還有一張簡易的表來快速介紹其差異性,有興趣的可以看看
https://thenewstack.io/deployment-strategies/
The New Stack
Six Strategies for Application Deployment
There are a variety of techniques to deploy new applications to production, so choosing the right strategy is an important
由 Cloud Native Taiwan User Group 所持續推動的每月線下活動又來囉,本次內容包含了近幾年與底層非常熱門的 eBPF 以及透過講者所開發的開源專案,KubeFire, 其透過 Firecracker 這個方式來創建並管理一個 Kubernetes 叢集
該次議程地點為台北天瓏書局,同時當天也會開放線上直播,讓不克前來的社群朋友一起參與,會後也會有相關錄影。
請點選下方連結來瞭解更多
https://www.meetup.com/CloudNative-Taiwan/events/273340386/
該次議程地點為台北天瓏書局,同時當天也會開放線上直播,讓不克前來的社群朋友一起參與,會後也會有相關錄影。
請點選下方連結來瞭解更多
https://www.meetup.com/CloudNative-Taiwan/events/273340386/
Meetup
SDN x Cloud Native Meetup #32
Fri, Sep 25, 2020, 7:30 PM: ########################################## 請注意!!本次活動為線下 + Webinar 形式 ##########################################經過長久的疫情影響,本次 Meetup 回歸線下活動,這次邀請到 喜歡鑽研新網路技術及linux系統軟體的 中華電信工程師
想必大家一定都有使用過 CPU Limit 的經驗,透過這個機制能夠確保每個 Container 使用的 CPU 資源量,也可以保證每個節點上面會有足夠 CPU 供 Kubernetes 原生服務 (kubelet) 使用。
然而本篇文章就要來跟大家分享一個設定 CPU Limit 反而造成效能更差的故事,故事中當 CPU 設定為 800ms 的時候,卻發現實際運行的 Container 最高大概就只有 200ms 左右,這一切的一切都是因為 Liniux Kernel 的臭蟲導致!
一個直接的做法就是針對那些本來就沒有過高 CPU 使用量服務取消其 CPU Limit,作者於文章中也探討了一些機制要如何保護與應對這些被移除 CPU 限制的服務。
這個臭蟲於 Linux Kernel 4.19 後已經修復,但是要注意你使用的發行版本是否有有包含這個修復,作者列出一些已知的發行版本修復狀況
Debian: The latest version buster has the fix, it looks quite recent (august 2020). Some previous version might have get patched.
Ubuntu: The latest version Ubuntu Focal Fosa 20.04 has the fix.
EKS has the fix since December 2019, Upgrade your AMI if necessary.
kops: Since June 2020, kops 1.18+ will start using Ubuntu 20.04 as the default host image.
GKE: THe kernel fix was merged in January 2020. But it does looks like throttling are still happening.
有興趣的歡迎點選原文閱讀更多
https://erickhun.com/posts/kubernetes-faster-services-no-cpu-limits/
然而本篇文章就要來跟大家分享一個設定 CPU Limit 反而造成效能更差的故事,故事中當 CPU 設定為 800ms 的時候,卻發現實際運行的 Container 最高大概就只有 200ms 左右,這一切的一切都是因為 Liniux Kernel 的臭蟲導致!
一個直接的做法就是針對那些本來就沒有過高 CPU 使用量服務取消其 CPU Limit,作者於文章中也探討了一些機制要如何保護與應對這些被移除 CPU 限制的服務。
這個臭蟲於 Linux Kernel 4.19 後已經修復,但是要注意你使用的發行版本是否有有包含這個修復,作者列出一些已知的發行版本修復狀況
Debian: The latest version buster has the fix, it looks quite recent (august 2020). Some previous version might have get patched.
Ubuntu: The latest version Ubuntu Focal Fosa 20.04 has the fix.
EKS has the fix since December 2019, Upgrade your AMI if necessary.
kops: Since June 2020, kops 1.18+ will start using Ubuntu 20.04 as the default host image.
GKE: THe kernel fix was merged in January 2020. But it does looks like throttling are still happening.
有興趣的歡迎點選原文閱讀更多
https://erickhun.com/posts/kubernetes-faster-services-no-cpu-limits/
Erickhun
Kubernetes: Make your services faster by removing CPU limits
At Buffer, we’ve been using Kubernetes since 2016. We’ve been managing our k8s (kubernetes) cluster with kops, it has about 60 nodes (on AWS), and runs about 1500 containers. Our transition to a micro-service architecture has been full of trial and errors.…
一篇關於 Kubernetes 入門的影片,100 秒快速介紹 Kubernetes, 整個流程非常的快
有興趣的可以看看別人是如何介紹 Kubernetes,同時也可以想想如果今天要跟別人介紹
Kubernetes ,自己有沒有辦法講出連你阿嬤都聽得懂的 Kubernetes
https://youtu.be/PziYflu8cB8
有興趣的可以看看別人是如何介紹 Kubernetes,同時也可以想想如果今天要跟別人介紹
Kubernetes ,自己有沒有辦法講出連你阿嬤都聽得懂的 Kubernetes
https://youtu.be/PziYflu8cB8
YouTube
Kubernetes Explained in 100 Seconds
Learn the basics of Kubernetes and how it's used to scale containers to massive workloads in the in cloud, in 100 seconds. https://fireship.io/tags/docker/
Docker in 100 Seconds https://youtu.be/Gjnup-PuquQ
Full docker Tutorial https://youtu.be/gAkwW2tuIqE…
Docker in 100 Seconds https://youtu.be/Gjnup-PuquQ
Full docker Tutorial https://youtu.be/gAkwW2tuIqE…
這邊跟大家分享一下牛自己於矽谷遠端六個月的心得與觀察,從不同面向去探討遠端工作帶來的好處與壞處,同時分享一下美國這邊對於遠端工作的看法與大公司的政策,最後則是根據自己過往台灣的工作經驗來試想一下導入全面遠端工作於台灣企業的困難性
https://www.hwchiu.com/covid-wfh.html
https://www.hwchiu.com/covid-wfh.html
Hwchiu Learning Note
2020 疫情下的矽谷 - 遠端工作的探討
本篇用來分享2020疫情肆虐下的遠端工作心得
昨天晚上的線上活動已圓滿結束,相關資源如下
活動錄影: https://www.youtube.com/watch?v=5JhQOjSSnzQ
投影片:
https://www.slideshare.net/.../introduction-to-cri-and-oci
活動錄影: https://www.youtube.com/watch?v=5JhQOjSSnzQ
投影片:
https://www.slideshare.net/.../introduction-to-cri-and-oci
YouTube
SDN x Cloud Native Meetup - Webinar 邱牛上菜 #6 CRI&OCI
粉絲頁: https://www.facebook.com/technologynoteniu演講投影片 - https://www.slideshare.net/hongweiqiu/introduction-to-cri-and-oci講者部落格 - https://www.hwchiu.com/K8s 基礎...
Terraform 這個工具想必大家都玩過也聽過,這邊非常推薦大家升級到 0.13 版本,這個版本中解決了關於 Module 之間依賴性的問題,能夠使用原先就有的 depends_on 的語法來直接描述,而不需要按照過往以前用各種 fake resource 等機制來完成,整個 Terraform 程式碼會更佳清晰與簡單!
https://medium.com/hashicorp-engineering/creating-module-dependencies-in-terraform-0-13-4322702dac4a?utm_content=buffer50deb&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer&fbclid=IwAR2ksR64Vmu_3Zy6FAZ4ObbemFsaSMiKy3gabDgwq4bbl3SUc7gBlxIUAzk
https://medium.com/hashicorp-engineering/creating-module-dependencies-in-terraform-0-13-4322702dac4a?utm_content=buffer50deb&utm_medium=social&utm_source=facebook.com&utm_campaign=buffer&fbclid=IwAR2ksR64Vmu_3Zy6FAZ4ObbemFsaSMiKy3gabDgwq4bbl3SUc7gBlxIUAzk
Medium
Creating Module Dependencies in Terraform 0.13
Using the new depends_on argument of modules in Terraform 0.13 to create explicit module dependencies.
#小編
有沒有遇過gRPC 在Kubernetes 上的 Load Balance 效果不佳的問題?這篇文章將分析幾種常見gRPC LB的作法也提出一個開箱即用的方案,引入的成本低非常適合想立即在 Kubernetes 上使用 gRPC LB的團隊。
註:第一次使用Telegram 的 telegraph 寫技術文章,在Telegram上閱讀體驗還算不錯。未來會陸續把技術長文放進去 telegraph
https://telegra.ph/In-cluster-gRPC-Load-Balancing-09-28
有沒有遇過gRPC 在Kubernetes 上的 Load Balance 效果不佳的問題?這篇文章將分析幾種常見gRPC LB的作法也提出一個開箱即用的方案,引入的成本低非常適合想立即在 Kubernetes 上使用 gRPC LB的團隊。
註:第一次使用Telegram 的 telegraph 寫技術文章,在Telegram上閱讀體驗還算不錯。未來會陸續把技術長文放進去 telegraph
https://telegra.ph/In-cluster-gRPC-Load-Balancing-09-28
Telegraph
In-cluster gRPC Load Balancing?
背景 想必大家應該已經有經驗 gRPC 在 Kubernetes 上無法做負載均衡了吧!原因是 gRPC 是建立於 HTTP/2 ,而 HTTP/2 的設計本身是複用了同一條長連接 TCP(long-lived TCP)在這條 TCP 連線裡做到多路複用 (multiplexing) 減少建立 TCP 連線所需的開銷及時間。 正因為如此在 Kubernetes 上建立的 Service 底下的工作機制 kube-proxy (iptables) 對 TCP 連接做負載均衡,但 HTTP/2 複用同一條 TCP…
#小編
本篇討論如何使用 Envoy 2步驟為 Kubernetes 上gRPC 應用做負載均衡
https://telegra.ph/Envoy-as-a-gRPC-Load-Balancer-in-Kubernetes-09-30
本篇討論如何使用 Envoy 2步驟為 Kubernetes 上gRPC 應用做負載均衡
https://telegra.ph/Envoy-as-a-gRPC-Load-Balancer-in-Kubernetes-09-30
Telegraph
Envoy as a gRPC Load Balancer in Kubernetes
背景 繼前一篇的文章 In-cluster gRPC Load Balancing? 我們提到在 Kubernetes 上做 gRPC 負載均衡的不便之處及提供 4 個可行的方案之後,文末提出 方案3.(加一個 load balance HTTP/2 Protocol 的反向代理) 為最小引入成本可行方案,今天就來談下如何優雅的使用 Envoy 配置一個 gRPC 反向代理所需要做的配置。 Envoy Envoy 是一個高性能的代理由C++所實作,相比於目前幾套常見的代理 (NGINX, HAProxy…
想必大家應該都聽過 Operator 的概念,透過 CRD 自定義資源格式並且配上程式化的運作邏輯來控管相關資源的操作。甚至有廠商針對 Operator 的概念來設計一個 Framework 讓大家能夠更輕鬆或是有效率的撰寫屬於自己的 Operator。
然而 Operator 真的一定好嗎? 底下這則推文則是來自於 Darren Shepherd(CTO/Co-founder Rancher Lab ) 對於一篇由 RedHat 所發表關於 Operator 好處文章的反面看法。
其推文最後表示:「Right now invest your IT teams time in GitOps, not operators.」
快來看看 Darren 與其他網友針對這些議題的討論,並且分享看看你的想法
https://twitter.com/ibuildthecloud/status/1295810776179961856
然而 Operator 真的一定好嗎? 底下這則推文則是來自於 Darren Shepherd(CTO/Co-founder Rancher Lab ) 對於一篇由 RedHat 所發表關於 Operator 好處文章的反面看法。
其推文最後表示:「Right now invest your IT teams time in GitOps, not operators.」
快來看看 Darren 與其他網友針對這些議題的討論,並且分享看看你的想法
https://twitter.com/ibuildthecloud/status/1295810776179961856
Twitter
Darren Shepherd
I can't disagree with this article enough. Writing operators is a very advanced use case that should be almost never recommended. Right now invest your IT teams time in GitOps, not operators. https://t.co/qPXx8G9pL0
#小編
常見 Service Proxy 和 Edge Proxy 分別在 Kubernetes 上扮演什麼角色,而各自的功能又是什麼?
https://telegra.ph/Service-Proxy--Edge-Proxy-10-03
常見 Service Proxy 和 Edge Proxy 分別在 Kubernetes 上扮演什麼角色,而各自的功能又是什麼?
https://telegra.ph/Service-Proxy--Edge-Proxy-10-03
Telegraph
Service Proxy & Edge Proxy
前言 今天來談 Kubernetes 上所用的幾種不同形式的七層代理(非 kube-proxy ),凡是 Kubernetes 上所有的流量都會經過幾層代理。 舉例來說:客戶端發送請求,進到 Kubernetes 上,經過第一層 Ingress 根據路由由代理轉發至某 Service 之後由 kub-proxy 打進應用的 Pod 內。最後再由這個 Pod 發送請求出去 Kubernetes Cluster 到外部上游 API Servers 時又經過了一層代理轉發。 在 Service Mesh 的範…
如果有在 Kubernetes 內部署 Java 應用程式的人,千萬不要錯過這篇文章,此文章中分享 Java 應用程式關於 Thread Pool Size 的問題,同時當 Java 應用程式容器化並且部署到 Kubernettes 內之後,該怎麼設定 JVM 來讓其能夠更高效率的於容器化環境下工作
https://mucahit.io/2020/01/27/finding-ideal-jvm-thread-pool-size-with-kubernetes-and-docker/
https://mucahit.io/2020/01/27/finding-ideal-jvm-thread-pool-size-with-kubernetes-and-docker/
mucahit.io
Finding Ideal JVM Thread Pool Size With Kubernetes and Docker
In this post, I explain why we use JVM thread pools, what are the parameters that we should take into account when we decide a thread pool and it’s size. And how these parameters are affected when we run our application with Docker and Kubernetes.
Why do…
Why do…
Rancher v2.5 釋出!
這幾天 Rancher 正式釋出 v2.5 版本,這邊就來重點節錄一些改變
1. 強化與雲端環境 EKS 與 輕量級 K3s 環境的整合,此外宣稱所有 Kubernetes 服務上面都可以安裝 Rancher 用其來幫忙管理

2. 針對美國環境要求而開發更具安全性的發行版,符合 FIPS(Federal Information Processing Standars)
3. 整合 GitOps 部署,針對大規模 Edge 叢集的自動部署解決方案 fleet
4. Monitoring 強化,減少與 Rancher 本身的連接性,反而更加使用 Prometheus operator 來提供服務。管理人員可以直接創建相關的 CRD 提供服務,而這些資訊也都會被 Rancher UI 給一併呈現
其中 (4) 裡面還提供的 cluster-level 的客製化設定,就不需要向過往一樣要開很多個 project-level 的 prometheus 來處理,這方面輕鬆不少
資料來源:
- https://rancher.com/blog/2020/rancher-2-5-delivers-computing-everwhere-strategy
- https://github.com/rancher/fleet
- https://fleet.rancher.io/
- https://github.com/rancher/rancher/issues/23239
這幾天 Rancher 正式釋出 v2.5 版本,這邊就來重點節錄一些改變
1. 強化與雲端環境 EKS 與 輕量級 K3s 環境的整合,此外宣稱所有 Kubernetes 服務上面都可以安裝 Rancher 用其來幫忙管理

2. 針對美國環境要求而開發更具安全性的發行版,符合 FIPS(Federal Information Processing Standars)
3. 整合 GitOps 部署,針對大規模 Edge 叢集的自動部署解決方案 fleet
4. Monitoring 強化,減少與 Rancher 本身的連接性,反而更加使用 Prometheus operator 來提供服務。管理人員可以直接創建相關的 CRD 提供服務,而這些資訊也都會被 Rancher UI 給一併呈現
其中 (4) 裡面還提供的 cluster-level 的客製化設定,就不需要向過往一樣要開很多個 project-level 的 prometheus 來處理,這方面輕鬆不少
資料來源:
- https://rancher.com/blog/2020/rancher-2-5-delivers-computing-everwhere-strategy
- https://github.com/rancher/fleet
- https://fleet.rancher.io/
- https://github.com/rancher/rancher/issues/23239
於 Minecraft 中玩耍 Kubernetes, 大概是繼 Doom 後另一個有趣玩法了
https://medium.com/@eric.jadi/minecraft-as-a-k8s-admin-tool-cf16f890de42
https://medium.com/@eric.jadi/minecraft-as-a-k8s-admin-tool-cf16f890de42
Medium
Minecraft as a k8s admin tool
KubeCraftAdmin : The adventurer’s admin tool
如果你機會跑過 kubernetes 1.18 版本,一定要試試看最基本的 kubectl get pods -o yaml,看看是不是內容裡面多出了非常多 f:{} 系列的檔案,導致整個 Yaml 變得非常冗長,閱讀不易,甚至想要抓取到最原始的內容都非常麻煩。
Kubernetes 官方 Github 上還有相關的 issue 再討論這個欄位,詢問是否有辦法能夠清除。不少人都提出了一些希望的用法來處理
Issue: https://github.com/kubernetes/kubernetes/issues/90066
目前看下來最簡單的做法還是透過 kubectl plugin, kubectl-neat 來幫忙完成,可以透過 krew 這個 kubectl 管理工具來安裝管理
https://github.com/itaysk/kubectl-neat
此工具可以將 Server 上得到 Yaml 的內容給整理最後得到最初的檔案
至於到底什麼是 managedFiles? 這個由欄位的出現是因為 1.18 以後,已經將 Server Side Apply 更新策略預設啟用而導致的,而 Server Side Apply 則是一種用來管理 Declarative 設定檔案的方式,對使用者來說基本上完全無感,因為一切都還是透過 kubectl apply 來使用,只是到底如何判斷 當前檔案內容與系統上內容誰先誰後,誰對誰錯,甚至當有人透過 kubectl edit 去編輯內容的時候,到底該怎麼更新。
之後有時間可以再寫一篇來詳細介紹 Kubernetes 內的 Declarative 更新策略
Kubernetes 官方 Github 上還有相關的 issue 再討論這個欄位,詢問是否有辦法能夠清除。不少人都提出了一些希望的用法來處理
Issue: https://github.com/kubernetes/kubernetes/issues/90066
目前看下來最簡單的做法還是透過 kubectl plugin, kubectl-neat 來幫忙完成,可以透過 krew 這個 kubectl 管理工具來安裝管理
https://github.com/itaysk/kubectl-neat
此工具可以將 Server 上得到 Yaml 的內容給整理最後得到最初的檔案
至於到底什麼是 managedFiles? 這個由欄位的出現是因為 1.18 以後,已經將 Server Side Apply 更新策略預設啟用而導致的,而 Server Side Apply 則是一種用來管理 Declarative 設定檔案的方式,對使用者來說基本上完全無感,因為一切都還是透過 kubectl apply 來使用,只是到底如何判斷 當前檔案內容與系統上內容誰先誰後,誰對誰錯,甚至當有人透過 kubectl edit 去編輯內容的時候,到底該怎麼更新。
之後有時間可以再寫一篇來詳細介紹 Kubernetes 內的 Declarative 更新策略
GitHub
managedFields options are very verbose, making kubectl usage a bit · Issue #90066 · kubernetes/kubernetes
Recently (1.18?) a new field was added to configs, managedFields. This is incredibly verbose, which makes kubectl commands like -oyaml and edit painful. For example, on a random deployment I have l...