云原生与容器化部署实战训练营
Mac Fan 查看讲师
百林哲咨询(北京)有限公司专家团队成员
现任某信息有限公司高级系统架构师,资深技术专家。从事软件研发工作近二十年,并且现在一直坚守在大型软件架构设计一线工作,尤其熟悉互联网架构与分析的特点,长期关注软件代码质量。
浏览:900次
详情 DETAILS

课程简介

近些年,随着技术的不断发展,市场变化越来越快,需求变更越来越频繁。为了能够跟上市场变化的脚步,在市场竞争中占得先机,越来越多的研发团队选择敏捷开发、快速迭代与互联网分布式架构,云原生的概念孕育而生。云原生=微服务+DevOps+持续交付+容器化,它通过微服务进行设计开发系统,通过DevOps进行持续交付,以容器化的形式进行分布式云端部署。

采用云原生架构以后,可以通过开发微服务,拆解复杂的单体系统;通过DevOps进行自动化运维,实现快速交付;通过K8s分布式云端平台,进行分布式云端部署,以实现互联网的高并发、高可用。但是,如何搭建这样一套DevOps自动化运维平台,如何将微服务系统部署在K8s云端平台,需要开发团队具备更多的服务端实操的能力。为了帮助开发团队解决这些方面的问题,切实地将DevOps与K8s云端平台搭建起来,真正有效地发挥出微服务的优势,我们特组织了此次课程。 

课程收益

1. 了解云原生(Cloud Native)的概念

2. 掌握分布式持续集成核心要点

3. 熟悉分布式容器管理工具Kubernetes

受众人群

1、系统架构师、高级程序员、资深开发人员

2、涉及到微服务技术转型的团队负责人、规划师、架构师

3、涉及到云端DevOps平台部署与交付的运维人员

 课程周期

212小时)

 课程大纲

主题

授课内容

一.云原生与容器化部署

云原生(Cloud Native)的概念

1. 面向互联网分布式系统运维的难点与痛点

2. 云原生=微服务+DevOps+持续交付+容器化bus

3. 云原生架构的核心思想与“12因素(12-Factors)”

4. 云原生的设计实现:Kubernetes、微服务、服务网格

构建分布式持续集成环境

1.什么是分布式持续集成

2.大前端+技术中台的组织形式与微服务架构

3.持续探索、持续集成、持续交付、按需发布的概念

云原生的自动化运维过程

1.持续集成工具Jenkins

2.单元测试与契约测试

3.运行容器:Docker

4.分布式集群管理框架:Kubernetes

二.容器技术与Docker实操

Docker的基本原理

1. 虚拟化技术 vs. 容器技术

2. 容器技术的标准化概念

Docker运维实战

1.Docker容器管理与实操

2.Docker镜像管理与实操

3.使用Dockerfile构建镜像

   演练:微服务如何打包制作Docker镜像

4.Docker仓库管理与实操

   演练:如何搭建私有镜像仓库Docker Registry

5.实战演练

   用Docker部署和运维rabbitMQ

   用Docker部署和运维mysql

基于容器的微服务自动化运维

1.微服务运维的难点与痛点

2.基于Maven的Docker构建过程

3.使用Jenkins编写定时任务

演练:基于容器的微服务持续集成过程

三.分布式云部署与Kubernetes实操

分布式容器管理工具Kubernetes

1.Kubernetes的分布式管理运行原理

2.Kubernetes的基本组件及其应用场景:

无状态应用(Deployment)、有状态应用(StatefulSet)、批处理任务(Job)、后台支撑型(DaemonSet)

3.Kubernetes的虚拟网络原理:Node IP、Pod IP、Cluster IP

4.Kubernetes的安装部署与弹性扩容

基于Kubernetes的运维实操

1.演练:微服务在Kubernetes上的高可用云端部署

基于yaml文件的微服务部署与弹性扩展过程

Node, Pod, Deployment, Service等基础组件及其实操

Label标签、Selector选择器及其实操

K8s的访问类型ClusterIP、NodePort、LoadBalancer及Ingress

2.演练:Redis高可用集群在Kubernetes的部署

Kubernetes的三种IP及其在项目中的运用

有状态应用的部署及无头服务的应用

3.演练:基于K8s搭建三种类型的MySQL集群数据库

K8s的存储类型:存储卷、持久化存储卷与StorageClass

4.演练:基于K8s搭建Hadoop大数据平台

使用Dockerfile制作镜像并上传镜像仓库

K8s的配置信息管理:ConfigMap、Secret及其应用

5.演练:集群监控工具Prometheus的部署过程

K8s的权限管理:Account、Role、RoleBinding及其应用

集群调度:亲和性(Affinity)、污点(taints)与容忍(tolerations)

6.演练:搭建Git+Jenkins+docker+k8s的自动化运维平台

1)从Git服务器上下载代码、编译、测试、打包

2)静态代码规范检查与形成测试报告

3)制作Docker镜像并上传本地私服

4)执行脚本进行灰度发布与K8s分布式云端部署

四.微服务开发与云端部署

用实际项目演练微服务开发的整个过程

1. 演练:从单体应用到微服务的设计转型过程

2. 微服务开发的组织形式:父项目与基础平台

3. 微服务开发的组织形式:多环境配置

4. 前端、聚合层、原子服务层的微服务设计

5. 服务网关的设计:用户权鉴与智能路由

微服务开发高阶:

1. 在分布式环境中高可靠地部署Nacos集群

2. 演练:如何实现跨语言的微服务调用

3. 演练:如何实现高并发下的优雅降级

4. 微服务间调用的监控与调优

微服务的技术中台建设:

1. 微服务技术中台应具备的要素

2. 配置中心Nacos

3. 断路监控Spring Cloud Turbine

4. 链路监控Skywalking

5. 消息中间件kafka, rocketmq

6. 分布式缓存redis

7. 监控平台prometheus+EFK

五.云平台的系统监控与日志采集

云平台安全可靠运行的重要意义

1.网站可用性的评价指标与系统监控

2.系统监控的具体内容

3.系统监控与日志采集的原理与系统架构

4.国内主流系统监控与日志采集软件介绍

Prometheus系统监控与运维

1.搭建系统监控组件Prometheus实操

2.搭建监控数据展现组件Grafana实操

3.设定rules进行系统监控告警实操

4.设定pushGateway自定义监控与告警实操

EFK日志采集与故障分析

1.日志采集与故障分析的重要意义

2.搭建ElasticSearch+Flunted+Kibana日志采集实操

3.使用Kibana系统监控组件分析与监控系统

4.在Kibana中进行故障分析与运行监控


企业服务热线:400-106-2080
电话:18519192882
投诉建议邮箱:venus@bailinzhe.com
合作邮箱:service@bailinzhe.com
总部地址:
北京市-丰台区-汽车博物馆东路6号3号楼1单元902-B73(园区)
全国客户服务中心:
天津市-南开区-桂苑路15号鑫茂集团鑫茂军民园1号楼A座802-803
公众号
百林哲咨询(北京)有限公司 京ICP备2022035414号-1