一、培訓背景
隨著信息技術的飛速發展,虛擬化技術得到了廣泛的發展,從主機虛擬化再到后來的虛擬機虛擬化,再到現在以Docker+K8s為代表的容器技術,虛擬化技術不斷的在創新和突破。Docker+K8s技術目前在開發與運維中使用的越來越多,越來越廣泛,掌握Docker+K8s容器技術已成了求職加薪必備技能。本套課程從Docker的技術背景介紹,再到Docker+K8s技術的高級應用實戰,全方位的介紹了Docker技術以及虛擬化云平臺技術Kubernetes的體系結構、特性以及部署集成等相關知識。讓學員全面系統的掌握Docker+K8s,并且具備部署企業私有虛擬化云平臺環境的能力。本課程主要針對系統的研發人員,系統架構師,系統運維人員而設置。
二、課程目標
徹底理解Docker的體系架構與核心概念
Kubernetes(K8s)的架構與應用
掌握基于Docker和Kubernetes的企業應用架構
掌握基于虛擬化容器Docker與Kubernetes的體系架構、管理、部署,以及相應組件的原理和應用場景。
讓學員具備部署基于企業虛擬化云平臺環境的能力。
三、培訓方式/工具及方法
PPT+教材+參考資料,理論講解
提供配套的實驗環境
場景+案例+模擬環境,動手實踐
手把手解決問題+解決問題經驗分享
四、課程大綱
Docker虛擬化容器引擎 第一天 | ||||||
章 | 節 | 學習目標 | 練習案例 | |||
第一章 什么是Docker及其體系架構 |
1、什么是Docker? 2、Docker的體系架構與基本概念 3、準備實驗環境 4、安裝Docker |
掌握Docker的架構與核心概念 | 安裝Docker | |||
第二章 Docker的鏡像 |
1、使用和訪問Docker官方公有的鏡像倉庫 2、配置和使用阿里云Docker鏡像加速倉庫 3、管理Docker的鏡像和容器 4、構建Docker鏡像 ?、?使用docker commit命令構建鏡像 ② 使用dockerfile文件構建鏡像 5、Docker File |
什么是Docker的鏡像? 如何創建Docker的鏡像? |
使用docker commit和docker file創建鏡像 | |||
第三章 Docker的容器 |
1、容器的基本操作 2、容器的日志 3、管理容器的資源 ?、?基礎知識:Linux control groups ?、?Docker對CPU的使用 ③ Docker對內存的使用 ?、?Docker對I/O的使用 |
什么是Docker的容器? 如何管理容器使用的資源? |
容器的基本操作和資源的使用 | |||
第四章 Docker網絡和容器的通信 |
1、Docker網絡通信的基本原理 2、Docker的網絡模式 3、容器間的通信 4、容器訪問控制 |
Docker的網絡模式與容器的通信 | 使用不同的網絡模式創建Docker的容器 | |||
第五章 Docker的數據管理 |
1、數據卷 2、數據卷容器 3、利用數據卷容器來遷移數據 |
數據卷與Docker數據的持久化 | 創建Docker的數據卷 | |||
第六章 搭建Harbor私有倉庫 |
1、什么是Harbor? 2、安裝Docker和Docker Compose 3、解壓并配置harbor 4、安裝harbor 5、訪問harbor 6、通過終端訪問harbor |
什么是私有的鏡像倉庫?及其作業 | 搭建Harbor私有鏡像倉庫 | |||
基于K8s的虛擬化容器技術(基礎)第二天 | ||||||
章 | 節 | 練習 | 學習目標 | |||
第一章:K8s簡介體系架構 | 什么是Kubernetes(K8s)? Kubernetes的體系架構 Kubernetes的組件 Kubernetes的相關術語 |
K8s的體系機構與基本術語 | ||||
第二章:K8s集群的部署 | 準備工作 使用kubeadmin部署K8s集群 部署DashBoard UI 使用yum方式部署K8s集群 |
部署K8s環境 | ||||
第三章:使用Kubectl | Kubectl常用命令及使用技巧 在K8s中部署應用 |
使用kubectl命令行工具操作K8s | 什么是kubectl及其使用 | |||
第四章:Pod對象的管理 | Pod介紹與容器分類 鏡像拉取策略 資源限制 重啟策略 Pod健康檢查(Probe探針) Pod調度策略 故障排查 |
使用pod在K8s中部署應用 | Pod的基本概念和部署 | |||
第五章:控制器Controller | Deployment控制器 Daemonset控制器 Job控制器 CronJob控制器 StatefulSet控制器 |
練習使用不同的K8s的控制器 | 什么是控制器,及控制器的作用。 | |||
第六章:服務Service | Service介紹與定義 Service三種類型 Service 代理模式 集群內部DNS服務(CoreDNS) 通過Ingress訪問應用簡介 |
通過Service訪問Pod中的應用程序 | 什么是Service,及Service的作用。 | |||
基于K8s的虛擬化容器技術(進階)第三天 | ||||||
章 | 節 | 練習 | 學習目標 | |||
第一章:持久化存儲 | K8s與Docker的持久化存儲 數據卷的類型 持久卷和持久卷聲明 PV動態供給 |
持久卷的聲明和持久卷的使用 | 理解并掌握K8s的持久化機制,及其與Docker的區別。 | |||
第二章:管理應用程序的配置 | Secret ConfigMap ConfigMap的動態更新 |
掌握如何配置K8s的參數設置 | ||||
第三章:K8s平臺中日志收集 | 收集哪些日志 日志收集方案 安裝ELK 收集k8s組件日志 收集nginx訪問日志 實戰案例:采集tomcat pod日志 |
部署ELK環境,采集K8s日志 | 理解并掌握K8s的日志收集方案與部署 | |||
第四章: 基于K8S構建企業CI/CD平臺 |
Jenkins與Kubernetes的持續集成與持續部署 基于Kubernetes的Jenkins集群架構 Jenkins與Kubernetes集成 應用部署的升級 應用部署的金絲雀升級 應用部署藍綠升級 應用部署的滾動升級 使用Helm簡化Kubernetes應用的部署和管理 什么是Helm? 【實戰】部署Helm 使用Helm管理Kubernetes 企業生產環境的項目構建 基于K8s構建微服務應用 基于K8s的Devops平臺構建 |
在Kubernetes中部署Jenkins Jenkins在K8s中持續部署 |
理解并掌握什么是CI/CD 如何集成Jenkins和K8s |
|||
第五章:Kubernetes的監控與故障診斷 | Kubernetes監控指標與監控方案 監控系統部署 Kubernetes的故障診斷與解決方案 Pods 模塊檢查 Service模塊檢查 |
部署K8s監控系統 | K8s的監控指標與故障診斷 |
五、培訓師資
張老師 曾工作于北京聯通研究院,摩托羅拉中國公司,美團;目前就職于一家隸屬于清華大學的上市公司,主要公司業務是服務國家安全和國外安全項目,在公司擔任大數據架構師及區塊鏈技術負責人,主要負責中臺的技術、數據。擁有16年IT相關工作經驗,10余年的培訓經驗,具備豐富的企業應用軟件開發經驗、深厚的軟件架構設計理論基礎及實踐能力,尤其擅長區塊鏈、人工智能以及大數據相關技術。此外,張老師現任工信部大數據實驗室研究員;工信部特約講師;工信部大數據、人工智能培訓體系建設和試題的開發專家團成員;張老師精通大型分布式互聯網應用架構設計與技術開發。對于大規模分布式架構、微服務架構、云計算與容器化技術、開發與運維一體化、應用系統安全與和架構設計、海量數量處理、大數據等方向特別有研究,尤其是偏后端的對于高并發系統上有豐富的架構和實施經驗。
江老師 K8s運維架構師,資深Linux集群架構實戰專家,從事DevOps相關工作近10年,在自動化運維、容器化及云計算方面積累了豐富的實戰經驗,RHCA/VCAP-DVA/VCAP-NV/CKA認證,Linux、VMware高級技術專業人士,紅帽(RedHat)RHCA認證架構師并且以5門滿分通過,(證書編號:110-421-971)。
李老師 K8s中國區官方認證導師,Linux集群架構師,前奇虎360高級DevOps工程師。 從事DevOps相關工作12年了,維護過近千臺服務器,曾主導從0到1實現億級PV中大型互聯網架構,K8s容器平臺建設及微服務容器化遷移等多個項目。在自動化運維、容器化及云計算方面積累了豐富的實戰經驗。