简要说明devops实践场景,理解devops

一、关于DevOps
   DevOps就是实现开发和运维一体化的自动化部署,DevOps一词的来自于Development和Operations的组合,突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、发布更加快捷、频繁和可靠。

二、传统开发流程
  开发人员开发代码后自行验证,经过测试的打码上传到服务器或交给运维人员进行手工部署。

二、基于DevOps概念来看实施工具和过程
  1、源代码库源代码存储库是开发人员签入和更改代码的地方。源代码存储库管理签入的不同版本的代码,因此开发人员不必重写彼此的工作。流行的源代码存储库工具有Git、Subversion等。
2. 生成镜像至harbor或直接拉取git/svn代码
3. 配置管理配置管理定义服务器或环境的配置。流行的配置管理工具是Puppet和或Ansible等工作
4.构建服务器构建服务器是一种自动化工具,它将源代码存储库中的代码编译为可执行代码库。流行的工具有Jenkins, SonarQube和Artifactory

场景一: 开发与运维自动化或持续集成
1、项目管理采用jira
2、开发人员上传代码至git和gitlab,SonarQube进行代码质量检测
3、构建代码生成镜像至harbor
4、容器采用docker
5、通过配置ansible或puppet等来部署自动化所需的资源。
6、部署和配置jenkins,来拉取harbor或svn上的代码进行自动化部署所需设置
7、kubernetes集群对容器进行编排(配置拉取镜像)。
8、服务注册与发现采用etcd。
9、rancher管理多个k8s集群。
10、系统监控采用prometheus、Grafana。
场景二: 自动化的监控
1、部署工具采用Ansible、Puppet
2、日志管理采用ELK
3、监控采用zabbix
  监控对象比如:网络设备、存储、网络指标、数据处理/ETL数据、数据库等。


三、DevOps意义
   DevOps是强调开发人员(Dev)和运维人员(Ops)之间的沟通合作,通过自动化流程和工具,使得软件构建、测试、发布更加快捷、频繁和可靠。
 当然这个方面的知识介绍很多了,但是还是有不少同事在这个方面比较模糊。所以简单举个场景例子,毕竟有时招聘中也会提及这个概念。

它允许快速,频繁地交付和发布技术更改。它具有版本控制、自动化测试和持续交付的功能。它能够在不扩大团队规模的情况下将整个基础架构作为代码进行管理
posted @ 2024-01-09 09:16  jinzi  阅读(21)  评论(0编辑  收藏  举报