Go-调度器-理解-深入剖析云原生基础架构-容器以及Linux (调度器模式)
在容器中部署的 Go 应用程序通常需要设置 CPU 限制,以确保容器不会耗尽主机上的所有 CPU。但是,由于 Go 运行时不知道在容器上设置的 CPU 限制,因此它可能会使用所有可用的 CPU,从而导致应用程序延迟很高。本文将探讨这个问题并提供解决方法。
Go 废品收集器的原理
为了理解问题,我们首先需要了解 Go 废品收集器 (GC) 的运作方式。Go 运行时在执行程序的同时执行废品收集,这意味着 GC 会与程序同时运行。但是,在 GC 过程中有两个点需要 Go 运行时暂停所有 Goroutine,以确保数据完整性。
在 GC 标记阶段之前,运行时将暂停所有 Goroutine,启用写屏障 (write barrier),确保在此之后创建的任何对象都不会被 GC。这个阶段称为扫描终止 (Sweep Termination)。在标记阶段完成后,还有一个 STW (stop the world) 阶段,称为标记终止 (Mark Termination),并且也删除了写屏障。整个过程通常需要几十微秒。
问题
当 Go 运行时启动时,它会为每个 CPU 内核创建一个操作系统线程。这意味着如果有一台 16 核的机器,Go 运行时将创建 16 个操作系统线程,而不管任何 CGroup CPU 限制。然后 Go 运行时使用这些操作系统线程来调度程序。
问题在于,Go 运行时不知道 CGroup 的 CPU 限制,而是在所有 16 个操作系统线程上调度 Goroutine,这意味着 Go 运行时预计每秒能够使用 16 秒的 CPU 时间。由于 Go 运行时需要在等待 Linux 调度器调度的线程上停止 Goroutine,因此一旦容器使用超过了 CPU 配额,将面临长时间的 STW 时间,因为线程将不再被调度。
解决方案
Go 通过设置
GOMAXPROCS
环境变量来限制运行时将创建的 CPU 线程数量。通过将此变量设置为小于容器分配的 CPU 核心的值,我们可以确保 Go 运行时不会超出分配的 CPU 限制。
例如,如果容器分配了 4 个 CPU 核心,我们可以使用以下命令来启动应用程序:
docker run --cpus=4 -e GOMAXPROCS=4 -p 8080:8080 $(kobuild -L main.go)
通过设置
GOMAXPROCS
,我们可以确保 Go 运行时不会在所有 16 个操作系统线程上调度 Goroutine,从而减少了长时间 STW 的风险。
结论
通过理解 Go 废品收集器的原理以及 Go 运行时和 Linux 调度器之间的交互,我们能够优化容器中 Go 应用程序的 CPU 使用。通过设置
GOMAXPROCS
环境变量,我们可以限制 Go 运行时将创建的 CPU 线程数量,从而确保应用程序不会超出分配的 CPU 限制,并避免长时间 STW。
云原生周报 | 2021下半年CNCF开源项目发展总结;Cilium 1.11发布
1. 2021年年底 CNCF 开源项目和发展速度概况
摘要: 本文总结了2021年下半年 CNCF 开源项目的发展速度,其中 OpenTelemetry 在 CNCF 中拥有第二大贡献社区(仅次于 Kubernetes),它表明对现代可观测性工具和协作的兴趣仍然很重要;如果把 Argo 和 Flux 项目的速度结合起来,那么 GitOps 生态系统的速度在 CNCF 中是最高的;Envoy 继续拥有强大且不断增长的社区,并已成为整个服务网格生态系统中使用最广泛的数据平面之一。
2. BFE Server v1.4.0 和控制面组件 v.0.0.2 发布
摘要: BFE Server 更新包括修复了配合Go 1.17使用时出现的问题;在部分实现中,使用 RWMutex 代替 Mutex,获得了部分性能上的收益;BFE 控制面包括 APIServer、Conf Agent、Dashboard 三个程序,本次均有更新。
1. Cilium 1.11 发布,带来内核级服务网格、拓扑感知路由
摘要: Cilium 是一个开源软件,为基于 Kubernetes 的 Linux 容器管理平台上部署的服务,透明地提供服务间的网络和 API 连接及安全。Cilium 1.11 版本新版本增加了对 OpenTelemetry 的支持,Kubernetes APIServer 策略匹配,增强负载均衡能力,基于拓扑感知将流量路由到最近的端点,或保持在同一个地区(Region)内等。
1. Facebook 流量路由最佳实践:从公网入口到内网业务的全路径 XDP/BPF 基础设施
摘要: 用户请求从公网到达 Facebook 的边界 L4LB 节点之后,往下会涉及到两个阶段(每个阶段都包括了 L4/L7)的流量转发:从 LB 节点负载均衡到特定主机;主机内将流量负载均衡到不同 Socket,以上两个阶段都涉及到流量的一致性路由问题。本文介绍这一过程中面临的挑战,以及我们如何基于最新的 BPF/XDP 特性来应对这些挑战.
2. Kubernetes 集群二进制无损升级实践
摘要: 本文从0到1的介绍 vivo 互联网团队支撑在线业务的集群如何在不影响原有业务正常运行的情况下从 v1.10 版本升级到 v1.17 版本。之所以升级到 v1.17 而不是更高的 v1.18 以上版本, 是因为在 v1.18 版本引入的代码变动会导致 extensions/v1beta1 等高级资源类型无法继续运行(这部分代码在 v1.18 版本删除)。
1. 根因解析 Kubernetes Pod 状态异常九大场景盘点
摘要: Kubernetes Pod 作为 Kubernetes 核心资源对象,不仅 Service、Controller、Workload 都是围绕它展开工作。作为最小调度单元的它,还担任着传统 IT 环境主机的职责,包含了调度,网络,存储,安全等能力。 正是因为 Pod 具有复杂的生命周期和依赖,绝大多数 Kubernetes 问题最终都会在 Pod 上表现出来。本文介绍了工作实践中会遇到的 9 种典型场景,以及如何使用 Kubernetes 监控来处理这些场景,快速定位发现问题。
2. 使用 eBPF 代替 iptables 优化服务网格数据面性能
摘要: 服务网格的 Sidecar 架构不可避免的会增加请求时延和资源占用,本文介绍通过使用 eBPF 代替 iptables 实现流量劫持,同时使用 sockmap 加速 Sidecar 代理和应用程序间的网络通信,在一定程度上降低了请求时延和资源开销
3. 让容器跑得更快:CPU Burst 技术实践
摘要: 以前人们在 CPU Bandwidth Controller 中修复了一些 BUG 导致的 CPU 限流问题,当前非预期限流是由于 100ms 级别 CPU 突发使用引起,并且提出 CPU Burst 技术允许一定的 CPU 突发使用,避免平均 CPU 利用率低于限制时的 CPU 限流。在云计算场景中,CPU Burst 技术的价值有:不提高 CPU 配置的前提下改善 CPU 资源服务质量;允许资源所有者不牺牲资源服务质量降低 CPU 资源配置,提升 CPU 资源利用率;降低资源成本(TCO,Total Cost of Ownership)。
4. 如何基于BFE做灰度发布
摘要: “灰度发布”是互联网业务研发所需的重要能力。BFE对于灰度发布的两种方式(基于流量特征的灰度发布、基于流量比例的灰度发布)都提供了支持。结合已经开源的BFE控制面组件,可以使用BFE Dashboard或BFE API完成灰度发布的相关配置。
黑马程序员Linux运维培训怎么样?
1、什么是运维工程师?
运维工程师,服务器与系统安全稳定的掌舵者!当一个产品(如Web网站、APP软件、网络游戏等)正式上线后,产品、开发、测试类的工作就正式结束了,接下来的维护和管理工作就会全部移交给运维工程师。
运维工程师的主要工作职责就是负责服务器的架构设计以及云计算平台管理,保障软件的稳定运行。没有开发以及测试类工作复杂且工作解决方案相对固定。更重要的是没有年龄以及学历的限制,随着工作年限和工作经验地增长,也会越老越吃香。
2、运维工程师工作场景
3、IT行业有哪些比较典型运维案例
当然不仅仅是淘宝、,其实你使用的每一个APP背后都有一个强大的运维团队在为其提供专业的技术支持。
运维工程师是一个产品必不可少的环节,也是一个产品成功与否的关键!
4、运维行业发展前景怎么样?
5、运维岗位发展方向有哪些?
6、运维工程师岗位薪资情况
1-2年薪资情况=> 8k ~20k
3-5年薪资情况=> 20k~ 35k
5年以上薪资情况=> 50 ~60万/年
7、黑马运维学科学员就业率和就业薪资怎么样?
运维学科2019全年所有班级就业率93.5%,平均薪资8.7k起,最高薪资25k* 14薪
三、运维课程
1、第一阶段:Linux运维基础功
运维基础:运维发展史、计算机概述、计算机组成、操作系统学完此阶段可掌握的核心能力:熟练掌握Linux操作系统的安装(CentOS7.6)、配置、基础命令、VIM编辑器、用户管理、权限管理、自有服务、进程检测与控制、阿里云平台管理、开源CMS项目上线部署实战。
Linux操作系统:Linux系统概述、虚拟机、CentOS7.6系统安装,Linux基础命令
Linux下文件管理(上):文件命名规则、目录管理、文件管理、文件复制与剪切、重命名、Linux文件打包与压缩、文件处理命令
Linux下文件管理(下):VIM编辑器介绍、VI与VIM的区别、VIM安装与配置、四种工作模式(命令模式,编辑模式,末行模式,可视化模式)、相关VIM指令、VIM扩展功能、VIM总结
Linux下用户管理:用户和组的相关概念、用户组管理、用户管理、用户密码设置、切换用户、Linux用户管理实战
Linux下权限管理:权限的基本概念、权限在生产环境中的作用、Linux权限类别(rwx)、Linux文件所有者类别(ugo)、普通权限设置(字母+数字)、文件属主与属组设置、高级权限、ACL权限控制、umask
Linux下自有服务+软件包管理:自由服务概述、systemctl管理服务命令、ntp时间同步服务、firewalld防火墙、crond计划任务、设备挂载与解挂、rpm包管理工具
Linux进程检测与控制:进程与程序的概念、进程管理命令(top命令,free命令,df命令,ps命令,netstat命令,kill命令与killall命令)、进程优先级设置
阿里云平台管理与开发CMS项目上线部署实战:云计算平台概述、阿里云平台注册、登录与管理、项目背景、LAMP环境概述、YUM指令、LAMP环境搭建、开源CMS项目上线部署实战
学完此阶段可解决的现实问题:能够根据企业实际项目需求实现服务器部署与架构。
学完此阶段可拥有的市场价值:熟练掌握之后,可以满足市场对初级运维工程师的需求,但是市场就业工资相对较低,还是建议继续学习就业班课程。
2、第二阶段:Linux系统服务篇
Linux高级指令:基础命令回顾、find命令之高级搜索、tree命令、scp文件上传与下载、计划任务crontab + tar实现定时备份、用户管理高级、文件权限管理高级
Linux下软件包管理:软件包管理任务背景、Linux下软件包概述、RPM包管理工具、YUM包管理工具、YUM源配置(公网YUM源,本地YUM源、自建YUM源仓库)、源码安装概述、源码安装三步走、源码安装实战
Linux远程管理服务SSH:SSH任务背景、SSH服务概述,yum源配置,SSH服务安装与配置实战,公私钥概念,SSH免密码登录
Linux数据同步RSYNC:RSYNC任务背景、RSYNC介绍、RSYNC基本语法、本机同步与远程同步、把RSYNC作为系统服务、RSYNC结合INOTIFY实现实时同步、RSYNC托管XINETD
Linux下文件共享服务FTP、NFS、SAMBA:文件共享任务背景、FTP服务介绍、FTP工作模式(主动模式+被动模式)、FTP服务搭建、客户端工具(ftp、lftp使用)、FTP访问控制、NFS服务介绍、NFS服务搭建、配置文件详解、NFS任务背景及解决方案、SAMBA服务介绍、SAMBA服务搭建、配置文件详解、文件共享服务总结
DNS域名管理服务:DNS服务介绍、DNS的作用、DNS服务搭建、正向解析、反向解析、多域搭建、NTP时间服务器、主从DNS架构
源码构建LAMP环境及部署业务应用:LAMP任务背景、Web服务器环境准备、软件编译回顾、编译安装MySQL、编译安装Apache、编译安装PHP、后期配置、Web应用系统部署实战
Linux下日志管理服务RSYSLOG:日志管理任务背景、查看日志、日志管理服务(RSYSLOG概述,日志列表,日志级别,相关符号,配置文件)、RSYSLOG本地日志管理、RSYSLOG远程日志管理、日志管理应用实践
Linux 磁盘管理:磁盘管理任务背景、磁盘管理概述、fdisk命令详解、Linux分区概述、Linux分区实战、逻辑卷介绍、逻辑卷基本概念(PV、VG、PE、LV)、逻辑卷LVM应用操作实战、RAID介绍、RAID常见级别、软硬RAID、软RAID应用实践
Shell脚本编程:Shell概述、变量、Shell流程控制、Shell数组、Shell函数、Shell特殊用法、正则表达式、Shell编程实战
数据库DBA:MySQL概述,MySQL5.7安装,MySQL配置,MySQL基本操作、SQL语句详解、MySQL索引、MySQL备份与还原、MySQL主从复制、MHA高可用架构、MySQL企业级应用实战
学完此阶段课掌握的核心能力:
1、了解Linux系统运行原理,实现Linux服务器的维护与管理;
2、了解Linux系统相关服务,能根据企业需求实现企业运维工作。
学完此阶段可解决的现实问题:能实现企业Linux服务器的日常维护与管理,搭建SSH、文件共享、DNS、Apache等服务、能独立完成系统日志分析、Shell脚本编程、数据库DBA等相关工作。
学完此阶段可拥有的市场价值:熟练学习和掌握后,可满足企业运维的初中级需求。
3、第三阶段:千万级商城系统架构设计
源码构建企业级LNMP架构及电商系统上线部署:千万级商城系统架构设计任务背景、Web项目开发流程、Linux服务器环境准备、LNMP环境概述、MySQL数据库服务搭建、Nginx软件服务搭建、PHP软件服务搭建、Web商城项目部署上线
大型WEB服务软件Nginx部署介绍使用:Nginx软件概述、Nginx平滑升级、配置文件详解、虚拟主机配置、Nginx默认官方模块详解(GZIP压缩,客户端缓存,反向代理,基于IP/用户的访问控制,目录显示)、日志管理、日志轮转、第三方日志管理软件GoAccess、Location区块、URL重写、第三方模块安装与配置、Nginx安全管理、Nginx其他衍生版本(Tengine,OpenResty)
WEB高可用集群架构设计及实现(keepalived):WEB高可用集群架构设计任务背景、单点数据库迁移、HA高可用集群概述、Keepalived软件介绍、Keepalived组成和原理、VRRP协议、安装与配置Keepalived、Nginx服务高可用实践、Keepalived扩展内容(非抢占模式、VIP脑裂、单播模式)
WEB负载均衡服务器集群架构设计及实现LB(Nginx/LVS/HAProxy):WEB负载均衡服务器集群架构设计任务背景、为什么需要LB负载均衡技术、LB负载均衡架构图、负载均衡分类、常见负载均衡实现方式、LB负载均衡环境准备、Nginx负载均衡实现、负载均衡算法、Session共享解决方案、高可用负载实践; LVS概述、LVS工作原理、LVS核心组件、LVS三种工作模式(NAT模式、DR模式、TUN隧道模式)、LVS/NAT原理和特点、LVS/DR原理和特点、LVS/TUN原理和特点、LVS的十种调度算法、LVS/NAT模式部署实践、LVS/DR模式部署实践; HAProxy概述、HAProxy安装与部署、配置文件详解、常见问题分析、HAProxy调度算法、HAProxy负载均衡应用实践
MyCAT读写分离:MySQL读写分离任务背景、读写分离的目的、读写分离常见的实现方式、搭建M-S主从复制、代码实现读写分离、MyCAT实现读写分离实战(JDK配置、MyCAT配置文件详解、读写分离实践、高可用实践、分库分表、MyCAT企业级案例实践)
非关系型数据库NoSQL(Memcache/Redis/MongoDB):非关系型数据库任务背景、Web项目访问流程、优化方案、缓存技术引入、memcached介绍、memcached安装与部署、telnet客户端使用、memcached指令详解、memcached tools工具使用、LRU失效机制、PHP memcached扩展安装、Session入memcached、缓存项目的热点数据; Redis介绍、Redis应用场景、Redis源码安装、客户端工具使用、Redis数据结构详解、数据持久化操作(快照+AOF)、企业级案例(主从,安全限制,PHP Redis扩展,Session入Redis);MongoDB任务背景、MongoDB安装和配置、数据结构类型操作CURD、MongoDB安全设置、PHP扩展、桌面管理软件、企业级日志统计实践
JAVA项目架构设计实战(LNTM架构):Java项目任务背景、Tomcat概述、Tomcat安装与部署、Tomcat企业级管理、Host虚拟主机配置、Server Status服务器状态、应用管理、Nginx动静分离、Nginx+Tomcat负载均衡、Maven概述、Maven项目打包、Maven项目部署
存储(NAS/SAN/GlusterFS/Ceph):存储概述、Linux存储分层、存储的分类(DAS,NAS,SAN)、存储类型的分类(文件存储、块存储、对象存储)、SAN的分类、IP-SAN之iscsi实现; 分布式存储、Glusterfs介绍、raid级别回顾、常见卷的模式、Glusterfs集群、环境准备、集群部署、创建glusterfs存储卷、客户端使用、卷的删除、常见卷类型(stripe模式、distributed模式、distributed-replica模式、dispersed模式、distributed-dispersed模式)、其它卷类型、glusterfs分部署存储应用实战; 认识Ceph、Ceph架构原理图、Ceph集群、Ceph集群组件、Ceph集群环境准备、Ceph集群部署实践、RADOS原生数据存取、Ceph文件存储、Ceph块存储、Ceph对象存储、Ceph对象存储+owncloud打造云盘系统、Ceph Dashboard(拓展)
配置自动化(Ansible/SaltStack):自动化运维任务背景、认识ansible、ansible安装与配置、服务器分组、ansible模块(hostname模块,file模块,copy模块,yum模块,service模块,command和shell模块,scriYAML格式pt模块)、playbook介绍、playbook实例、playbook编排应用、roles介绍、roles的目录结构、roles应用案例; saltstack介绍、saltstack安装与配置、saltstack远程执行命令、grains、pillar、配置管理文件、配置管理目录、配置管理命令、配置管理计划任务、其他命令、salt-ssh使用
企业级监控平台(Zabbix/Prometheus):企业级监控任务背景、监控的目的、主流的开源监控平台、Zabbix概述、Zabbix服务器安装、Zabbix监控本机与远程主机、模板、监控项与应用集、图形、触发器、报警、Zabbix代理、主动监控与被动监控、Zabbix应用部署实战; 认识Prometheus、Prometheus原理架构图、Prometheus监控安装部署、Prometheus监控远程主机、远程MySQL、Grafana介绍、Grafana安装与登录、Prometheus结合Grafana实现Linux系统监控、CPU监控、MySQL监控等等、Grafana报警系统实践
企业级日志分析(ELK/Kafka):ELK任务背景、ELK概述、elasticsearch部署、elasticsearch基础概念、elaticsearch基础API操作、ES查询语句、elasticsearch-head、logstash简介、logstash部署、日志采集、采集messages日志、采集多日志源、kibana介绍、kibana部署、kibana汉化、通过kibana查看集群信息、通过kibana查看logstash收集的日志索引、通过kibana做可视化图形、filebeat介绍、filebeat收集日志、filebeat传输给logstash、filebeat收集nginx日志、filebeat日志过滤
CI/CD(Git、Gitlab、Jenkins):CI/CD任务背景、版本控制概念、Git安装、Git身份设置、Git创建本地仓库、Git暂存区、Git版本控制、Git分支管理、扩展:Windows版Git; Github概述、GitHub注册、创建项目、远程仓库、免密push、分支、多人协作; GitLab介绍、GitLab下载、安装与配置、GitLab配置、仓库管理、持续集成(CI)、持续交付(CD)、蓝绿部署、滚动更新、灰度发布
运维安全(SSL与CA认证/防火墙/ VPN/JumpServer与Teleport跳板机):运维安全任务背景、运维安全概述、硬盘分区加密(扩展)、对称加密、非对称加密、数字签名、SSL与CA认证、SSL介绍、CA认证介绍、https应用实践; 防火墙概述、iptables的应用、iptables防火墙结构、iptables基本语法、iptables四表五链、企业级防火墙规则设置、firewalld包过滤、firewalld与iptables的区别、firewalld防火墙规则设置、firewall-config图形模式; VPN任务背景、隧道介绍、net-to-net隧道通讯、VPN介绍、IPSec协议、libreswan实现net-to-netVPN、三网络VPN互联、roadwarrior VPN(libreswan实现点对网VPN,openvpn实现点对网vpn,使用pptpd实现VPN),PAM认证,LDAP,开源堡垒机jumpserver,轻量级开源堡垒机teleport(拓展)
学完此阶段可掌握的核心能力:
1、 具备Linux服务器架构设计能力,保证应用架构合理可控;
2、具备监控检查系统软硬件运行状态,保证系统安全稳定运行的能力;
3、具备CI/CD持续集成/持续支付能力;
4、具备配置自动化以及日志分析能力;
5、具备解决复杂问题和技术难点的能力。
学完此阶段可解决的现实问题:
1、掌握Java、PHP服务器架构能力;
2、能够独立搭建企业级高可用服务器(集群、高可用、负载均衡、缓存、存储);
3、掌握阿里云/华为云产品实战;
4、能使用Zabbix/Prometheus搭建企业级监控;
5、能够熟练掌握CI/CD持续集成/持续支付工具;
6、能够使用Ansible/SaltStack实现运维自动化;
7、能使用ELK实现企业级日志分析;
8、能够掌握常见运维安全防护手段。
学完此阶段可拥有的市场价值:熟练掌握和学习后,可满足Linux运维行业中高级需求。
4、第四阶段:Linux云计算运维
KVM虚拟化:KVM任务背景、计算机工作原理、虚拟化概述与分类、KVM环境准备、KVM安装、使用KVM安装虚拟机、KVM基础管理命令、KVM配置文件、KVM克隆、KVM网络管理、快照、设备管理、存储池管理、磁盘镜像管理、虚拟机快速创建脚本
公有云运维(阿里云[ECS/RDS/SLB/CDN/OSS/NFS]):公有云任务背景、阿里云概述、VPC专有网络、阿里云安全组、云服务器ECS、自定义镜像、阿里云SLB、阿里云RDS、阿里云存储(NAS与OSS)、CDN、域名与域名解析、SSL证书、数据传输DTS、云监控、DDOS高防、容器服务、公有云企业级案例应用实践
私有云运维之OpenStack平台:私有云任务背景、OpenStack概述、OpenStack组件及其作用(Compute 计算服务、Networking 网络服务、Object Storage 对象存储、Block Storage 块存储服务、Identity 身份认证、Image Service 镜像服务、Dashboard UI页面、Metering 测量服务、Orchestration 编排部署、Database Service 云数据库)、OpenStack自动部署、OpenStack手工部署、OpenStack云平台应用实践
Docker容器技术:Docker容器技术任务背景、PAAS平台介绍、认识容器、Docker介绍、Docker内核技术(NameSpace,Control Group,LXC与docker区别)、Docker环境准备、Docker软件安装、Docker Daemon管理、镜像、容器、仓库、Docker存储驱动、Docker应用实践、Dockerfile概述、使用Dockerfile构建镜像、单宿主机容器互联方式、Docker网络、Docker的Web管理平台、Docker三剑客(Docker machine、Docker compose、Docker swarm)、Docker容器应用部署实践
Kubernetes(K8S)容器编排工具:Kubernetes(K8S)容器编排任务背景、认识容器编排、Kubernetes概述、Kubernetes架构、集群部署方式、Kubeadm部署Kubernetes集群、集群与节点信息、节点标签、namespace命名空间、工作负载(workloads)、pod概述、pod分类、pod的YAML格式、pod资源限制、pod调度、pod生命周期、pod控制器、service、ingress controller、kubernetes存储卷、ceph集群部署、ConfigMap、Secret、PV与PVC、API网关 kong、包管理方案 helm2、存储解决方案 GlusterFS、服务网格 istio、监控解决方案 heapster、应用实践 gitlab-ce、应用实践 jenkins、应用实践 kafka、应用实践 zookeeper应用实践 配置中心Apollo
综合案例:Docker+K8S企业级项目应用实践
学完此阶段可掌握的核心能力:
1、熟练掌握虚拟化技术;
2、掌握公有云与私有云架构实战;
3、熟练使用容器与容器编排工具;
4、熟练掌握企业级云计算技术应用实践。
学完此阶段可解决的现实问题:
1、能够使用KVM实现虚拟化;
2、能够掌握公有云与私有云服务器架构实战;
3、能够熟练使用Docker容器;
4、能够熟练使用Kubernetes(K8S)容器编排工具;
5、能够熟练掌握Docker+Kubernetes(K8S)项目架构设计
学完此阶段可拥有的市场价值:熟练掌握和学习后,可满足Linux云计算架构工程师的高级需求。
5、第五阶段:Python CMDB运维开发(DevOps)
HTML5:HTML简介、HTML标签详解、字符编码的奥秘、HTML5新特性与常用标签
CSS3:CSS简介、CSS的引入方式、CSS基本选择器、CSS属性、盒子模型、CSS浮动、CSS3新特性与常用属性、CSS应用案例
Bootstrap:Bootstrap环境搭建、全局样式、网页排版、表单、图片及辅助类、网页布局、Bootstrap组件、CMDB后台布局实战
JavaScript/Ajax/jQuery:JavaScript简介、Javascipt语法基础、BOM模型、DOM模型、Ajax概述、Ajax中的get与post请求、Ajax案例、jQuery框架概述、jQuery选择器、jQuery事件、jQuery与Ajax、JavaScript应用实践
Python基础:Python概述、Python环境部署、变量、标识符和关键字、输入和输出、数据类型转换、条件控制语句和循环语句、容器类型、函数、文件操作
Python高级:面向对象、异常处理、模块和包、Python与MySQL应用实践
Django框架:Django框架介绍、Django模型、ORM及数据库操作、视图及模板、Django中间件
综合项目:Python+Django实现CMDB企业自动化运维平台
学完此阶段可掌握的核心能力:
1、掌握Web前端开发相关技术如HTML5/CSS3/JavaScript;
2、掌握Python运维相关模块;
3、掌握Python Django框架;
4、具备一定的Python运维开发能力。
学完此阶段可解决的现实问题:
1、具备一定的编程思维,为未来系统架构师铺路搭桥;
2、能够熟练掌握Python运维相关模块实现运维管理;
3、能够使用Python+Django开发企业自动化运维平台。
学完此阶段可拥有的市场价值:熟练掌握和学习后,可满足Linux运维行业的高级需求。
免责声明:本文转载或采集自网络,版权归原作者所有。本网站刊发此文旨在传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及版权、内容等问题,请联系本网,我们将在第一时间删除。同时,本网站不对所刊发内容的准确性、真实性、完整性、及时性、原创性等进行保证,请读者仅作参考,并请自行核实相关内容。对于因使用或依赖本文内容所产生的任何直接或间接损失,本网站不承担任何责任。