iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 17
0
自我挑戰組

Re : 從懶開始的自動化生活系列 第 17

[D17] : DevOps是什麼?

誒?忘記今天還沒發文了,就簡單聊一下我對DevOps的認知

前言

當我知道我的興趣愛好常出現在DevOps方面的文章後,我的下一個問題便是DevOps是什麼?
在下一個問題便是,該不會選擇DevOps就得換工作了吧?

當然,小孩子才做選擇,我網頁、DevOps全都要可不可以?

DevOps

DevOps是Development跟Operation的融合

想像一下以一個網頁產品的公司來說:
Dev是指那些寫著前後端程式碼的工程師們
Ops則是管理硬體機器,部署雲端平台的"更偏向管硬體"的工程師們,通常在System Level上他們的帳號權限也會比Dev還大,畢竟許多環境例如伺服器、虛擬機、GCP都是他們準備的。

那結合起來後就好似兩組人馬今天都窩在同一個空間工作了

過去可能會發生Dev要發布新版本,因此把新版執行檔傳給Ops,Ops再將版本給部屬上去。
這過程中如果晚了點,可能過了下班時間,事情就會變成明天才能完成。
原本今天就能創造出來的利潤,變成明天才可以創造。
聽起來充滿不便與溝通成本。

因此DevOps源自於我們想更快速迭代我們的產品的需求,
我們想更快將產品觸及到用戶端,
並減少過程中會發生的意外或人力成本。

因此將兩個Team放在一起工作 ? 事情變快了一點,但這仍然不正確。
所謂DevOps是一種MindSet,就像下面這張圖:

我在Commit時,知道會跑過哪些Stag,並且發布到哪個環境。一旦出問題,我知道該去哪個Monitor查;若需要查機器Event Log,我也知道是哪一台。過程中發現部署環節哪邊可以更好,就著手改善它。

意即是Dev在工作時要有Ops的思維,同理Ops在工作時要有Dev的思維。

也可以想成DevOps是一種開發者的文化,或是抽象類別。
一些DevOps相關的職缺則是去實作了DevOps。例如Site Reliability Engineering(SRE)
這邊有篇講得很好的關於SRE和DevOps

我對DevOps這名詞的意涵了解也就到這,至今我是以一個網頁開發工程師的身份,同時做點Ops的事情,以此為樂。
DevOps文化使我更了解部署生態的運行,使我在Issue發生時,有更多想法出現,使我能做一些促進團隊讓大家開發過程更爽快的事情。

祝大家中秋節快樂 :D


上一篇
[D16] : Sentry 如何 Grouping Issues?(下集)
下一篇
[D18]:關於 Git Hook 的 Husky
系列文
Re : 從懶開始的自動化生活30

尚未有邦友留言

立即登入留言