成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

為新手準備的DevOps工具鏈

譯文
開源
本文在介紹DevOps工具鏈的基本概念、商業價值、創建考慮、工具類別的基礎上,給出詳盡的工具列表,以及DevOps編排的相關討論。

[[436584]]

【51CTO.com快譯】DevOps是一種文化理念、流程和工具的組合。它可以在保證產品卓越質量的同時,提高組織交付軟件的能力,以便更好地為客戶提供服務,并在市場上搶占競爭優勢。DevOps通過讓開發和IT運營團隊實現自動化與集成化工作,協助他們快速、高質量且可控地構建、測試、部署和監控應用程序。可以說,在整個軟件的開發生命周期(SDLC)階段,它能夠實現各項任務的自動化執行,減少錯誤,消除瓶頸,以及減少不必要的返工。

什么是DevOps工具鏈?

DevOps的成功實施,往往依賴一組集成化的工具鏈。此類工具鏈能夠在整個系統開發的生命周期中,自動化地執行設計、構建、測試、交付、部署、管理、以及控制軟件應用等任務。它能夠通過實現包括持續集成、持續交付、自動化協作與編排等關鍵性的DevOps原則,支持開發、運營、以及安全團隊之間的異步協作,無縫地集成DevOps工作流,進而更快、更高效地交付出產品。

DevOps工具鏈的商業優勢

1.快速高效的部署

如今,軟件公司往往需要實現每天數次的部署與更新。這對于DevOps團隊來說是一種挑戰。借助DevOps工具鏈,DevOps團隊可以將自動化集成到軟件開發生命周期的每個階段,從而以更高質量和更快效率的方式部署產品。據此,軟件公司可以確保每隔數小時進行一次的部署,而非過去的每周僅部署一次。

2.事件管理

及時的事件響應能夠確保業務的連續性。如今,企業不應擔心“是否”會發生事故,而需要考慮的是“何時”出現問題。因此,它們必須準備好快速、有效地響應和解決事故的流程,以防止業務的中斷。

DevOps工具鏈可以優化您的事件響應策略,自動化事件管理的大部分初始過程,進而加速解決的效率,并縮短停機時間。同時,工具鏈還可以通過接收和分析來自所有受影響系統的數據,有效地協助創建事件報告。

3.提高軟件質量

軟件錯誤與問題往往會阻礙軟件的開發過程,拖延發布的時間。因此,項目團隊往往需要具備小時級的、快速準確的問題識別和修復缺陷的能力。而DevOps工具鏈可以協作DevOps團隊,主動地識別應用程序的問題,根據問題的嚴重程度,對其進行優先級排序,進而逐步修復問題。

4.工作流程自動化

2019年,在Evans Data Corp的DevOps與云調查中,針對工作流的管理工具,IT經理會偏好收集與分析端到端的業務數據;而開發人員會強調構建可視化的、能夠操控數據的儀表板。借助DevOps工具鏈,項目團隊既可以自動化地實時捕獲數據,又能夠按需準確、無縫地訪問與分析所需的數據。

5.安全性

安全性往往是懸在業務目標頭上的“達摩克利斯之劍”。不過,許多組織一直未能就“誰負責安全”達成共識,這直接導致了數據意外泄露、與業務攻擊事件的頻發。而DevOps工具鏈可以給技術團隊帶來持續監控、合規、數據加密、以及事后審查報告等,組織級別的安全態勢。

如何構建強大的DevOps工具鏈?

強大的DevOps工具鏈在加速DevOps優勢方面,發揮著至關重要的作用。DevOps工具鏈必須遵循組織級別的方法,跨越所有團隊、業務、流程、系統和應用程序。此外,它必須結合對于每種工具如何優化,以及加強DevOps生態系統中其他工具的洞見。

雖然DevOps工具鏈并沒有放之四海皆準的統一標準,但它們往往涉及到包含由版本控制、代碼質量和持續集成等底層的最佳實踐和流程。在工具的選擇時,項目團隊應考慮諸如:遷移策略、可擴展性、開源性和許可證成本等因素。通常,我們可以從版本控制和配置管理等基礎領域開始,逐步采用持續交付、部署和監控等其他DevOps實踐類工具。

多合一的DevOps工具鏈

多合一的DevOps工具鏈提供了標準的、完備的產品,您可以根據自己的需求進行選擇。對于剛開啟DevOps之旅的組織、或旨在快速啟動項目的團隊而言,這是一種最佳的選擇。那些預先編排好的工具集,能夠促進更高的標準化和命名資源的集成。不過,這些多合一的工具鏈也可能無法與團隊現有的遺留工具進行完美的集成,甚至造成潛在的阻礙。

可定制的DevOps工具鏈

另一種方法是選擇按需定制的工具集,并通過謹慎的編排,以集成到團隊現有的DevOps管道中。這種類型的工具鏈可以防止團隊被工具或供應商鎖定。不過,自定義的DevOps工具鏈可能需要大量的管理資源與標準化的投入。

創建DevOps工具鏈的注意事項

為了創建實用的DevOps工具鏈,組織需要考慮如下四個主要方面:

保持相關性

隨時了解DevOps生態系統中的最新趨勢和創新。團隊可以去主動了解行業內的成功案例,并在不同的技術社區,與他們互動交流與學習。

分析

分析和評估當前的軟件開發過程及使用的工具,包括每個SDLC階段需要的時長、準確性、及其效率。這將協助團隊識別當前系統中的漏洞和混亂的流程。

構建

一旦確定了當前系統中的漏洞,團隊就需要通過選擇工具,來對系統進行必要的修改。同時,他們在將理論知識付諸實踐的過程中,也需要構建出各種工具鏈的原型。

可擴展

為了在當今瞬息萬變的IT市場中占有優勢,企業應當能夠按需進行無縫的調整和擴展。為此,團隊需要長遠地規劃DevOps工具鏈,通過不同的策略來支持持續的維護、升級、定期配置、并能應對各種不確定性。

DevOps工具的類別

項目管理工具

項目管理工具能夠幫助團隊編制滿足客戶項目需求的代碼庫,將它們劃分為更小的任務,并持續監控任務,直至完成。這些工具支持諸如Scrum、精益(Lean)和看板(Kanban)等敏捷項目管理的實踐。該領域的流行開源工具包括:GitHub Issues和 Jira。

源代碼存儲庫

版本控制類工具可以方便多名開發人員,同時在同一個代碼庫上工作。此類代碼存儲工具往往通過與CI/CD、安全性和測試工具相集成,以便代碼在提交到存儲庫時,能夠自動被移至下一步。該領域的流行開源工具包括:GitHub和GitLab。

CI/CD管道

持續集成和部署工具能夠自動化代碼的構建、測試和部署。該領域的流行開源工具包括:市場上最富盛名的Jenkins和Kubernetes原生的CI/CD工具--Argo CD。

自動化測試框架

自動化測試框架包含各種用于自動化全部測試過程的軟件工具、庫和程序。其中包括單元測試、功能測試、合約測試、可用性測試、性能測試、滲透測試和安全測試等。此類工具大多能夠支持多種語言,有些甚至可以利用人工智能,來自動重新配置測試的流程,以響應代碼的更改。當然,此類測試工具往往比較昂貴。該領域的流行開源工具包括:Selenium、Katalon、Appium、Serenity和Robot Framework。

配置管理工具

配置管理工具有助于將基礎設施作為代碼進行管理,從而避免了因跨環境而帶來的配置更改。通過執行腳本,此類工具允許DevOps團隊配置和提供完全版本化和文檔化的基礎設施。該領域的流行工具包括:Chef、Puppet、Ansible和Terraform。

監控工具

監控工具可以通過實時地收集和分析數據,深入了解代碼更改是如何影響應用程序性能的,進而幫助DevOps工程師檢測和糾正系統中的問題。該領域的流行開源工具包括:Data dog、Nagios、Prometheus和Splunk。

持續反饋工具

此類工具通過熱圖(分析用戶的活動)、自助式問題反饋單或調查等各種渠道,收集用戶的反饋,進而協助DevOps工程師解決問題,并提高相應的產品質量。

工件存儲庫

工件存儲庫存儲著所有待更新或更改的“重(heavy)”二進制工件文件。它們是使用內、外部源代碼存儲庫開發出的各種庫、DLL和二進制文件的集合。該領域的流行工具包括:JFrog Artifactory和Nexus Repository。

問題跟蹤工具

在軟件開發生命周期中,清晰的透明度可以為DevOps團隊提供深入的見解。而問題跟蹤工具可以協助他們對問題進行編錄和跟蹤,并以更高效的響應速度去快速解決問題。

協作和溝通工具

DevOps文化的精髓在于不同團隊之間的無縫協作和溝通。而協作和溝通工具就能夠突破開發、測試、運營團隊的位置與時區的障礙,開展流暢的協調和協同工作。該領域的流行工具包括:Slack、Campfire和Skype。

規劃工具

規劃工具可以根據整個組織的業務目標,為利益相關者、客戶和與不同團隊提供所需的透明度,以協助各方制定沖刺計劃。該領域的流行工具包括:Asana和Clarizen。

編排工具

編排是確保自動化工作流實現構建、測試、交付和部署的軟件應用。此類工具既可以由內部開發團隊安裝和管理,又可以讓外包團隊基于SaaS(軟件即服務)來實現。該領域的流行工具包括:CircleCI、AzureDevOps和Jenkins。

源代碼管理

每個組織都需要通過一個集中化的存儲位置,來存放包括數據、文檔、代碼、配置和文件在內的所有關鍵資產。源代碼控制工具不但可以實現該需求,還能夠將數據分類到不同的分支上,以供團隊的使用。該領域的流行工具包括:SVN、Git和Subversion。

數據庫工具

數據庫管理工具能夠方便組織輕松地管理,由各個應用程序開發和處理所產生的大量有價值的數據。該領域的流行工具包括:Razor SQL和Team Desk。

學習和掌握優秀DevOps工具列表

目前,業界有各種付費和開源的DevOps流行工具可供選擇:

1.Docker

作為DevOps團隊最常用的DevOps工具,Docker在DevOps生態系統中已廣受歡迎。據Forrester統計,它早在2018年第四季度就已主導了企業容器平臺的市場。Docker是一個基于Linux的開源工具,且支持容器化。據此,團隊開發出的軟件能夠與其依賴項一起被打包,作為一個整體單元交付,進而消除了單獨管理依賴項的繁瑣。Docker不但具有可移植性、安全性和與其他語言的兼容性,而且能夠與諸如:Ansible、Jenkins和Bamboo等工具無縫集成。

2.Ansible

作為軟件自動化領域的DevOps“寵兒”,Ansible以其自動化優勢而聞名。它通常被用于自動化軟件的添置、配置管理和應用程序部署。同時,開源的Ansible憑借著其無需代理、以及使用YAML語言編寫簡單語法的特性,方便了系統管理員輕松地處理各種復雜的部署。

3.Git

這款開源的DevOps工具能夠使得DevOps工程師輕松地跟蹤開發工作的進度,并協調彼此之間的工作。通過Git,開發者不但可以恢復到以前保存過的工作版本,而且能夠在適當的時候單獨創建分支,并添加新的功能。不過,組織需要為其工作托管一個諸如GitHub的存儲庫。目前,Git已經成為最受歡迎的DevOps工具之一。亞馬遜、微軟和Facebook等科技巨頭都在使用它。

4.Puppet

作為開源的DevOps工具,Puppet通過其數千個代碼模塊,方便DevOps團隊管理與自動化各種軟件檢查、交付和操作。同時,它可以與許多工具無縫集成。不過,免費版的Puppet工具僅適合小型項目。針對大型項目的Puppet Enterprise則可以使團隊擁有更多的資源和代碼。

5.Chef

作為最強大的開源配置管理工具之一,Chef允許開發人員將基礎架構修改為代碼,以實現輕松地管理各類數據、屬性和角色等。與Puppet類似,Chef也可以支持多個平臺,并能夠與基于云端的平臺實現無縫的集成。無論基礎設施的規模如何,Chef都可以自動化基礎設施的配置,應用程序的部署,甚至管理整個網絡的配置。

6.Jenkins

具有快速高效的代碼檢錯能力的Jenkins,不但可以自動化開發團隊的交付管道,而且能夠為DevOps工程師近乎實時地測試和報告代碼中的更改。由于擁有上千個插件的龐大生態系統,因此Jenkins不但可以與市場上幾乎所有可用的DevOps工具相集成,而且能與Linux、Windows和Mac OS X等系統相兼容。

7.Nagios

作為DevOps領域最受歡迎的監控工具之一,免費開源的Nagios能夠協助識別和糾正網絡與基礎設施中的各種問題。DevOps團隊不但可以用它來監控應用程序、服務和網絡協議等方面的狀態,而且能夠記錄各種中斷和故障等事件。目前市場上有Nagios Core和Nagios XI兩個版本。其中,最新版本的Nagios XI提供了更多的新功能。當然,這兩個版本都有相應的論壇支持。

8.Splunk

Splunk能夠讓團隊中的每個成員輕松地訪問和使用到目標主機上的數據和日志。據此,DevOps工程師可以快速地分析和可視化機器數據,并通過獲悉洞察力,來提高生產力和效率。開發人員既然可以開發自定義的Splunk應用,又能夠并將Splunk數據集成到其他應用程序中。

9.Bamboo

由Atlassian于2007年開發的Bamboo,是一種廣泛被使用的持續集成和部署工具。它會將自動化構建、測試和發布集成到單個工作流中。雖然與Jenkins具有相似之處,但是Bamboo并不是一款開源的DevOps工具。通過它,開發人員能夠自動開發、集成、測試源代碼,以及部署應用程序。此外,Bamboo的獨特功能還包括:易用的圖形化用戶界面,自動化完成,與各種工具的集成,以及預構建等能力。

10.ELK Stack

Elasticsearch、Logstash和Kibana三種DevOps開源工具的組合被稱為ELK Stack。其中,Elasticsearch是一個搜索和分析類引擎,Logstash會從各個來源收集數據,并由Elasticsearch存儲,而Kibana是一個可視化層次。ELK Stack可以被用于集中各種日志記錄。它不但具有多個插件,而且擁有一個活躍的支持社區。

11.Kubernetes

該容器編排平臺發布于2015年,可以幫助團隊輕松地管理大量容器。在將容器化應用程序部署到一組服務器上后,Kubernetes會自動進行分發和調度。當然,Kubernetes 只是一個編排平臺,并非一套完整的解決方案。它必須與諸如Docker等其他工具配合使用,實現開發、分發和運行容器。

12.Selenium

作為著名的自動化Web應用測試工具,開源的Selenium正在被谷歌和IBM等許多財富500強公司所使用。Selenium的獨特之處在于,其測試腳本可以采用Python和Java等多種語言編寫。它能夠與Windows、Mac和Linux等操作系統相兼容,并適用于任何瀏覽器。為了實現持續測試目的,Selenium應當與Docker和Jenkins相集成。

13.Vagrant

作為一種倍受歡迎的開源DevOps工具,Vagrant可以讓開發者、操作員、以及設計師在共享的簡單且單獨的工作流中,開發和管理虛擬機環境。通過復制生產環境,Vagrant能夠方便DevOps工程師在生產過程的早期,識別和修復各項錯誤。同時,該工具也可以輕松地與Ansible、Chef和Puppet等相集成。

14.Maven

開源的Maven工具主要被用在Java類型的項目中,其主要功能是對自動化構建過程和依賴項進行解析。Maven能夠協助編譯源代碼,運行單元測試和功能測試,并將結果集成到JAR、WAR和RPM等文件包中,進而上傳到Nexus或Artifactory等遠程數據倉庫中。同時,由于該工具是基于項目對象模型的概念開發的,因此Maven會依賴于XML,并帶有執行常規任務的預定義指令。

15.Gradle

同樣作為DevOps自動化開源工具的Gradle,能夠支持采用包括Java、C++和Python等多種語言編寫代碼。盡管Gradle構建在Apache Ant和Maven之上,但它使用基于Groovy的特定領域語言,來描述構建。自2009年被發布以來,該工具一直在多種項目構建中提供穩健的服務。而且由于能夠提供增量式構建、構建緩存和守護進程,因此Gradle比Maven更加高效。

DevOps的編排

DevOps編排對于任何正在或已完成自動化實施的組織來說,都是至關重要的一步。它能夠通過協調由DevOps實踐進行自動化的所有任務,以提供改進和優化的建議。總的說來,DevOps編排可以提供如下業務優勢:

  • 更快的軟件交付
  • 快速發布新的功能和結構
  • 最小化部署的時間
  • 降低服務交付的成本
  • 提高產品的可靠性

雖然DevOps編排能夠方便分析師、IT經理和QA人員根據自己的興趣,通過快速實施,在適當的構建和配置級別上,實現完備的產品環境,但是編排在DevOps中并非一蹴而就。團隊往往需要通過不斷測試和積累經驗,才能構建出完全符合其業務目標的編排工具,進而充分利用其自動化,給項目和產品帶來深度和廣度上的全面轉變。

原文標題:DevOps Toolchain for Beginners,作者:Vishnu Vasudevan

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

 

責任編輯:華軒 來源: 51CTO
相關推薦

2020-12-21 15:30:35

Python工具編程語言

2021-01-29 15:50:45

DevOps運維

2020-08-21 07:00:00

DevOpsIT開發

2021-03-06 08:05:54

工具DevOpsLighthouse

2020-07-14 21:53:13

Python Python 工具開發

2019-12-12 09:30:31

工具代碼開發

2020-09-24 10:50:10

運維架構技術

2022-07-04 07:56:04

DevOpsDevStream工具鏈管理器

2010-08-13 11:27:14

DB2基本命令

2020-09-28 09:12:22

DevOps

2022-02-24 23:51:58

多云DevOpsIT

2011-07-18 14:15:55

iPhone iPad GIS

2013-09-12 09:49:36

PHP調試工具PHP調試工具

2021-06-25 09:00:00

Java開發工具

2020-01-07 22:35:57

網絡連接網絡運維

2021-04-07 15:49:23

編程工程師開發

2011-06-27 16:27:31

外鏈

2011-07-03 23:40:54

友情鏈接

2021-12-20 09:29:42

LinuxFreeDOS命令

2022-10-24 09:42:31

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 蜜桃视频成人 | 午夜丰满寂寞少妇精品 | 日日摸日日添日日躁av | h片在线免费观看 | 波多野吉衣久久 | 一本一道久久a久久精品综合蜜臀 | 成人在线免费电影 | 亚洲 日本 欧美 中文幕 | 亚洲国产免费 | 国产高清精品网站 | 欧美黄色大片在线观看 | 日韩精品一区二区三区视频播放 | 日日夜夜免费精品 | 久久久久久国产精品mv | 欧美阿v | 国产午夜精品一区二区三区嫩草 | 久久久久国产一区二区三区 | 日韩精品一二三区 | 亚洲国产欧美在线人成 | 亚洲国产精品suv | 久久久精品黄色 | 国产精品久久久久久久久久 | 日韩一区av | 日日夜夜精品视频 | 欧美日韩国产在线观看 | 亚洲免费在线 | 伊人网在线综合 | www.一区二区三区 | 国产成人精品一区二区 | 国产一区中文 | 老牛嫩草一区二区三区av | 久久亚洲91| 91精品国产91久久久久久三级 | 九九视频在线观看视频6 | 欧美xxxx日本| 成人一区二区视频 | 亚洲免费大片 | 一区二区成人 | 久久久这里只有17精品 | 国产精品视屏 | 青青久久 |