devops和自动化运维实践 PDF,devops思想在运维方面的具体实践

  devops和自动化运维实践 PDF,devops思想在运维方面的具体实践

  Ops运维开发一体化DevOps的核心思想是工作效率最大化,通过一系列技术栈来体现。

  开发人员、产品经理、测试人员、运维人员……传统的分部门开发方式,开发周期普遍较长,部门分散,相互之间的沟通可能不到位。

  

1、敏捷开发

  

2、产品与质量管理软件

(运维人员、环境搭建、维护、调试、开发人员、测试人员、产品经理、项目经理使用)

  常见的软件有:

  大厂商使用的吉拉是收费的外国软件。中国有禅宗,免费开源。

  Gitlab还可以通过milestone功能,用于发布任务。

  团队,相对较小。

  

3、代码仓库管理

-GitOPS,代码仓库管理的操作和维护

  服务器:GitLab、GitHub、原生Git和Gitee是分散的。中间是SVN。

  客户端:终端的Git CLI,图形界面的TortoiseGit。

  

4、开发流程规范

  GitLab里有工作流GitLab flow,GitHub,原生git,有工作流。

  

5、自动化构建脚本

  Maven,Ant,Gradle等等。

  

6、虚拟化与容器化

  虚拟化和容器化是不同的技术。

  虚拟化分为硬件虚拟化和软件虚拟化,容器化是软件虚拟化的一个分支。

  虚拟化技术:

  VMWare,企业ESXi,cVenter,桌面VM WorkstationXEN,Linux中对XEN虚拟化的原生支持,XenServer/Xen Client是RedHat做的一项虚拟化技术。KVM,新版Linux内核原生支持KVMHyper-V,Windows Server 2016已经发展到第二代,是Windows上最好的虚拟化技术。第一个版本发布于Win Server 2012。集装箱化技术:

  LXC和LXD是Linux上的两种虚拟化技术,是名称空间的隔离。Docker早期也是基于LXC的,后来被谷歌的开源引擎处理了。CentOS 7.6以后,对Docker的底层支持发生了变化,逐渐被淘汰。为什么?因为Docker是典型的CS架构,有服务器和客户端。服务器端有守护进程,Docker的守护进程是它的短板。下一代容器技术Podman技术,原生支持Docker的所有API,不需要和Docker一样的守护进程。

7、持续集成和持续部署 CI / CD

  CI:持续集成工具,Gitlab,Git,TeamCity

  CD:持续部署工具,Jenkins

  

8、持续监控 / 监控管理工具 CM

  持续监控工具,Zabbix,Prometheus

  监控工具:单机监控;集群监控;集装箱监控;日志分析系统ELK等等

  

9、自动化工具

  基于Python直通脚本

  可以使用Python相关的工具,比如Ansible自动运维工具,Puppet等。

  

10、自动化测试

  Python自动化测试

  应用工具

  

11、云计算技术体系

  云计算管理平台opencloud,底层是虚拟化技术,相当于一个资源池(CPU计算能力、存储、网络资源)整合在一起,然后以服务的形式提供给他人。

  平台:

  OpenStack,服务很重,逐渐被淘汰。是一个收费ZStack的国产平台,有免费版,收费版的容器云,结合k8s,故障转移,秒级启动。进程间通信的安全性需要加强。

  MySQL可以在容器中完成吗?需要单独的物理机吗?

  可以,可以在集装箱里,但是你的公司必须有一个知道怎么玩集装箱的大牛。否则你的数据可能会丢失,这就涉及到持久性等问题。

  盲目上云,盲目用容器,会带来很多问题。

devops和自动化运维实践 PDF,devops思想在运维方面的具体实践