將嗡嗡聲與公牛分開:什麼不能自動化

已發表: 2023-05-12

無論您是 DevOps 主管、站點可靠性工程師、IT 經理還是 CTO,自動化很可能已經根植於您的工作中。

在許多方面,術語自動化和 DevOps 是同義詞。 近年來,感覺這個詞已經流行起來,因為旨在使某些東西自動化的解決方案幾乎沒有盡頭。

Red Hat 最近的一份報告發現,公司平均已將 36% 的雲操作自動化。 企業成立的時間越長,其手動流程就越多地被自動化工作流程所取代。

自動化普及率上升的原因有多種:

  • 公司希望開發運營專注於關鍵任務
  • 希望加快發佈時間表
  • 領導者希望團隊具有更多的敏捷性和協作性
  • 眾所周知,手動系統容易出現人為錯誤
  • 對 IT、SRE 和 DevOps 角色的需求超過了填補這些角色的人數

自動化——不僅僅是一個流行語?

Rewind 最近採訪了多位軟件開發領導者,討論他們的自動化經驗、自動化如何符合他們團隊的目標,以及他們用於製定決策的框架。

One Trust 旗下 Tugboat Logic 的首席技術官 Scott Sturgeon 對此持懷疑態度。 “在我看來,自動化已經成為一個流行語。 並非所有事情都可以以理智的方式自動化。 並非一切都應該如此。 重複和耗時的事情是我傾向於關注的事情。 這些天你聽到的大多數自動化都歸結為 CI/CD——持續集成、持續部署。 您可以構建非常複雜的管道來自動更新您的生產實例。 如果你準備好正確地做到這一點,那就太好了。”

“我認為自動化是一個非常通用的術語,你想要更具體地說明你的實際目標。 這是一種技術和方法,而不是一種結果,”Puppet 的 Field CTO Nigel Kersten 解釋道。 你不是為了自動化而自動化,你自動化是因為你想達到一個結果。 我還認為這是一個很好的營銷流行語,因為它引起了當地人的共鳴,他們認為“我可以讓機器人做到這一點。” 所以你必須謹慎使用這個詞。”

牢記這一點,以下是一些經常過度自動化或因自動化而不必要地複雜化的首要任務。

什麼不能自動化

儘管大多數任務都可以自動化,但這並不意味著它們應該如此。 以下是關於可以從待自動化列表中刪除的內容的一些快速提示:

  • 投資回報率低的任務​​,其中所需的努力量不會產生任何顯著回報
  • 用戶體驗測試或任何你有主觀結果的地方
  • 具有高度不可預測性的任務
  • 重複性低的任務
  • 沒有明確定義的程序/模式的任務

“計算機做不好的事情不應該自動化。 例如,很多公司都在嘗試自動化代碼審查,”Scott 解釋道。 “這對於遵循語法或奇怪的循環依賴關係的事物來說很好。 計算機可以解決這些問題。 但是,查看一段代碼的邏輯以及是否正確完成,這不是計算機可以做得很好的事情。 在我看來,代碼審查仍然需要一個人來查看。”

Rewind 的首席技術官 James Ciesielski 擴展了這種基於風險的開發自動化方法。 “在決定將哪些內容自動化時,我們會評估讓人員參與維護流程的風險。 我見過開發環境,人們被授予開發團隊上帝般的特權。 通常這是以服務客戶的名義進行的,但人們會犯有意或無意的錯誤。”

如何決定什麼需要自動化

現實情況是,許多企業需要將直接或間接影響其產品或服務的事情自動化。 獨特的用例可以在任何環境中出現,尤其是隨著市場競爭變得更加激烈、更多 SaaS 公司上線以及路線圖變得更加雄心勃勃。 但正如地球上任何開發團隊都會告訴您的那樣,他們的待辦事項列表長得不可思議。 作為一個團隊,您如何確定優先順序並就下一步要解決的問題達成一致?

雖然沒有一刀切的決策方法,但 IT 專家使用以下一些信號來評估流程是否適合自動化:

  • 手動:就像手動運行自動執行任務的腳本一樣。 雖然腳本可能比實際執行每個手動步驟更快,但運行腳本所花費的時間仍然可以用在其他地方。 換句話說,如果我必須一直按一個按鈕,我最終可能會把所有時間都花在按那個按鈕上。
  • 重複:大約第二次執行相同的任務後,可能需要自動化。 解決新問題不算數。
  • 可自動化:如果一台機器可以像人類一樣完成同樣的工作,它就可以被認為是辛苦的。 如果任務需要人類真正思考事物,那麼它可能不是一個好的候選者。
  • 戰術:如果有什麼事情一直打擾你的團隊並讓他們陷入“反應”模式,那麼盡量減少這些干擾可能是需要解決的問題。
  • 沒有持久的價值:如果你執行一項任務,而你的產品或服務保持不變,它可能是在增加工作量。
  • 任務隨著運營的增長而增長:如果任務的規模隨著服務規模、流量或用戶數量的增加而增加——這很可能是一個問題。

最後,通常一個好的起點是找到您經常執行並依賴於人的流程(增加價值)。 當涉及到人時,出錯的可能性呈指數級增長。

OwnBackups 的 DevOps 團隊負責人 Lena Feygin 強調對“:自動化所有事物: ”的願望要謹慎和謹慎。 她的建議? “最後,我們只需要自動化真正導致問題的問題,而不是解決不存在的問題。”

從 DevOps 專業人士那裡尋找更多關於自動化的專家建議? 下載我們完整的開發操作自動化指南 - 完全免費。

特別感謝我們在 Rewind 的朋友們對這個話題的見解。
全部的
0
分享
分享0
鳴叫0
固定它0
分享0