您現在的位置是:首頁 > 人文

100 個 DevOps 術語,或者,你的 DevOps 怎麼說?

由 skysevenqi 發表于 人文2022-09-22
簡介Application release automation應用程式釋出自動化或 ARA——一種透過自動化 CICD 管道以儘可能少的人工操作將新程式碼部署到生產環境的通用方法Amazon Aurora — 一項 AWS 服務,提供基於雲的

堡壘主機是指什麼

DevOps 工程師和開發人員需要了解有關 DevOps、CI/CD 和雲的這些術語。

你的 DevOps 工程師在說什麼?什麼是 Kubernetes 叢集,為什麼要使用 Terraform 清單配置伺服器?為什麼要關心 Zabbix 代理?您只是希望完成工作並按時啟動專案!

然而,在 21 世紀快節奏的商業世界中,為了生存和成功,企業必須能夠比其他競爭對手更快更好地適應不斷變化的市場條件和客戶要求。從這個角度來看,理解 DevOps 術語對每個企業家來說都是必不可少的。

100 個 DevOps 術語,或者,你的 DevOps 怎麼說?

DevOps 詞彙表

如此說來,IT Svit組成了一個龐大但到目前為止還沒有窮盡的 DevOps 術語列表,用簡單的話來解釋。該列表將隨著時間的推移而擴充套件,因此請隨時將此頁面新增為書籤,並要求對我們遺漏的任何術語進行解釋。這些術語沒有按字母順序給出。

A

Agent代理——伺服器-代理程式的一部分,在某些例項或容器中執行,為集中式伺服器應用程式(如 Zabbix 監控代理)提供輸入

敏捷軟體開發——一種基於短迭代開發衝刺的軟體交付方法,每個衝刺都應該產生一個可操作的產品。這樣可以在需要時輕鬆調整專案要求,並增強開發團隊的創造力和靈活性。

Artifact工件——軟體交付管道中的任何過程描述,可以參考。最普遍的工件是用例、類圖、UML 模型和設計文件。

Amazon AWS — Amazon Web Services — 根據 2017 年 DevOps 報告,最受歡迎的雲服務提供商 (CSP),為各種規模的企業提供各種雲計算服務。

Ansible — 用於各種 IT 任務的自動化引擎,例如雲基礎設施供應和配置。Ansible 是一個開源工具,它透過 SSH 連線、PowerShell 指令碼或各種 API 與多個軟體模組進行互動。

API — 應用程式程式設計介面,一組明確規定的用於各種軟體模組之間通訊的規則。

Apache — 最受歡迎的開源 Web 伺服器之一(僅次於 NGINX),一種用於啟動網站和應用程式的跨平臺工具。

ALB — 應用程式負載平衡 — 一種 AWS 服務,用於在多個可用區中的多個應用程式例項之間拆分傳入流量,以確保您的應用程式順利執行。

ASG — Auto Scaling Group — 一種 AWS 服務,用於將多個 EC2 例項組合在邏輯組中,以簡化基礎設施設計和管理;該組由新增或刪除以滿足工作負載需求的相同例項組成。

AWS CLI — AWS 命令列介面 — 一種用於從命令列終端管理各種 AWS 服務和產品的 AWS 工具。

Application release automation

應用程式釋出自動化或 ARA——一種透過自動化 CI/CD 管道以儘可能少的人工操作將新程式碼部署到生產環境的通用方法

Amazon Aurora — 一項 AWS 服務,提供基於雲的關係資料庫,成為AWS 歷史上增長最快的服務。這個資料庫比 MySQL 快 5 倍,比 PostgreSQL 快 3 倍,更不用說它是許多 AWS 產品和服務的預設資料庫。

Asterisk — 用於透過 Internet 進行電話呼叫的開源平臺。它是最靈活的解決方案之一,可以透過 API 與多個軟體工具互動,實現多功能和高效的業務間通訊。

B

堡壘主機——用於訪問私有網路和抵禦駭客攻擊的特殊伺服器。通常託管單個應用程式(如代理伺服器)和用於訪問和管理底層雲基礎架構的 SSH 金鑰。

分支——分支是 GitHub 或其他程式碼版本控制系統上專案程式碼的單獨副本,允許許多開發人員同時處理專案。

Bucket — Amazon S3(簡單儲存服務)中的一個邏輯單元,用於儲存多種型別的物件(主要是各種資料和描述它的元資料)。

備份——複製重要資料以提供備用副本並實現按需恢復的過程;以及備份過程的結果,即包含檔案的存檔。

後端——使用者無法直接訪問的程式引擎。該引擎接收來自使用者介面的請求並執行某些操作,包括將資料載入和儲存到資料庫等。

構建——程式程式碼的特定版本,通常稱為新功能開發階段。最重要的構建是 Canary 構建,其中測試新程式碼是否符合生產中現有的應用程式功能。

Bare-metal

裸機——軟體安裝在物理裝置(硬碟)上的情況,省略了虛擬化層。

C

Canary 版本——登臺伺服器,與生產環境完全相同。新的軟體版本在那裡執行,以確保在將現有功能和程式碼推廣到整個使用者群之前符合現有的功能和程式碼。

雲計算——一種透過 Internet 訪問虛擬伺服器網路以收集、處理和儲存資料、執行應用程式和管理其他資源的主導 IT 範例。與為此目的使用專用伺服器或個人計算機相反。

持續交付——一組軟體開發和運營實踐、工作流和工具,旨在確保軟體交付生命週期的所有日常操作都是自動化的(構建、測試、登臺、監控、警報、日誌記錄、備份、恢復、負載平衡等)。 ) 唯一的例外是手動啟動將就緒程式碼部署到生產環境。這是 DevOps 的核心實踐,以及持續整合和基礎設施即程式碼。

持續部署——持續交付的一個特例,新程式碼部署到生產環境也是自動完成的。但是,這在某些情況下是不合適的,並且很大程度上取決於您的產品和業務模型的特定要求。

CI/CD——持續整合/持續交付——現代 DevOps 文化的基礎。CI 確保新程式碼每天多次提交到集中程式碼儲存庫,以透過自動化單元測試並啟動新軟體構建。如果測試成功,CD 會確保新的應用程式版本自動推送到登臺和生產環境,而不會造成任何服務停機。CI/CD 工作流程可確保儘早發現並修復所有錯誤,並且產品始終可用。

叢集——一組互連的例項(裸機伺服器、虛擬機器、Kubernetes Pod 等),它們被視為單個實體,以實現負載平衡、自動擴充套件和高可用性。

提交——將程式碼推送到 Git 儲存庫並推送生成的程式碼片段的過程。

Cron 作業——一個計劃的程序,將在特定時間在伺服器上執行特定指令碼。

容器——一個軟體信封,將應用程式和執行它所需的所有資源與其執行的基礎設施分開。由於使用 Docker 容器,任何應用程式都可以在任何帶有 Docker 的作業系統上執行,並且單個容器的任何問題都不會影響系統的其餘部分。

CloudWatch — Amazon CloudWatch 是預設的 Amazon 服務,用於監控在其上執行的基礎設施和應用程式。CloudWatch 有助於監控和記錄事件、配置智慧警報和有效管理系統資源。

Configuration drift

配置漂移——獨立更新各種伺服器的不良結果,導致不同的軟體配置和狀態。最好透過將不可變基礎架構部署為程式碼的做法來刪除。

配置管理——藉助 Kubernetes、Ansible、Puppet、Chef、Saltstack 等自動化配置管理工具設定和維護所需軟體生態系統引數的過程。

D

DevOps — 軟體交付方法,以及確保 IT 運營可靠自動化並不斷提高質量所需的一組實踐、工作流和工具。

暗啟動——在不通知使用者新的可用功能的情況下將程式碼釋出到生產環境的做法。程式碼在生產中執行以進行最後一輪測試,然後宣佈釋出新功能,而該功能本身已經可用。

Docker——一個用於構建、交付和執行應用容器的開源平臺。Docker 是現代雲計算的基礎,因為它允許以最高效率利用雲資源,為構建雲基礎設施提供無處不在的層。

Dockerfile ——Docker 容器構建過程的文字描述,包含所有需要的命令。Dockerfiles 允許輕鬆高效地配置和管理容器的建立和啟動。

Docker Swarm — 由 Docker 開發的容器編排引擎。它是一個內建的 Docker 容器叢集和排程工具,能夠同時執行數千個容器。不幸的是,它無法擁有與 Kubernetes 相同的功能,並且從 2018 年年中開始完全停止使用。

Deployment ——軟體交付生命週期的一個階段,集中在打包新的軟體程式碼、將其交付給客戶並更新正在執行的應用程式,最好不要中斷終端使用者體驗。

Django 框架——一個面向簡潔設計、快速開發和高效能應用程式的高階 Python 框架。已在 Web 開發和大資料處理中得到廣泛採用。

Datadog — 一種高效的雲監控服務,允許使用基於 SaaS 的平臺分析任何規模的任何基礎設施、資料庫或應用程式中的流程。

E

Environment

——在軟體生命週期的各個階段(開發、測試、登臺、生產)執行軟體所需的所有伺服器資源(作業系統、庫、API、工具和框架等)。

ElasticSearch——一個基於 Apache Lucene 的 RESTful 分散式資料搜尋和分析引擎。作為 Elastic 堆疊的核心,Elasticsearch 允許儲存和處理來自多個雲監控和日誌工具的資料。

Envoy — 用於處理微服務之間流量的重型 C++ 代理。

EC2 — Amazon Elastic Compute Cloud — Amazon Web Services 的核心產品,為在雲中執行應用程式提供多種型別的虛擬伺服器。

EKS — 適用於 Kubernetes 的 Amazon Elastic Computer Service — 一項託管的 Amazon 服務,允許任何人在 AWS 基礎設施上部署和執行 Kubernetes,而無需深入瞭解並自行配置叢集。

F

FluentD — 一個用 Ruby 編寫的開源資料收集和處理工具。它允許來自各種工具(如 ElasticSearch)的輸入,併為配置了多個外掛的各種儀表板提供輸出。

Fargate — Amazon Fargate 是一項 Amazon 服務,用於在 EKS 等託管基礎設施上執行 Docker 容器,而無需進行任何配置。它在無伺服器計算計費方案下工作——您指定需要完成的工作併為消耗的資源付費,無需任何手動叢集配置。

Fail-fast——快速測試想法以確保快速反饋的軟體設計策略。應用反饋後,重複實驗直到獲得滿意的結果。

G

Git——分散式程式碼版本控制系統。每個使用 Git 的開發人員都可以訪問專案程式碼的完整副本和更改歷史記錄,以實現團隊內的協作。

GitHub——最流行的基於 Web 的程式碼託管,執行所有 Git 功能並新增自己的功能。GitHub 是開源和專有軟體開發的核心。

GitLab——一個基於 Web 的開源 Git 門戶,針對 DevOps 效能進行了調整,因為它內建了對 Gitlab CI 等 CI/CD 工具的支援。

Gitlab CI — Gitlab 的 CI/CD 執行器,它允許開發人員在每次提交後自動構建他們的程式碼。

H

Helm——在 Kubernetes 上執行的應用程式管理器。該工具允許透過方便的 Helm 圖表大規模管理微服務,並確保複雜的 Kubernetes 基礎設施的平穩執行。

I

Infrastructure基礎設施——執行應用程式以及收集、管理和儲存資料所需的硬體、軟體和流程的整體組合。

IaC — 基礎設施即程式碼 — DevOps 的基本原則之一。這意味著基礎設施配置是使用機器可讀的宣告性檔案完成的,而不是手動或使用互動式工具。這些檔案(如Kubernetes 或 Terraform清單)可以儲存在 GitHub 儲存庫中,與程式碼一樣進行調整和版本化,從而提供基礎設施配置的高效自動化。

IaaS — 基礎設施即服務,一種 IT 管理模型,其中計算資源和執行它們所需的服務作為服務提供,以支援各種平臺和應用程式的執行。

Image

——Docker 映像是容器的不可變快照,包括有關如何為應用程式構建工作 Docker 容器的說明。

InfluxDB — 一個用於處理時間序列事件的開源資料庫。它是用 Go 編寫的,用於基礎設施監控、高可用性資料儲存和實時分析。它最適用於Prometheus 和 Grafana 等DevOps 工具。

Instance 例項——簡而言之,這是您執行應用程式的虛擬機器。更廣泛地說,這是執行應用程式所需的一組資源(例如 Docker 容器)。

I/O throughput I/O 吞吐量——每秒輸入/輸出操作的數量,網路或驅動器的資料傳輸能力的特徵。

Ingress controller入口控制器——用於在 Kubernetes pod 中提供負載平衡的軟體模組。

J

Jenkins — 一個開源 Java 伺服器,支援開箱即用的軟體交付自動化。

Jenkins 工作——Jenkins中的一個過程,需要構建程式碼、執行單元測試、生成程式碼質量指標、將新的應用程式版本部署到生產環境等。

K

Kubernetes——谷歌的開源容器管理平臺。Kubernetes 和 Docker是在雲中執行現代工作負載的支柱。

Kibana — Elastic 堆疊的一部分,負責資料視覺化和導航 ELK 叢集。

L

Logstash — Elastic 堆疊的一部分,負責伺服器端資料收集、處理和傳輸到儲存。Logstash 對於構建雲監控解決方案至關重要。

Lead time提前期——將新程式碼批次從提交轉移到釋出所需的時間。

M

微服務——軟體架構 (SOA) 中面向服務的方法的一個示例,將單體應用程式拆分為一組鬆散耦合的服務,負責特定方面的操作。這些細粒度的服務透過輕量級協議和 API 進行互動,以提供產品的靈活性和可擴充套件性。

MongoDB — 最好和最受歡迎的開源 NoSQL 資料庫之一,專門用於以庫的形式儲存各種型別的文件,而不是在具有列和行的表中。這意味著儲存的資料可以輕鬆調整,甚至資料庫本身的結構也非常靈活,這對於大資料分析專案非常有利,在這些專案中,在不同的時間段都有多種資料型別的處理。

MTTR — 平均恢復時間 — 故障系統元件重新開始執行的平均預期時間;故障恢復場景、系統壓力測試和效能檢查的主要引數。

N

節點——Kubernetes 叢集中的物理機或虛擬機器,用於託管執行 Docker 容器的 pod。

Node pool

節點池— Kubernetes 節點池是一組叢集點,將具有相同配置的機器聯合起來,本質上可以將其視為一個實體並進行管理。

Nexus3 — Sonatype 的釋出控制平臺,專為組合來自多個開源模組的輸入而構建,以確保快速、安全和高效的軟體交付生命週期。

Nginx——當今最流行的網路伺服器。負載平衡、反向快取和代理的內建功能使其成為許多用例的絕佳選擇。

Orchestration編排——在 SOA、虛擬化、環境供應的上下文中自動化 IT 任務(特別是容器管理和基礎設施配置)的實踐。簡而言之,它是一個使用預定義指令碼執行預定義任務的過程,該指令碼由Terraform等互動式工具(專為配置編排目的而構建)執行。

開源——軟體交付正規化,版權所有者授予使用者訪問應用程式原始碼的許可權,以及出於任何目標閱讀、調整和分發給任何人的權利。

OpenStack——一個用於構建本地雲基礎設施的開源平臺。

OpenShift——由 Red Hat 開發的企業級容器管理平臺,適用於在本地雲基礎設施上執行的 Kubernetes。

P

PaaS — 平臺即服務,當開發人員獲得開發軟體所需的所有庫、工具和服務時的軟體交付模型,所有底層基礎設施都由提供服務的平臺處理。

Prometheus——一個開源的雲監控解決方案,具有強大的查詢語言、時序資料庫、維度資料模型和智慧告警能力。

供應——為使用者提供新環境的過程,主要是為開發人員提供的構建和測試環境。隨著資源的虛擬化,所需的作業系統和中介軟體透過Terraform 和 Kubernetes等配置編排工具進行配置和維護。

Python — 一種解釋型高階程式語言。由於其效率和速度,Python 現在被廣泛用於從網站開發到大資料分析的任務。

Pod — 一個基本的 Kubernetes 結構單元,一組部署到單個主機的 Docker 容器。

Playbook — Ansible playbook 是基礎設施部署的說明,包含有關執行一系列命令以執行特定任務的詳細指南。

ProxMox — 一個基於 Debian 的開源平臺,用於部署和管理虛擬機器。

生產環境——目標受眾使用軟體產品或服務的環境。

R

RDS — AWS 關係資料庫服務,一種受益於 AWS 服務的分散式特性的雲資料庫。

Rolling update

滾動更新——一個應用程式的平滑更新過程,沒有任何停機時間,逐個例項執行。它使用 Kubernetes 來確保不間斷的應用程式可用性和積極的使用者體驗。

回滾——手動或自動恢復以前儲存的程式或資料庫狀態。

迴歸測試——對更新的產品版本進行端到端測試,以確保最新版本不會對已經可用的功能產生負面影響。

RabbitMQ — 訊息代理,一種用於從您的應用程式收集訊息並存儲它們直到操作需要它們的軟體。

S

原始碼控制——用於儲存、管理和跟蹤原始碼更改的系統。最受歡迎的是 GitHub、GitLab 和 BitBucket。

S3 — Amazon Simple Storage Service — 一種雲計算服務,用於儲存應用程式穩定執行所需的任何資料物件。

快照— Amazon EBS 快照是用於建立 EC2 例項內容的靜態副本以用於備份和恢復的命令。

Staging environment

暫存環境——生產環境的受控副本,儘可能地與它相似。這允許在釋出到生產之前測試新的軟體版本以發現錯誤。

T

測試自動化——使用特定軟體針對單元測試測試新軟體版本並將實際測試結果與預測結果進行比較的過程。

技術債務- 一種概念,即糾正用於獲得快速結果的簡單程式碼所需的大量開發人員工作,而不是花時間設計和實施最佳解決方案。

U

單元測試——CI/CD 的基礎,單元測試是在構建應用程式之前針對自動化測試程式碼庫對應用程式程式碼進行小塊測試的做法,以最大限度地減少發現和修復錯誤所需的時間,從而縮短上市時間結果是產品。

V

Virtual machine——雲計算系統的基本單元,模擬在主管下執行的物理伺服器。

VPC peering——AWS VPC 是一種在邏輯上隔離一定數量的公共 AWS 雲以建立虛擬私有云的服務。AWS VPC 對等允許在需要時組合多個此類雲的資源。

Vault — 一種 Hashicorp 產品,用於安全地儲存 SSH 金鑰、令牌、密碼、API 金鑰和 Kubernetes 基礎設施的其他重要元素等秘密。

Z

Zabbix — 一種開源雲基礎設施監控服務,用於跟蹤各種網路資源和服務的狀態。由為分散式系統啟用智慧警報的伺服器和代理組成。

100 個 DevOps 術語,或者,你的 DevOps 怎麼說?

IT Svit 關於 100 個 DevOps 術語的最終想法

上面的 DevOps 術語列表絕不是完整或全面的。我們會不時更新它,並感謝您提出問題。如果您需要更多解釋 - 請在下面的評論中留下您的要求!

推薦文章