幹掉 Jenkins?頂級 DevOps 工具鏈大盤點

語言: CN / TW / HK

本篇文章中將介紹一些能夠幫助你實現 DevOps 目標的核心技術類別和具體技術。

1 關於 DevOps 及其工具

關於 DevOps 及其工具,需要記住:

  • 持續改進是目標;

  • DevOps 不是花錢買來的;

  • 分階段採用工具。

2 計劃工具

為什麼計劃工具對於 DevOps 來說很重要?

  • 分享目標;

  • 透明性;

  • 賦能。

計劃工具示例

GitLab

GitLab 是一個基於 Web 的 DevOps 生命週期工具。它提供了一個 Git 倉庫管理器,具備 wiki、問題跟蹤和 CI/CD 管道功能,採用的是 GitLab 公司的開源許可。

Tasktop

Tasktop 允許將所有這些工具新增到敏捷、ALM、PPM 和 ITSM 中,實現了對整個生命週期前所未有的可見性。

CollabNet VersionOne

VersionOne 支援 Scrum、看板、XP、SAFe 和混合開發方法,並使跨團隊、程式、軟體組合和企業的計劃、跟蹤和報告變得更容易。

Pivotal Tracker

敏捷專案管理工具,是開發人員圍繞高優先順序共享 backlog 進行實時協作的首選工具。

Trello

Trello 是一個基於 Web 的看板風格的清單應用程式,是 Atlassian 的子公司。

很多團隊用它來計劃各自的工作 sprint。

Azure Boards

使用敏捷工具,包括 Scrum、看板和其他敏捷方法儀表板來更好地跟蹤軟體專案並進行計劃。

這些都是視覺化工作、分享計劃、跟蹤進展、確保朝著目標前進的好方法。

3 問題跟蹤

為什麼問題跟蹤對 DevOps 來說很重要?

  • 使用者響應;

  • 減少知識損耗;

  • 反饋閉環。

問題跟蹤工具示例

Atlassian Jira

Jira 是由 Atlassian 公司開發的問題跟蹤產品,提供了 bug 跟蹤和敏捷專案管理功能。

JetBrains YouTrack

YouTrack 是 JetBrains 公司開發的一款基於瀏覽器的 bug 跟蹤、問題跟蹤系統和專案管理軟體。它支援基於查詢的問題搜尋——包括自動完成、批量處理問題、定製問題屬性集以及建立自定義工作流。

Zendesk

Zendesk 讓客戶問題跟蹤變得更簡單,包括優步和 Airbnb 在內的很多公司都使用 Zendesk 作為他們的問題跟蹤軟體。

4 原始碼控制

為什麼原始碼控制對 DevOps 來說很重要?

  • 資產管控;

  • 減少傳輸損耗;

  • 促進團隊合作。

SCM 工具示例

Git

Git 是一個分散式版本控制系統,用於在軟體開發期間跟蹤原始碼的變更。它是為協調程式設計師之間的工作而設計的,但它也可用於跟蹤檔案的變更。它專注於速度、資料完整性和對分散式、非線性工作流的支援。

GitHub

GitHub 提供了 Git 分散式版本控制和原始碼管理功能,以及自有的一些特性。

GitLab

GitLab 的版本控制通過世界級的原始碼管理功能幫助你的開發團隊共享、協作和最大化他們的生產力。

Bitbucket

Bitbucket 是 Atlassian 公司為使用 Mercurial 或 Git 版本控制系統的原始碼和開發專案提供的基於 Web 的版本控制程式碼庫託管服務。

Subversion

Apache Subversion 是一種軟體版本控制系統,採用了 Apache 開發原始碼許可。軟體開發人員使用 Subversion 來維護檔案的當前和歷史版本,例如原始碼、Web 頁面和文件。

5 構建工具

為什麼構建工具對 DevOps 來說很重要?

  • 一致的打包效果;

  • 自動化錯誤探測;

  • 儘早發現質量問題。

構建工具示例

Maven/Gradle

Maven 是一個主要用於 Java 專案的自動化構建工具。Maven 還可以用來構建和管理用 C#、Ruby、Scala 和其他語言開發的專案。

Gradle 是一個開源的自動化構建系統,基於 Apache Ant 和 Apache Maven 的概念,引入了一種基於 groovy 的領域特定語言。

MSBuild

Microsoft Build Engine,更廣為人知的名字是 MSBuild,是一個開源免費的託管程式碼和原生 C++ 程式碼構建工具集,是.Net Framework 的一部分。Visual Studio 就使用 MSBuild 作為構建工具。

Rake

Rake 是一個軟體任務管理和自動化構建工具。使用者可以指定任務和描述依賴關係,還可以對同一個名稱空間中的組任務指定和描述依賴關係。

JFrog Artifactory

JFrog Artifactory 是一種用於儲存構建過程所產生的用於釋出和部署的二進位制檔案的工具。Artifactory 提供了多種包格式支援,如 Maven、Debian、npm、Helm、Ruby、Python 和 Docker。

JFrog 提供了高可用性、複製、災難恢復、可伸縮性,並可整合很多自有和雲端儲存產品。

Sonatype Nexus

Sonatype Nexus 是一個儲存庫管理器。可用於代理、收集和管理依賴項,這樣就不用經常為一堆的 jar 檔案感到煩惱。它讓軟體的發行變得更容易。

在內部,你可以配置構建工具,把工件釋出到 Nexus,然後其他開發人員就可以使用它們了。

NuGet

NuGet 是.Net 包管理器。NuGet 客戶端工具提供了生成和使用包的能力。

NuGet Gallery 是程式包作者和使用者的中心包倉庫。

6 測試工具

為什麼測試工具對 DevOps 來說很重要?

  • 將注意力放在質量上;

  • 提升產品信心。

測試工具示例

JUnit

JUnit 是一個用於 Java 的單元測試框架。JUnit 在測試驅動開發當中扮演著非常重要的角色,它是單元測試框架家族 xUnit(源於 SUnit) 的一員。

xUnit.net

xUnit.net 是一個用於.Net Framework 的開源單元測試工具,由 NUnit 的原作者開發。

Selenium

Selenium 是用於測試 Web 應用程式的框架。Selenium 提供了一個回放工具,用於編寫功能測試,省去了學習指令碼語言的麻煩。

Jasmine

Jasmine 是一個開源的 JavaScript 測試框架。它的目標是可以在任何支援 JavaScript 的平臺上執行,不干擾應用程式或 IDE,並具有易於閱讀的語法。它深受其他單元測試框架的影響,比如 Screw.Unit、JSSpec、JSpec 和 RSpec。

Cucumber

Cucumber 是一個支援行為驅動開發的工具。Cucumber BDD 方法的核心是一個叫作 Gherkin 的語言解析器,可以用使用者能夠理解的邏輯語言來指定預期的軟體行為。

7 持續整合(CI)和持續部署(CD)

為什麼持續整合和部署對 DevOps 來說很重要?

  • 快速反饋;

  • 減少缺陷和等待時間。

CI 工具示例

Jenkins

Jenkins 是一個免費開源的自動化伺服器。Jenkins 幫助自動化軟體開發過程中的非人為操作部分。它是一個基於伺服器的系統,執行在 Servlet 容器中,比如 Apache Tomcat。

CircleCI

CircleCI 是全球最大的共享 CI/CD 平臺,是程式碼從想法變成可交付產品的中心樞紐。

作為最常用的 DevOps 工具之一,CircleCI 每天要處理超過 100 萬個構建任務,它可以訪問到工程團隊協作以及程式碼執行的資料。Spotify、Coinbase、Stitch Fix 和 BuzzFeed 等公司都使用 CircleCI 來提高工程團隊的工作效率,釋出更好的產品。

Travis CI

Travis CI 是一個託管的 CI 服務,用於構建和測試託管在 GitHub 上的軟體專案。Travis CI 為私人專案提供各種付費計劃和免費開源計劃。TravisPro 部署在客戶自己的硬體上,提供專有版本的定製部署。

Concourse

Concourse 是一個用 Go 開發的自動化系統,最常用於 CI/CD,用於伸縮任何型別 (從簡單到複雜的) 的自動化管道。

AWS CodePipeline

AWS CodePipeline 是一個全託管的 CD 服務,可以幫助你自動化釋出管道,以便快速可靠地更新應用程式和基礎設施。

每當發生程式碼變更時,CodePipeline 會根據你定義的釋出模型自動化釋出過程的構建、測試和部署階段,讓你能夠快速、可靠地交付特性和更新。

你可以輕鬆地將 AWS 程式碼管道與第三方服務 (如 GitHub) 或自定義外掛整合。在使用 AWS CodePipeline 時,你只需要為所使用的內容付費,沒有預付費用。

Azure Pipelines

為 Linux、macOS 和 Windows 建立雲託管管道。構建 Web、桌面和移動應用程式,並將其部署到雲端或本地。

通過管道自動化構建和部署,減少在具體細節上花費的時間,把更多的時間花在創造性的事情上。

CD 工具

為什麼 CD 工具對於 DevOps 來說很重要?

  • 減少預釋出庫存;

  • 自動化複雜的管道;

  • 統一團隊為客戶創造價值的目標。

CD 工具示例

Spinnaker

Spinnaker 是一個免費開源的 CD 軟體平臺,最初由 Netflix 開發,後被谷歌收購,並進行了擴充套件。

Spinnaker 是一個多雲 CD 平臺,用於快速釋出軟體變更。它將強大而靈活的管道管理系統與主要雲提供商的整合結合在了一起。

Octopus Deploy

Octopus Deploy 是一個自動化的部署和釋出管理工具,全球領先的 CD 團隊都在使用它。

Octopus 是一個工具集,可以極大簡化 DevOps 過程,通過雲或虛擬機器對大量微服務或應用程式進行持續測試和部署。

AWS CodeDeploy

AWS CodeDeploy 是一種全託管的部署服務,可以將軟體部署自動化到各種計算服務,如 Amazon EC2、AWS Fargate、AWS Lambda 和本地伺服器。

你可以使用 AWS CodeDeploy 來自動化軟體部署,減少容易出錯的手動操作。

8 配置管理工具

配置管理工具為什麼對於 DevOps 來說很重要?

  • 保持一致性;

  • 基礎設施即程式碼。

配置管理工具示例

Terraform

Terraform 是 HashiCorp 公司開發的開源基礎結構即程式碼 (IaC) 軟體工具。使用者可以使用一種高階配置語言 (叫作 Hashicorp 配置語言或 JSON) 來定義和提供資料中心基礎設施。

BOSH

BOSH 是一個將小型和大型雲軟體的釋出工程、部署和生命週期管理結合起來的專案。BOSH 可以基於數百個 VM 配置和部署軟體。它還可以執行監空、故障恢復和軟體更新,沒有停機時間或者停機時間很短。

雖然開發 BOSH 是為了部署雲端計算,但它也可以用於部署幾乎任何其他軟體 (例如 Hadoop)。BOSH 特別適合大型分散式系統。

此外,BOSH 還支援多種基礎設施即服務 (IaaS) 提供商,如 VMware vSphere、谷歌雲平臺、Amazon Web Services EC2、Microsoft Azure、OpenStack 和阿里巴巴雲。BOSH 提供了一個雲供應商介面 (CPI),使用者可用它擴充套件 BOSH,以便支援其他 IaaS 提供商,如 Apache CloudStack 和 VirtualBox。

Chef

Chef 是一個配置管理工具,用於處理物理伺服器、虛擬機器和雲端的機器配置。很多公司用 Chef 控制和管理他們的基礎設施,如 Facebook、Etsy、Cheezburger 和 Indiegogo。

Chef 公司是持續自動化軟體的領導者、應用自動化的革新者以及 DevOps 運動的發起者之一。Chef 與全球 1000 多家最具創新性的公司合作,提供快速交付軟體的實踐和平臺,以實現他們的數字化轉型願景。

Ansible

Ansible 是一款開源的軟體配置、配置管理和應用程式部署工具。它執行在 Unix 家族系統上,可以配置 Unix 家族系統和 Windows。它可以使用自己的宣告性語言來描述系統配置。

Puppet

Puppet 提供了定義系統需要哪些軟體和配置的能力,然後在初始設定之後維護指定的狀態。

Puppet 使用與 Ruby 類似的宣告性領域特定語言 (DSL) 為特定環境或基礎設施定義配置引數。Puppet 通過使用一個叫作 Facter 的實用程式來發現系統資訊,Facter 是在安裝 Puppet 軟體包時一起安裝的。

Puppet 主節點通過清單來管理它所控制的所有節點的重要配置資訊。

被主節點控制的其他節點安裝了 Puppet 並執行 Puppet 代理 (一個守護程序)。代理節點收集的有關節點的配置資訊將傳送給主節點。主節點根據應該如何配置來編譯目錄,其他節點使用這些資訊來更新自己的配置。

Puppet 使用了拉取模式,代理節點定時輪詢主機,查詢特定於站點和特定於節點的配置。在這個基礎設施中,Puppet 代理應用程式通常作為後臺服務執行在託管節點上。

谷歌雲部署管理器

谷歌雲部署管理器是一種基礎設施管理服務,讓谷歌雲平臺資源的建立、部署和管理變得更簡單。

9 雲平臺

為什麼雲平臺對 DevOps 來說很重要?

  • 友好的自動化;

  • 具有可觀察性的執行時。

雲平臺示例

Amazon Web Service

Amazon Web Service(AWS) 是一個安全的雲服務平臺,提供計算能力、資料庫儲存、內容交付和其他幫助企業擴大規模和增長的功能。

簡而言之,AWS 可以做以下這些事情:

在雲端執行 Web 和應用伺服器,託管動態網站;

將所有檔案安全地儲存在雲端,這樣你就可以從任何地方訪問它們;

使用託管資料庫,如 MySQL、PostgreSQL、Oracle 或 SQL Server 來儲存資訊;

使用內容分發網路 (CDN) 在世界各地快速交付靜態和動態檔案;

批量傳送電子郵件給你的客戶。

微軟 Azure

微軟 Azure 是微軟建立的雲端計算服務,通過微軟資料中心構建、測試、部署和管理應用程式和服務。

微軟 Azure,原來叫作 Windows Azure,是微軟的公共雲端計算平臺。它提供一系列雲服務,包括計算、分析、儲存和網路。使用者可以選擇這些服務來開發和擴充套件新的應用程式,或者在公共雲中執行現有的應用程式。

谷歌雲平臺

谷歌雲平臺由谷歌提供,是一套雲端計算服務,執行在谷歌用來執行其終端使用者產品 (如谷歌搜尋、Gmail 和 YouTube) 相同的基礎設施上。

谷歌雲平臺提供在 web 上部署應用程式所需的計算資源,專注於為個人和企業提供一個構建和執行軟體的地方,並通過 Web 連線軟體使用者。

你使用谷歌提供的雲端計算服務來迎接業務方面的挑戰,包括資料管理、混合和多雲、人工智慧和機器學習。

Pivotal Cloud Foundry

Pivotal Cloud Foundry (PCF) 是一個開源的多雲應用平臺即服務 (PaaS),由 501 組織 Cloud Foundry Foundation 負責管理。該軟體最初由 VMware 開發,後來轉到 Pivotal 軟體公司。2019 年底,隨著 VMware 收購 Pivotal,又被帶回到 VMware。

PCF 是一個用於部署、管理和持續交付應用程式、容器和功能的多雲平臺。PCF 允許開發人員快速部署和交付軟體,而不需要管理底層基礎設施。

Heroku

Heroku 是一個支援多種程式語言的雲 PaaS。作為首批雲平臺之一,Heroku 從 2007 年 6 月就開始開發,當時它只支援 Ruby 程式語言,但現在支援 Java Node.js、Scala、Clojure、Python、PHP 和 Go。

Heroku 是一個基於容器的雲 PaaS。開發人員使用 Heroku 來部署、管理和擴充套件現代應用程式。這個平臺優雅、靈活、易於使用,為開發人員提供了釋出應用程式最簡單的途徑。

容器排程器

容器排程程式的主要任務是在最合適的主機上啟動容器並將它們連線在一起。它必須通過自動故障轉移來處理故障,並且當單個例項有太多資料需要處理 / 計算時,它需要能夠擴充套件容器。

三個最流行的容器排程器是 Docker Swarm、Apache Mesos 和 Kubernetes。

Docker Swarm

Docker Swarm 是 Docker 開發的一種容器排程程式。這個叢集解決方案提供了一些優勢,比如使用標準 Docker API 等。

Apache Mesos

Mesos 的目的是構建一個可擴充套件、高效的系統,可以支援大量的框架。這也是一個主要的問題:一些框架,如 Hadoop 和 MPI,是獨立開發的——因此不可能在框架之間進行細粒度的共享。

Mesos 的目的是新增一個薄薄的資源共享層,為框架提供訪問叢集資源的公共介面。Mesos 將排程控制委託給框架,因為很多框架已經實現了複雜的排程。

根據叢集上執行的作業型別,框架可以分為四種,其中一些框架提供了原生 Docker 支援,比如 Marathon。在 Mesos 0.20.0 中添加了對 Docker 容器的支援。

Kubernetes

Kubernetes 是一個用於編配 Docker 容器的系統,它通過標籤和 Pod 的概念將容器分為邏輯單元。Pod 是 Kubernetes 和其他兩種解決方案之間的主要區別——它們是一組容器集合,形成一起部署和排程的服務。與基於關聯性的容器 (如 Swarm 和 Mesos) 排程相比,這種方法簡化了叢集的管理。

Kubernetes 排程器的任務是監控帶有空 PodSpec 的 Pod。NodeName 指定將容器安排在叢集中的某個位置。

這是與 Swarm 和 Mesos 的不同之處,Kubernetes 允許開發者在執行 Pod 時通過定義 PodSpec.NodeName 來繞過排程器。

排程器使用謂詞和優先順序來定義 Pod 應該執行在哪些節點上。我們可以使用新的排程器策略配置覆蓋這些預設值。

我們可以通過命令列標誌 policy-config-file 指定一個 JSON 檔案,在啟動 Kubernetes 時將會使用該檔案描述的謂語和優先順序,排程器將使用這些定義好的策略。

10監控和日誌工具

為什麼監控和日誌工具對於 DevOps 來說很重要?

  • 快速恢復;

  • 響應速度;

  • 透明性;

  • 發生事故時減少人工干預。

監控和日誌工具示例

ELK

ELK 是三個開源產品的集合——Elasticsearch、Logstash 和 Kibana。它們都是由 Elastic 公司開發、管理和維護的。

  • E 代表 ElasticSearch——用於儲存日誌;

  • L 代表 Logstash——用於傳輸、處理和儲存日誌;

  • K 代表 Kibana——一個視覺化工具 (Web 介面)。

Datadog

Datadog 是一個針對雲規模應用程式的監控服務,通過基於 SaaS 的資料分析平臺來監控伺服器、資料庫、工具和服務。

Datadog 應用程式效能監控 (APM 或跟蹤) 幫助使用者深入瞭解應用程式效能——從自動生成的儀表盤(監控關鍵指標,如請求量和延遲)到單個請求的詳細跟蹤資訊——與日誌和基礎設施監控資訊並列展示。

當嚮應用程式發出請求時,Datadog 可以看到分散式系統的跟蹤,並向用戶顯示關於這個請求的系統資料。

New Relic

New Relic 是一家總部位於加州舊金山的科技公司,它開發基於雲的軟體,幫助網站和應用程式所有者跟蹤服務效能。

New Relic 的應用程式效能監控軟體分析產品 (APM) 提供有關 Web 應用程式效能和終端使用者體驗滿意度的實時和趨勢資料。

Prometheus

Prometheus 是一款用於事件監控和警報的免費應用程式。它在時間序列資料庫中記錄實時指標,基於 HTTP 拉取模型,支援靈活的查詢和實時警報。

Prometheus 伺服器的核心原理是抓取——也就是說,呼叫各個節點暴露出來的指標端點。它定期收集這些指標並將它們儲存在本地。

Zipkin

Zipkin 是一個分散式跟蹤系統。它用於收集診斷延遲問題所需的時間資料,提供了資料的收集和查詢功能。

如果日誌檔案中有跟蹤 ID,則可以直接跳指定位置。否則的話,你可以基於服務、操作名稱、tagsm 和持續時間等屬性進行查詢。它將為你彙總出一些有趣的資料,例如花費在服務上的時間百分比以及操作是否失敗。

Azure Monitor

Azure Monitor 提供了一個全面的解決方案,用來收集、分析和執行來自雲端和本地環境的遙測資料,從而最大化應用程式和服務的可用性和效能。

它可以幫助你瞭解應用程式的執行情況,並主動識別影響它們的問題以及它們所依賴的資源。

幾個 Azure Monitor 的使用場景:

  • 使用 Application Insights 檢測和診斷應用程式和依賴項之間的問題;

  • 將基礎設施問題與用於 VM 的 Azure Monitor 和用於容器的 Azure Monitor 關聯起來;

  • 使用日誌分析深入監控資料,進行故障排除和深入診斷;

  • 通過智慧警報和自動運維支援大規模操作;

  • 使用 Azure 儀表板和工作簿進行視覺化。

11 通訊工具

為什麼通訊工具對於 DevOps 來說很重要?

  • 連線團隊;

  • 減少等待時間;

  • 改進團隊協作。

通訊工具示例

Slack

Slack 是由 Slack 公司開發的即時通訊平臺。

Slack 本質上是整個公司的一個聊天室,旨在取代電子郵件成為溝通和分享的主要方式。你可以用頻道進行分組討論,也可以通過私有訊息進行資訊、檔案共享,等等。

微軟 Teams

微軟 Teams 是一個統一的通訊和協作平臺,結合了工作討論、視訊會議、檔案儲存和應用程式整合。

Teams 是一種基於聊天的協作工具,它為全球、遠端和分散式的團隊提供協作能力,並通過公共空間共享資訊。你可以使用它提供的一些很酷的功能,比如文件協作、一對一聊天、團隊聊天,等等。

谷歌 Hangouts

谷歌 Hangouts 是谷歌開發的一款通訊軟體產品。Hangouts 最初是 Google+ 的一個功能,在 2013 年穀歌開始將 Google+ Messenger 和谷歌 Talk 的功能整合到 Hangouts 中,成為了一個獨立的產品。

Hangouts Chat 是進行組織內交流的一種有效方式。你可以與一名或多名同事傳送資訊,可以建立聊天室進行多人討論,並使用機器人來進行工作自動化。你可以在電腦瀏覽器和 Android 或 iOS 手機 App 中使用 Hangouts Chat。

Zoom

Zoom Video Communications 是一家遠端會議服務公司,總部設在加利福尼亞州的聖何塞。它提供了一種遠端會議服務,結合了視訊會議、線上會議、聊天和移動協作。

Skype 更適合尋找整體商業解決方案的團隊,而 Zoom 更適合頻繁進行視訊聊天和會議的團隊。不過,這兩種工具都不是專門為遠端工作而構建的。

中國版本推薦

騰訊會議、釘釘、飛書、WeLink 等。

12 知識分享工具

知識分享工具為什麼對於 DevOps 來說很重要?

  • 減少知識浪費;

  • 提高新員工的效率;

  • 減少犯同樣的錯誤。

知識分享工具示例

GitHub Pages

GitHub Pages 是一個靜態站點託管服務,直接從 GitHub 上的儲存庫獲取 HTML、CSS 和 JavaScript 檔案,可在構建過程中執行這些檔案,然後釋出網站。你可以在 GitHub Pages 示例集合中看到 GitHub Pages 站點的示例。

Confluence

Confluence 是一個由 Atlassian 開發併發布的協作程式。Atlassian 用 Java 程式語言開發了 Confluence,並於 2004 年首次釋出。

Confluence 是一個 Wiki 協作工具,用於幫助團隊有效地協作和共享知識。你可以用 Confluence 捕獲專案需求、將任務分配給特定使用者,並用 Team Calendar 外掛一次性管理多個日曆。

Jekyll

Jekyll 是一個支援部落格的靜態站點生成器,用於個人、專案或組織站點。它是由 GitHub 聯合創始人 Tom Preston-Werner 用 Ruby 開發的,並採用了 MIT 開源許可。

Jekyll 是一個解析引擎,打包成 Ruby gem,用來基於動態元件構建靜態網站。

谷歌 Sites

谷歌 Sites 是谷歌提供的一個結構化的 Wiki 和網頁製作工具。谷歌 Sites 的目標是讓任何人都能夠建立支援不同編輯器協作的簡單 Web 站點。

這些站點在每一個螢幕上(從桌面到智慧手機)看起來都很棒——做到這些都不需要學習設計或程式設計。

13 總結

這篇文章涵蓋的所有類別可以幫助你更好地實施 DevOps。其中任何一種都很有用,而且我認為所有這些都是你需要的,幫助團隊以可持續的方式向客戶交付價值,並幫助你脫穎而出。

我提到了 DevOps 工具鏈,比如規劃工具、問題跟蹤工具、原始碼控制管理、構建和測試程式碼、持續整合和部署原始碼、管理配置、使用雲平臺,然後是監控和日誌,以及溝通和知識共享。

我希望你能夠喜歡這篇文章。DevOps 是一種令人興奮的工作方式,儘管它不是唯一的方式,甚至不是最好的方式。更好的東西可能會在未來出現,但目前看來,它似乎代表了一種很好的團隊協作方式。它讓團隊共同努力,交付價值,同時也幫助他們專注於客戶,而不僅僅是技術或內部的東西,也包括了速度、學習以及公司的未來。

感謝您的閱讀,也歡迎您發表關於這篇文章的任何建議,關注我,技術不迷茫!小編到你上高速。


文章來源:www.aisoutu.com/a/25434

文章轉自:http://jishuin.proginn.com/p/763bfbd73379

如有侵權,將第一時間刪除文章內容。

更多精彩文章關注【OSC DevOps】,公眾號回覆【加群】,稍後將拉您進DevOps學習交流群。