DevOps工具 开发(Dev)与运维(Ops) 自动化和可重复 学习总结

1-DevOps是什么?

DevOps(Development和Operations的组合词)用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的合作,影响着产品交付、测试、功能开发和维护。

“软件开发人员(Dev)”和“IT运维技术人员(Ops)”,透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。

DevOps的出现是由于软件行业认识到:为了按时交付软件产品和服务,开发和运维工作必须紧密合作。

DevOps的优点

  • 尽可能地自动化,提升产品交付速率

DevOps: Development和Operations的组合

可以把DevOps看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。

DevOps对应用程序发布的影响

(1)减少变更范围

(2)加强发布协调

(3)自动化

DevOps是Develop与Operations的缩写, DevOps就是自动化和可重复性。

2-DevOps工具

1. Git

Git是最流行的DevOps工具之一,在软件界使用广泛。它是一种分布式SCM(源码管理)工具,远程团队和开源贡献者都很喜欢它。Git让用户可以跟踪自己开发工作的进度。用户可以保存自己源码的不同版本,并且在需要的时候切回之前的版本。它也很适合做实验,因为可以创建单独的分支,在需要的时候仅仅merge新特性。 要将Git和DevOps工作流集成起来,还需要维护repository,团队成员可以向其中push各自的工作。目前,两大最佳在线的Git repo托管服务是GitHubBitbucket。GitHub更有名气,但是Bitbucket给小团队(不超过五个成员)提供免费不受限的私有repo。使用GitHub,用户仅仅可以免费访问公有的repo——当然这对于很多项目来说仍然是很好的解决方案。 GitHub和Bitbucket都有很好的集成。比如,用户可以将它们和Slack集成,这样团队的每个人都能在有任意commit时收到通知。

2. Docker

Docker在2013年发布之后已经成为了首屈一指的容器平台,并且仍然在持续改进。它是最重要的DevOps工具之一。Docker在科技界掀起了容器化的潮流,主要是因为它让分布式开发成为可能,并且自动化了应用程序的部署。它将应用程序隔离成单独的容器,因此应用变得更加便携也更为安全。Docker应用程序也独立于OS以及平台。用户可以使用Docker容器代替虚拟机,比如VirtualBox。 我最喜欢Docker的一点是用户无需担心依赖管理。可以将所有依赖打包进应用程序的容器,并将所有的东西当做独立的单元交付。然后,用户可以很轻松地在任意机器或者平台上运行这个应用程序。 Docker也和Jenkins以及Bamboo集成。如果你将自动化服务器和Docker搭配使用,可以进一步改进交付工作流。另外,Docker也很适用于云计算。最近几年,所有主流的云供应商,比如AWS,Google Cloud,都已经支持Docker。因此,如果你计划云迁移,那么Docker可以帮助简化这一进程。

3. Kubernetes

今年,每个人都在谈论Kubernetes。它是容器编排平台,将容器化推进到下一个层面。它可以使用Docker或者其他替代产品。Kubernetes仍然很新;2015年才推出第一个版本。它由一些Google的工程师创建,他们想找到管理大规模容器的方案。使用Kubernetes,用户可以将容器组织成逻辑单元。 如果你只有几个容器,那么可能并不需要容器编排平台。但是,当系统达到一定级别的复杂度,需要扩展资源的时候,这就是合理的下一步。Kubernetes让用户可以自动化管理上百个容器的过程。 使用Kubernetes,无需将容器化的应用程序绑定到某个单独的机器里。相反,你可以将它部署到一个机器集群里,Kubernetes会自动化分发并在整个集群里调度容器。 一个Kubernetes集群包含一个master和几个worker节点。master节点实现预定义的规则,并且将容器部署到worker节点上。Kubernetes负责所有一切。比如,它注意到某个worker节点下线了,就会将其上的容器重新分发到别的节点上。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DevOpsDevelopment Operations)是一种软件开发和信息技术运维的方法论和实践方式,旨在通过强调开发人员和运维人员之间的合作与沟通,实现软件开发运维的一体化。开发运维一体化平台是支撑DevOps实践的关键工具开发运维一体化平台的作用是为开发人员和运维人员提供一个集成的环境,使他们可以在一个统一的界面上协同工作。这样一来,开发人员可以更好地理解软件实际运行环境的需求,而运维人员也可以更早地介入软件开发的过程。通过这种方式,可以提高软件交付的效率和质量。 开发运维一体化平台通常包括代码托管、持续集成、自动化测试、部署和监控等功能。开发人员可以在平台上进行代码的协同开发,并通过持续集成和自动化测试来保证代码的质量。运维人员可以利用平台提供的部署和监控功能,实时监测软件的运行状态,并及时进行故障修复和优化。 开发运维一体化平台的好处是显而易见的。首先,开发人员和运维人员的密切合作可以大大缩短软件交付的时间,提高产品迭代的速度。其次,通过自动化测试和部署的手段,可以降低人为错误带来的风险,并保证软件的稳定性和可靠性。此外,开发运维一体化平台的实时监控功能可以帮助运维人员及时发现和解决问题,减少故障对业务的影响。 总之,开发运维一体化平台具有重要的意义和价值,它为软件开发运维提供了一种更高效、更稳定的工作方式,有助于提高团队的协作能力和整体业务的竞争力。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值