NT590 特價中
Kubernetes(也被稱為”K8S”)是目前最熱門的話題之一,職場需要許多擁有 K8S 技能的工程師。
透過本課程獲得這些技能! 這是一個非常好的機會去做一個真正的 K8S 專案,讓自己在真正的專案上達到高專業的水準。
在整個課程中,你將就真實的需求工作 – 但你不需要已懂如何寫程式或懂任何特定的程式語言 – 課程已經為你準備了一套 Docker images,你的工作是使用 Kubernetes 讓這些 images 執行。
該系統是一個基於微服務( Microservice )的架構,在這個課程中,我們將研究在管理這些複雜系統時需要做出的設計決策和權衡。 請注意,本課程不是關於如何設計微服務(儘管我們肯定會討論這一點) ; 開發工作已經完成,我們需要讓系統在營運叢集( production cluster )上執行。
經由分析叢集的執行時期效能( run time performance ),我們還將發現開發人員在程式碼中犯了一些糟糕的錯誤!
你可以在你的本地開發電腦(PC/Mac/筆記本電腦)上完成課程的第一部分。 第二部分(從第 13 章開始)將移到雲端。 你將使用一個真正的 AWS 帳戶,我們將繼續使用 ELK/Elastic Stack 設立監控,並使用 Prometheus 和 Grafana 進行監管。
我為各種不同的人設計這門課程——無論你是 DevOps 工程師,還是開發人員,或者你對整個領域還很陌生,我都會一路解釋。 只需要一些使用電腦的基本知識,或許一點命令行經驗就足夠了。
在 13 – 17 章,你將需要一個 AWS 帳戶,如果你想自己在系統上實驗的話。 如果你是 AWS 的新手,請不用擔心,課程講師將一路罩你——但是亞馬遜會在你運用系統時跟你收費(就像所有 /大多數雲端供應商一樣)。 預估為此支付不超過10美元(這是一個安全的高估) ,但是你需要自己管理這個花費,並且必須在會話( session )結束時刪除你的 Kubernetes 叢集。 不要因此而放棄,這是很好的投資。
https://softnshare.com/kubernetes-microservices/
mac 移 除 docker 在 矽谷牛的耕田筆記 Facebook 的精選貼文
今天這篇文章探討的是 2020 十一月份於美國舉行的線上 Kubeconf & CloudNatvieConf 的一些內容整理,作者整理了五個有趣的議題,分別如下
# Platforms as Product: Self-service is essential
Platforms as Product 這個概念幾乎貫穿了整場 Kubeconf, 其中由 Dave Sudia's 帶來的 keynote 介紹了到底打造一個屬於自己的 k8s 平台會有哪些好處以及有哪些挑戰。
此外,如何打造一個給內部開發人員自治的 k8s 叢集也是一個有趣的議題,當愈來愈多的服務往 k8s 轉移時,對於開發人員來說,需不需要一個 k8s 來使用,這部分到底是由來負責維護與管理等都是一個有趣的問題。
另外最重要還是 Apple 的公開聲明,Kubernetes 的導入是一個進行式,其牽扯的範圍從軟硬開發人員,維運人員到其他如財政相關部門,所有的服務都即將採用 k8s 做為底層架構
video: https://www.youtube.com/watch?v=z3nFTi5-b3A&feature=youtu.be
# Safety and Speed: Move fast and don’t break things
這個類型的議題有非常多,譬如關於部署方面,就有非常多的討論都在探討要如何透過 GitOps 的架構來達到安全且快速的軟體更新。
此外,如何幫 k8s 叢集打造一個強韌且穩固的可觀測性平台也是一個議題,其中由 OpenTelemetry 這個組織所提倡的統一介面也是有諸多的聲浪,雖然該專案還在萌芽發展,但是有興趣的人還是要多關注一下這個專案
另外一個有趣的專案新專案 Troubleshoot.sh 其基於 kubectl plugin 的框架,提供一系列的工具幫助管理人員除錯與管理,最後提到的則是 Telepresence 這套除錯工具。
對於這系列工具有興趣的都可以玩看看
GitOps: https://kccncna20.sched.com/event/ekBA/gitops-is-likely-more-than-you-think-it-is-cornelia-davis-weaveworks
Troubleshoot.sh: https://troubleshoot.sh/
Telepresence: https://www.telepresence.io/
# DevSecOps: Security is a day 0 concern
Security 這個議題一直沒有停燒過,過去的 Kubeconf 就有非常多的討論關於如何強化 kubernetes 相關的安全性,從應用程式,資源管理,叢集本身到整個架構,處處都有安全性的問題需要考慮。
Open Policy Agent (OPA) 是一個非常頻繁出現的專案,透過 OPA 的框架其實可以做到非常多的事情,譬如 network policy 的檢查,相關 YAML 語意的比對,這些功能甚至都可以整合到 CI 的階段中,去幫忙檢查所有 Yaml 的設定是否符合公司的安全準則。
# Multi Cluster: The K8s future is connected
隨者基於 k8s 架設的平台數量愈來愈多,考量到跨國跨區服務等架構時,如何搭建出一個 Multi-Cluster 的 k8s 叢集也是一個炙手可熱的問題。
作者於演講中使用 K8s Initializer 這個工具來搭建一組由 GKE + Docker for Mac 所組合的 multi-cluster 叢集,對這方面有興趣的可以看看下列演講與這個工具。
K8s Initializer: https://app.getambassador.io/initializer/
video: https://kccncna20.sched.com/event/ekD9/multi-cluster-is-easier-than-you-think-with-linkerd-and-ambassador-thomas-rampelberg-buoyant-daniel-bryant-datawire?iframe=no
# End user focus: Learning and telling stories is important
整個 Kubeconf & CloudNativeConf 最大的訴求有兩個
1) 分享使用者的使用經歷
2) 幫助所有剛剛踏入 Cloud Native 的夥伴,讓他們在這條道路上能夠少走冤望路
我自己的觀察也符合這類型的需求,對於一個大型開源專案,很多時候火力展示反而不是最重要的,反而是如何茁壯這個開源社群。針對不熟悉的使用者提供一些方便的學習管道,讓他們更有辦法踏入這個社群,並且享受這些工具帶來的成果。同時透過分享已知的成功案例,讓那些還在思考與猶豫的群體能夠有一個定心丸,願意踏出第一步來嘗試看看 Cloud Natvie。
這場
mac 移 除 docker 在 矽谷牛的耕田筆記 Facebook 的精選貼文
#kubernetes1.20 #docker-bye
隨著 kubernetes 1.20 相關消息愈來愈多,目前一個引起廣泛討論的就是 docker support 將被標示為棄用,並且於未來版本的中將正式移除。
到底這個未來的改變對於開發以及維運人員來說,到底會有什麼樣的衝擊,這邊就來跟大家分享一下我的看法
# 開發人員
Q1: 我需要重新學習新的工具嗎? 能不能繼續使用 Docker?
A1: 大部分情況下,你不需要重新學習任何工具,可以繼續使用 Docker 作為本地開發,你產生的 Image 依然可以讓 Kubernetes 去運行。
Q2: Kubernetes 一旦不支援 Docker,那我的 Image 還可以放 Docker Hub 嗎?
A2: 這個沒有問題,因為目前的 Container Registry 都基於 OCI 標準來設計,因此格式相容的情況下, Kubernetes 是可以繼續使用 Docker Hub 上的 image.
Q3: 我的開發環境是 Mac,使用的是 Docker for Desktop 並且用 Docker 內建的 Kubernetes 來開發,請問我會被影響嗎
A3: 這個開發環境比較特別,可以讓 docker build 產生的 image 直接給 kubernetes 使用。一旦 Kubernetes 底下使用別套,也許這條路徑會出問題。 因此這個問題值得關注。
# 維運人員
Q1: 我的公有雲 Kubernetes 服務會被影響嗎?
A1: 三大公有雲目前都有提供除了 Docker 以外的解決方案,可以參閱相關文件來切換。
如果已經使用 containerd/cri-o 這些解決方案的話,基本上什麼都不用做。
但是如果本來使用的是 docker 的話,那就要注意一下你的服務提供者有沒有提供轉移方式。
Q2: 自架 Kubernetes 會被影響嗎
A2: 這取決於你的使用方案,譬如你使用 Rancher 的話,預設是使用 Docker,因此勢必未來一定會有一波轉移問題要處理。
另外如果 Kubernetes 節點是由自己處理的,那要注意需要自行安裝其他的 Container Runtime。單純只有安裝 docker.io 是不夠。
Q3: 維運上會有什麼改變?
A3: 未來若 k8s 不再支持 docker,勢必你將不能於節點上使用 docker 這個指令來觀察相關的運行資訊。這部分可能需要改用 ctr 或是 crictl 等不同的 CLI 工具來觀察。
全新的工具,全新的用法勢必需要學習
Q4: 這樣切換有什麼好處?
A4: 不論是切換到 Containerd 或是 CRI-O ,效能上會提升,與資源消耗會下降,整個容器處理流程也會變得更加精銳
# 結論
1. Kubernetes 不是 Docker 管理平台,是容器管理平台。定義 CRI 標準就是為了支援多種容器技術。
2. Docker 被移除是可以考慮的,未來我認為 CRI-O 都有可能變成預設解決方案,因為其本身的設計就是為了 K8s 而最佳化,同時也與 Kubernetes 版本對齊,
3. 1.20 只是警告,將要退役,並不代表完全移除。但是不久的將來就會正式移除。
4. 如果有時間,就提早進行準備,永遠都不要到最後一刻才決定處理。大量仰賴 Open Source 的情況下,每個專案的開發能量也都很重要,一個不再維護的專案用起來會很令人提心跳膽。
mac 移 除 docker 在 矽谷牛的耕田筆記- #kubernetes1.20 #docker-bye 隨著 ... 的必吃
Q3: 我的開發環境是Mac,使用的是Docker for Desktop 並且用Docker 內建 ... Docker 被移除是可以考慮的,未來我認為CRI-O 都有可能變成預設解決方案,因為其本身的 ... ... <看更多>
mac 移 除 docker 在 How to Uninstall Docker on Your macOS - YouTube 的必吃
I will also show how to reset docker to default setting. Remove Docker Manually Open the Applications folder ... ... <看更多>