Contents
雲本地:微服務,kubernetes,服務網格,CI/CD
多元雲本地:微服務,容器,kubernetes,服務網格,grpc,helm,redis,redis,kafka,ci/cd,gitops,elk ..
在本課程中,我們將探索雲本地架構的世界,並學習如何使用微服務架構,Kubernetes部署,通信,支持服務,CI/CD管道和標準以及最佳監控實踐來設計和構建雲本地應用程序。雲本地是一個廣泛的話題,需要仔細的組織才能完全理解其所有組件。這就是為什麼我們將遵循雲本地測試圖,該測試圖從容器化和編排開始,然後繼續以CI/CD,服務網格,可擴展性和分佈式數據庫。
在整個課程中,我們將專注於雲本地支柱,了解雲原生體系結構並探索各種雲本地工具。我們將使用這些工具投影架構,並在Kubernetes群集現實世界中開發20多個實用項目。
雲 – 本地支柱地圖 – 課程圖
這是本課程中涵蓋的雲原始支柱的概述:
- 微服務
- 容器
- 管弦樂隊
- 通信(服務網格)
- 支持服務(分佈式數據庫K8S,CACHES,消息經紀人)
- 可伸縮性(HPA,KEDA)
- DevOps CI/CD IAC GITOPS
- 監視和可觀察性
在課程中,我們將遵循這些雲原始支柱來設計和實施架構。讓我們仔細看看每個支柱:
微服務
我們將首先了解微服務體系結構的基礎知識,其優點以及如何設計和開發樣本微服務應用程序。通過實際練習,我們將探索,投射和開發樣本微服務應用程序。
容器
然後,我們將學習如何使用天然雲工具(例如Docker和Containerd)包含微服務。這將使我們能夠將微服務包裝在容器中,以方便部署和可擴展性。
樂團
為了管理我們在容器中的應用程序,我們將潛入諸如Kubernetes和Docker Swarm之類的容器樂團。我們將在這些平台上獲得實踐經驗,以有效地協調我們的容器。
通信
在雲本地環境中,Kubernetes Pod之間的通信至關重要。我們將探索像這樣的服務網格,以促進豆莢之間的通信。通過使用ISTIO,我們可以提高微服務體系結構的可靠性和安全性。
支持服務
在本節中,我們將為我們的體系結構實施支持服務。我們將在三個子類別中檢查支持服務:數據庫,分佈式緩存和消息傳遞經紀人。您將學習如何將這些服務部署和集成到Kubernetes群集中。
可伸縮性
為了確保我們的應用程序能夠滿足不斷增長的需求,我們將探討Kubernetes上的自動尺寸技術。我們將使用水平POD Autoscaler(HPA)和Kubernetes事件驅動的自動升級(KEDA)實現自動尺寸。
DevOps CI/CD
在雲本地環境中,實施CI/CD DevOps和管道原理至關重要。我們將探索本機雲工具,例如GitHub Action,Terraform和ArgoCD,以實現DevOps實踐並自動化我們的部署過程。
監視
監視和可觀察性對於維持雲本地應用的健康和性能至關重要。我們將在我們的Kubernetes群集中實施監測工具,例如Prometheus,Grafana和Stack Elk,以確保最佳的可觀察性實踐。
在整個課程中,我們不僅將探索本機雲工具,而且還將涉足AWS Lambda和AWS Fargate等雲服務器服務。我們將探討如何將這些服務以及其他支持服務(如Amazon DynamoDB和Azure CosmosDB)集成到微服務架構中。
學習形式 – 課程流
我們的學習方法將遵循以下流程:學習 – >探索 – >設計 – >實際的。我們將了解雲原生體系結構並訪問云原生工具,探索和理解其特徵。然後,我們將使用這些工具投影架構,並最終實踐實驗室以獲得實踐經驗。
實用項目
為了增強您的理解並提供實踐經驗,我們為每個雲原生支柱準備了一系列實用實驗室。以下是您將在其中工作的實用項目的一些示例:
- 與Crud開發一個寧靜的微服務
- 包含docker的微服務.net
- 在Kubernetes實施微服務
- 用舵圖在Kubernetes上實施微服務
- 使用服務網格和特使在Kubernetes實施微服務
- 用Minikube在一個Kubernetes群集中實施蟑螂
- 用Minikube在Kubernetes群集中實現Redis雲原始緩存
- 用Minikube在Kubernetes中實施Kafka雲原始消息經紀
- 用Minikube的豆莢(VPA,HPA,KEDA)的豆莢自動尺寸
- 在Amazon Eks Fargate中實施微服務
- 配置實例AWS EC2與Terraform IAC
-Github操作CI/CD以創建並將Docker圖像發送到Dockerhub
-Prometheus和Grafana的Kubernetes監視此外,我們將探索無AWS無服務器實驗室,以展示雲本地體系結構如何在完全服務器服務中工作,尤其是AWS服務。您將有機會在AWS Allunner部署集裝箱產品服務以及使用AWS Lambda,API Gateway和DynamoDB等靜止的微服務。
這些實踐實驗室將為您提供實踐經驗,以應用您在整個課程中學到的概念,工具和最佳實踐。
課程目標
本課程的主要目的是使您成為軟件開發人員/體系結構建議雲本地的決策者。本課程專為有興趣學習雲本地技術以及如何在現實世界中應用它們的軟件開發人員和建築師設計。
項目與發展實踐活動
在整個課程中,您將有機會在雲本地微服務設計的模式和原理中運用最佳實踐。您將使用各種本機雲工具探索和練習,了解何時何地使用它們。此外,本課程將為您準備軟件架構訪談和系統設計訪談考試。
在本課程結束時,您將獲得現實世界的經驗,並對雲本地生態系統有深入的了解。您將準備使用微服務,Kubernetes,Service網格,CI/CD管道等設計,構建和部署自己的雲本地應用程序。
您將學到什麼
參加本課程時,您將學習以下內容:
- 雲本地支柱:微服務,容器,管弦樂隊,通信,支持服務,可伸縮性,DevOps CI/CD,監視
- 使用ASPNET Web最小API設計和開發微服務體系結構。
- 使用天然雲工具(例如Docker和Containerd)包含微服務。
- 使用Kubernetes,Docker Swarm等容器樂團進行編排容器。
- 在Kubernetes實施和管理微服務。
- 發現用於微服務編排的Kubernetes的服務網格和本機解決方案。
- 使用ISTIO等服務網格之間的Kubernetes Pod進行通信。
- 實施雲本地支持服務:數據庫,分佈式緩存,消息傳遞經紀人。
- 使用水平POD Autoscaler(HPA)和Kubernetes事件驅動驅動的Autoscaling(KEDA)自動在Kubernetes上進行自動縮小應用程序。
- 實施devOps,CI/CD管道,IAC,GITOPS,使用雲原始工具,例如GitHub Action,Terraform,argoCD。
- 在Kubernetes群集中使用Prometheus,Grafana,Elk Stack監測和可觀察性。
- 學習高級kubernetes和服務器模式。
- 使用Minikube將US Redis和Kafka實施在Kubernetes群集中。
- 使用景觀雲的工具開發10多個實用實驗室。
- 使用AWS雲服務開發無服務器的體系結構。