Argo CD 搭配 Kustomize
實作 GitOps 部署 周育緯GitOps 部署 周育緯 1 About me •III DevOps contributor •8 年 System, DevOps 與 Backend 開發與 維護經驗 •資展國際、工研院: Kubernetes, DevOps 講師 2 GitOps •雲原生 Continuous Deployment •所有部署都使用聲明式(declarative)腳本 •所有部署環境yaml皆存放至Git repostiroy來進行觸發 •需確保環境與Git上的腳本為一致 4 GitOps優點 •可以經由git commit history來紀錄環境從 部署至今所有狀態 5 你有遇到過 •一個App deployment yaml檔該如何部署 出多套環境給不同情境(e.g. dev, staging, testing, pre-prod, prod)嗎? •如果各個環境有需要設定不同的參數呢? overlay/development | kubectl apply -f - 20 部署出dev deployment and service env 21 Argo CD 22 •A declarative, GitOps continuous delivery tool for Kubernetes 用ArgoCD 搭配kustomize來部署環境ㄌ 23 歡迎大家參考 III DevOps 更多詳細教學影音,請觀看我們的0 码力 | 24 页 | 696.06 KB | 1 年前3
Kubernetes平台比較:Red Hat
OpenShift、SUSE Rancher及
Canonical Kubernetes率、加強安全性、導入自動化及加速創新;因此Gartner預測將有75%的全球組 織,在2022年之前於正式作業執行容器化應用程式,而這樣的數據並不會讓人 感到驚訝。1 Kubernetes已經成為管理容器化工作負載和服務的頂尖開放原始碼平台,不過 Kubernetes生態系統既龐大又複雜,不但有許多不同版本的Kubernetes可供選 擇,此外也難以瞭解哪種版本最適合組織的特定需求。 本白皮書 Kubernetes、Red Hat Openshift及SUSE Rancher都已獲得CNCF認證。 2. 生命週期作業 開始踏上Kubernetes的旅程時,如果沒有思考要如何長期維護叢集,很容易就會 在開發和部署期間遭遇困難。許多以Kubernetes為中心的解決方案,雖然處理了 Kubernetes生命週期的初期階段,也就是第0天和第1天,但真正的挑戰要到第2 天才開始。 就第2天作業而言,Canonical 生命週期自動化。不過OpenShift運算子大多設計為隔離作業,而Canonical Kubernetes運算子則可共同組合,提供高度複雜的應用程式及服務。Canonical Kubernetes是以Juju部署,設計時將運算子列入考量,因此能夠更輕鬆解決維護和 升級等長期挑戰。 Rancher支援上游運算子,但無法在開箱後立即提供與Canonical Kubernetes或 OpenShift相同程度的生命週期自動化。0 码力 | 10 页 | 1.26 MB | 1 年前3
可觀測性 (Observability)
在 Kubernetes Day2
Operation的考量與實踐Kubernetes Day 2 • 速度和敏捷性的顯著提高,從每月部 署轉變為每日部署。 • 但是應用程序的生命週期不會在部署 時結束。任何應用程序最長的生命週 期階段是需要對其進行監控、升級和 保護的生產階段。 • Kubernetes Day 2 Operation 對於 Kubernetes 的持續成功至關重要, 但在急於部署時可能會被忽略。 7 Click to edit Master title r n e t e s 的 挑 戰 8 Click to edit Master title style 9 Kubernetes Day2 Ops 要作那些事? • 集群標準化和生命週期管理 • 安全訪問和環境隔離 • 維運可觀察性和流程透通性 • 治理與合規 • 持續第三方元件整合和維護 9 Ref. Use Platform Engineering to Implement 運營團隊需要能夠通過一個統一的儀 表板在一個地方可視化整個系統。 • Complete separation of concerns • 應用程序開發人員應該能夠盡可能地 自助服務,依靠一小群平台工程師來 管理底層操作系統。 • Centralized policy controls • 運營團隊需要一種集中控制集群和工 作負載策略的方法,以確保根據組織 圍繞安全性、合規性和其他最佳實踐 的策略配置0 码力 | 30 页 | 3.01 MB | 1 年前3
多雲一體就是現在:
GOOGLE CLOUD 的
KUBERNETES
混合雲戰略客製化高擴展性硬體設計 Live migration背景更新 全球機房備援設計 台灣區已經備有三個容錯區域 高效能代管式服務 涵蓋Web/App/DB皆有多 樣化代管服務可以組合出 最適架構 自動化部署 與開放平台以及開發環境 整合,加速應用上線 Google Cloud Taiwan 優勢 Google Infrastructure event driven functions web #全自動擴展+強大的負載平衡 #整合能同步擴展的NoSQL DB Kubernetes ● Kubernetes 是用於自動部署,擴展和管理容器化應用 程序的開源系統 ○ 根據資源需求和其他約束自動放置容器 ○ 自我修復,重新啟動失敗的容器 ○ 橫向縮放,自動調整應用程序副本數 ○ 自動部署和回滾,逐漸部署對應用程序或其配置的更改, 在出現 問題時恢復更改 Google Kubernetes Engine Engine ● Google Kubernetes Engine GKE ○ 在 Google Cloud 提供技術的 Kubernetes 上部署、管理容器化應用程式及調整資源 為何 Google GKE 是佈署 K8S 的首選 全球佈署 業界最多的佈 署地區選擇 多重版本 支援最多的 GKE發佈版本 ,自動升級 高可用性 支援跨資料中 心自動配置叢 集 網路安全 毋須額外套件 過濾容器到容0 码力 | 32 页 | 2.77 MB | 1 年前3
Kubernetes 入門Google 嚴格保密十幾年的秘密武器——Borg 的開源 專案版本。Borg 是 Google 久負盛名的一個內部使用的大規模叢集管理系統,它基 於容器技術,目的是實現資源管理的自動化,以及跨多個資料中心的資源利用率最 大化。十幾年來,Google 一直透過 Borg 系統管理著數量龐大的叢集式應用系統。 由於 Google 員工都簽署了保密協議,即便離職也不能洩露 Borg 的內部設計,所 以外界一直無法瞭解它的相關資訊。直到 一經開源就一鳴驚人,並迅速席捲了容器技術領域。 1-9 1.3 從一個不簡單的 Hello World 範例說起 瀏覽器訪問 讀 寫 虛擬機 Kubernetes 服務 圖 1.3 Kubernetes 部署架構圖 1.3.1 建立 redis-master Pod 及服務 我們可以先定義 Service,然後再定義一個 RC 來建立和控制相對應的 Pod,或者先 定義 RC 來建立 Pod,然後定義與其關聯的 小結 上述這些元件是 Kubernetes 系統的核心元件,它們共同構成 Kubernetes 系統的框 架和運算模型。透過對它們進行靈活組合,使用者就可快速、方便地對容器叢集進 行配置、建置和管理。 除了以上核心元件,在 Kubernetes 系統中還有許多可供配置的資源物件,例如 LimitRange、ResourceQuota。另外,一些系統內部使用的物件 Binding、Event0 码力 | 12 页 | 2.00 MB | 1 年前3
Comprehensive Rust(繁体中文). . 94 V 第 3 天:上午 96 18 歡迎參加第 3 天課程 97 19 記憶體管理 98 19.1 檢查程式記憶體 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 19.2 自動記憶體管理 . . . . . . . . . . . . . . . . . . . . . . . . . 192 34.1.4 AIDL 伺服器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193 34.1.5 部署 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194 34.1.6 AIDL 用戶端 . . . minutes 標準函式庫 1 hour and 40 minutes • 第 3 天上午 (2 小時 20 分鐘,含休息) Segment Duration 歡迎 3 minutes 記憶體管理 1 hour 智慧指標 55 minutes • 第 3 天下午 (2 小時 10 分鐘,含休息) 13 Segment Duration 借用 50 minutes 生命週期 1 hour0 码力 | 358 页 | 1.41 MB | 11 月前3
Hello 算法 1.2.0 繁体中文 C# 版訪問記憶體中的資料。 圖 3‑2 記憶體條、記憶體空間、記憶體位址 Tip 值得說明的是,將記憶體比作 Excel 表格是一個簡化的類比,實際記憶體的工作機制比較複雜,涉及 位址空間、記憶體管理、快取機制、虛擬記憶體和物理記憶體等概念。 記憶體是所有程式的共享資源,當某塊記憶體被某個程式佔用時,則通常無法被其他程式同時使用了。因此 在資料結構與演算法的設計中,記憶體資源是一個重要的考慮 啟新的網頁,瀏覽器就會對上一個網頁執 行入堆疊,這樣我們就可以通過後退操作回到上一個網頁。後退操作實際上是在執行出堆疊。如果要同 時支持後退和前進,那麼需要兩個堆疊來配合實現。 ‧ 程式記憶體管理。每次呼叫函式時,系統都會在堆疊頂新增一個堆疊幀,用於記錄函式的上下文資訊。 在遞迴函式中,向下遞推階段會不斷執行入堆疊操作,而向上回溯階段則會不斷執行出堆疊操作。 5.2 佇列 佇列(que 中彈出最近的操作,並將其壓入堆疊 B 。 3. 當用戶執行“反撤銷”時,從堆疊 B 中彈出最近的操作,並將其壓入堆疊 A 。 113 第 6 章 雜湊表 Abstract 在計算機世界中,雜湊表如同一位聰慧的圖書管理員。 他知道如何計算索書號,從而可以快速找到目標圖書。 第 6 章 雜湊表 www.hello‑algo.com 114 6.1 雜湊表 雜湊表(hash table),又稱散列表,它透過建立鍵0 码力 | 379 页 | 18.79 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Dart 版訪問記憶體中的資料。 圖 3‑2 記憶體條、記憶體空間、記憶體位址 Tip 值得說明的是,將記憶體比作 Excel 表格是一個簡化的類比,實際記憶體的工作機制比較複雜,涉及 位址空間、記憶體管理、快取機制、虛擬記憶體和物理記憶體等概念。 記憶體是所有程式的共享資源,當某塊記憶體被某個程式佔用時,則通常無法被其他程式同時使用了。因此 在資料結構與演算法的設計中,記憶體資源是一個重要的考慮 啟新的網頁,瀏覽器就會對上一個網頁執 行入堆疊,這樣我們就可以通過後退操作回到上一個網頁。後退操作實際上是在執行出堆疊。如果要同 時支持後退和前進,那麼需要兩個堆疊來配合實現。 ‧ 程式記憶體管理。每次呼叫函式時,系統都會在堆疊頂新增一個堆疊幀,用於記錄函式的上下文資訊。 在遞迴函式中,向下遞推階段會不斷執行入堆疊操作,而向上回溯階段則會不斷執行出堆疊操作。 5.2 佇列 佇列(que 中彈出最近的操作,並將其壓入堆疊 B 。 3. 當用戶執行“反撤銷”時,從堆疊 B 中彈出最近的操作,並將其壓入堆疊 A 。 113 第 6 章 雜湊表 Abstract 在計算機世界中,雜湊表如同一位聰慧的圖書管理員。 他知道如何計算索書號,從而可以快速找到目標圖書。 第 6 章 雜湊表 www.hello‑algo.com 114 6.1 雜湊表 雜湊表(hash table),又稱散列表,它透過建立鍵0 码力 | 378 页 | 18.77 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Go 版訪問記憶體中的資料。 圖 3‑2 記憶體條、記憶體空間、記憶體位址 Tip 值得說明的是,將記憶體比作 Excel 表格是一個簡化的類比,實際記憶體的工作機制比較複雜,涉及 位址空間、記憶體管理、快取機制、虛擬記憶體和物理記憶體等概念。 記憶體是所有程式的共享資源,當某塊記憶體被某個程式佔用時,則通常無法被其他程式同時使用了。因此 在資料結構與演算法的設計中,記憶體資源是一個重要的考慮 啟新的網頁,瀏覽器就會對上一個網頁執 行入堆疊,這樣我們就可以通過後退操作回到上一個網頁。後退操作實際上是在執行出堆疊。如果要同 時支持後退和前進,那麼需要兩個堆疊來配合實現。 ‧ 程式記憶體管理。每次呼叫函式時,系統都會在堆疊頂新增一個堆疊幀,用於記錄函式的上下文資訊。 在遞迴函式中,向下遞推階段會不斷執行入堆疊操作,而向上回溯階段則會不斷執行出堆疊操作。 5.2 佇列 佇列(que 中彈出最近的操作,並將其壓入堆疊 B 。 3. 當用戶執行“反撤銷”時,從堆疊 B 中彈出最近的操作,並將其壓入堆疊 A 。 112 第 6 章 雜湊表 Abstract 在計算機世界中,雜湊表如同一位聰慧的圖書管理員。 他知道如何計算索書號,從而可以快速找到目標圖書。 第 6 章 雜湊表 www.hello‑algo.com 113 6.1 雜湊表 雜湊表(hash table),又稱散列表,它透過建立鍵0 码力 | 385 页 | 18.80 MB | 10 月前3
Hello 算法 1.2.0 繁体中文 Kotlin 版訪問記憶體中的資料。 圖 3‑2 記憶體條、記憶體空間、記憶體位址 Tip 值得說明的是,將記憶體比作 Excel 表格是一個簡化的類比,實際記憶體的工作機制比較複雜,涉及 位址空間、記憶體管理、快取機制、虛擬記憶體和物理記憶體等概念。 記憶體是所有程式的共享資源,當某塊記憶體被某個程式佔用時,則通常無法被其他程式同時使用了。因此 在資料結構與演算法的設計中,記憶體資源是一個重要的考慮 啟新的網頁,瀏覽器就會對上一個網頁執 行入堆疊,這樣我們就可以通過後退操作回到上一個網頁。後退操作實際上是在執行出堆疊。如果要同 時支持後退和前進,那麼需要兩個堆疊來配合實現。 ‧ 程式記憶體管理。每次呼叫函式時,系統都會在堆疊頂新增一個堆疊幀,用於記錄函式的上下文資訊。 在遞迴函式中,向下遞推階段會不斷執行入堆疊操作,而向上回溯階段則會不斷執行出堆疊操作。 第 5 章 堆疊與佇列 www 中彈出最近的操作,並將其壓入堆疊 B 。 3. 當用戶執行“反撤銷”時,從堆疊 B 中彈出最近的操作,並將其壓入堆疊 A 。 112 第 6 章 雜湊表 Abstract 在計算機世界中,雜湊表如同一位聰慧的圖書管理員。 他知道如何計算索書號,從而可以快速找到目標圖書。 第 6 章 雜湊表 www.hello‑algo.com 113 6.1 雜湊表 雜湊表(hash table),又稱散列表,它透過建立鍵0 码力 | 382 页 | 18.79 MB | 10 月前3
共 35 条
- 1
- 2
- 3
- 4













