2021 年 25 大 DevOps 工具(下)

DevOps 正在改變全球軟件開發的狀態,DevOps 正以某種形式有效地提高提高全球軟件公司的上市速度、可銷售性、創新和產品質量。

2021 年是 DevOps 的重要一年。由於 DevOps 跨越開發、運營、IT、安全和產品團隊等等,以及軟件開發的不同階段,因此有大量工具可供選擇。

本文介紹目前市場上可用的一些頂級 DevOps 工具,同時牢記 CI/CD 生命週期的重要類別。上篇爲配置管理、構建、源代碼、部署工具,本篇主要是漏洞管理、質量、監控、協作工具。

網絡威脅及漏洞管理

TwistLock

對基於容器的應用程序來說,TwistLock 提供了威脅和漏洞。該服務以其與 Kubernetes 和 Docker 容器的集成而聞名。TwistLock 現在歸 Palo Alto Networks 所有,通過其運行時應用安全保護和容器自動掃描進行安全檢查。

TwistLock 有一個強大的文檔,它易於部署並強制優化資源消耗。它還以其 CI/CD 管道集成、對容器安全協議的強合規性和圖像掃描而聞名。

TwistLock 還以其精細的安全分析而聞名。該服務還用 AI 功能來了解環境,儘管有些公司已經發現,它自動觸發的 cron 作業非常令人困惑。

他們還提供基於 SaaS 的安全掃描(prisma 雲)和本地解決方案。

Sysdig

Sysdig 是一種用於雲基礎架構、服務和應用程序的監控工具。Sysdig 通常用於對PaaS基礎設施進行容器安全確認、監控及監控安排。

Sysdig 還可用於監控 OpenShift 集羣,因爲它提供粒度數據來分析指標。

使 Sysdig 脫穎而出的是其容器監控與編排層的強大集成。

如果你想深入瞭解進程網絡流量,Sysdig 也很有用。Sysdig Opensource 允許在內核系統調用級別權限以獲取主機的詳細信息。捕獲信息過程也可以通過 DaemonSet 或直接代理過程自動部署爲 Docker 容器。

Anchore

Anchore 是一個完整的容器安全工作流解決方案,可與各種開發工具和平臺無縫集成。Anchore 爲一系列不同的應用程序提供定製的容器檢查和合規性解決方案,使團隊能夠符合行業安全標準。 安全團隊可以審計和驗證整個組織的合規性。

功能包括:

  • 支持webhook,包括雲託管或本地 Kubernetes 環境和 CI/CD 平臺

  • 基於策略的安全性和合規性

  • 檢查:

    • 漏洞掃描
    • 祕密和密碼
    • 操作系統包
    • 第三方資料庫檢查等

質量/測試

JMeter

JMeter 是一種用於測試 Web 應用程序的負載測試工具。即使 JMeter 用於負載/性能測試,它仍然可以用於啓動 API 調用、狀態代碼和響應。JMeter 還支持很多插件。

還可以使用 JMeter 的併發線程池大小這個特徵,在測試期間爲每個線程啓動多個連接。

JMeter 是獨立於平臺的,可以在不同環境下流暢運行。

可通過多種方式查看測試結果,包括圖形、圖表、樹視圖、XML 和 JSON。

JUnit

JUnit 是一個單元測試框架,主要用於 Java 應用程序。JUnit 框架屬於 Java 框架的 xUnit 家族。

JUnit 使用註解來確定在測試中應該使用什麼方法。其測試運行器功能也因其自定義功能而在開發者社區中享有盛譽。你還可以在 JUnit 中使用斷言來測試預期結果。

在 JUnit 中,你可以在多個參數之間使用不同的組合。爲整個應用程序創建、管理豐富的單元測試用例套件,在 JUnit 的幫助下變得非常容易。JUnit 還可以在模塊或系統級測試之前自動測試應用程序的所有功能及單元。

Selenium

Selenium 是一個端到端的測試軟件測試平臺,以其用戶友好的用戶界面而聞名,它允許測試人員模擬 Web 系統行爲、發送 API 請求並分析系統行爲。

Selenium 允許使用 RUBY 或 HTML 編寫複雜和高級的測試腳本,以解決多個級別的複雜性。

Selenium 爲 Web 應用程序開發人員提供了一個完整的 IDE,用於編輯、記錄和調試測試。可以爲多個測試用例設置自定義的起點和斷點。

Selenium 的其他一些主要特性包括:

  • 與多個開發平臺集成,如 Jenkins、Maven、TestNG、QMetry、SauceLabs
  • 使用 Selenium Grid 進行並行測試
  • 兼容所有著名語言,包括 Java、Ruby、C#、PHP、JavaScript、Perl 和 R

ZTF

目前市面上的自動化測試框架主要分爲單元測試框架和某種領域的自動化測試框架,這些框架往往與各個語言綁定,需要將這些自動化測試框架的測試腳本統一管理起來,ZTF自動化測試框架由此被開發出來。ZTF聚焦於自動化測試的管理功能,提供了自動化測試腳本的定義、管理、驅動、執行結果的回傳、Bug的創建以及和其他自動化測框架的集成。

ZTF解決如下問題:

  • 用例信息的管理
  • 測試腳本的執行
  • 測試結果的比對
  • 缺陷Bug的提交

ZTF具有語法簡單、跨平臺、跨語言、跨框架、工程化、跨場景的特點,可很好地驅動8種單元測試框架、5種自動化測試框架來執行測試,並把最終結果回傳給禪道,進行統一的報告展示,打通了項目管理和持續集成工具之間的溝壑,貫穿持續集成、持續測試、持續部署等DevOps生命週期的不同階段。

SonarQube

SonarQube 是一個開源工具,用於代碼質量、持續檢查、安全和錯誤分析。它適用於 Java、Python、XML 和 PHP 以及許多開箱即用的語言。該工具可以通過 XPath 表達式動態添加規則,還可以自定義該工具以強制執行某些應該忽略異常的情況。

SonarQube 主要用於靜態分析。它與 GitLab 有很好的集成。SonarQube 的儀表板和高級跟蹤,讓你可以對代碼質量和檢查進行大量控制。

SonarQube缺點:

  • 和 JavaScript 的配合不太順利
  • 有時速度慢
  • 對第三方工具和插件的支持有限

記錄和監控

Grafana

Grafana 是一種基於 Apache 2.0 許可證構建的開源分析和監控解決方案,以其出色的 UI、圖形、圖表、實時分析和觸發器而聞名。Grafana 可以從多個來源提取數據,包括 Graphite、InfluxDB、OpenTSDB 和 Prometheus。

Grafana 主要用於監控 Docker 容器、網絡設備、帶寬、數據流、虛擬服務器、Azure 基礎設施、數據庫和 Web 應用程序。Grifana 還以其插件以及與 Telegraf 和 Zabbix 的無縫集成而聞名。 Grafana 可以將粒度數據可視化,包括中斷的確切時間、中斷前的事件、用戶日誌、數據中心溫度和性能預測等指標。

New Relic

New Relic 是一個全棧監控工具,用於跟蹤基於雲的應用程序和軟件。New Relic 提供豐富的儀表板、分佈式跟蹤支持、詳細日誌、自上而下的可見性和監控。New Relic 對後端調用具有強大的監控能力,可以詳細說明系統速度變慢的原因。

該工具對於需要詳細分析多個堆棧配置文件的公司非常有用。

New Relic 價格昂貴,但該公司最近制定了基於消費的定價模型。

New Relic 的一些缺點包括:

  • 客戶支持較弱
  • 即使在基於消費的定價模型之後也很昂貴
  • 調試複雜困難

Nagios

Nagios 是一個開源軟件,可以監控系統、網絡和基礎設施。它主動監控服務的健康狀況並維護日誌存儲文件。它還顯示停機原因、停機持續時間以及可能觸發停機的事件。

Nagios 還提供了幾個配置選項和警報功能。你可以抑制主機的警報、在主機上強制實施維護模式、自定義警報的通知設置等等。

Nagios 支持數百個插件。你還可以創建自己的自定義並開發自己的插件支持。

但是,由於 Nagios 相對較舊,因此很難使用最新的基礎架構進行操作。它缺乏數據庫驅動的配置並強制你使用配置文件。

ITSM 和協作

ZenTao

禪道是一款開源的研發項目管理軟件,基於敏捷和CMMI管理理念進行設計,完整地覆蓋了項目管理的核心流程。集產品管理、項目管理、質量管理、文檔管理、組織管理和事務管理於一體,支持產品端到端的全生命週期管理。

禪道管理思想注重實效,功能完備豐富,操作簡潔高效,搜索功能強大,統計報表豐富多樣,軟件架構合理,擴展靈活。

禪道還實現了Jenkins與Gitlab的集成,更好地支持DevOps的CI和CD週期。

Slack

Slack 是協作和通信工具,最近廣受歡迎。Slack 以其實時對話、搜索功能和友好的用戶界面而聞名。

由於其強大的用戶界面、有趣的功能和敏捷性,Slack 正在迅速取代軟件行業的電子郵件。

還可以使用編程爲 Slack 製作自定義聊天機器人、基礎設施例程和觸發器。

Microsoft Teams

Microsoft Teams 是一種通信和協作工具。它對在 Windows 生態系統中工作的公司很有用。除了即時消息服務之外,Teams 也很有用,因爲它與 Azure DevOps 平臺集成。你還可以將你的團隊與 Azure Repos 和 Azure Pipelines 連接起來。

團隊提供不同的渠道,團隊可以在其中相互協作。這將創建一個特定於項目的通信存儲庫,你可以隨時搜索它。

其他功能包括:

  • 文件回收
  • 電話/視頻會議
  • 聊天機器人集成
  • Office 365 集成

衆多的可用工具可能令人望而生畏,但選擇本身是一件好事。缺乏標準化和自動化可能會在入職或交接過程中產生極高的學習曲線。選擇原則是不要投資於相似、重疊的工具而浪費時間和財務資源。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章