TL博士
我們將再次在實務中分析 DevOps 工具。
細節和方案下切。
SRE 已從計劃中刪除,因為我們正在與 Ivan Kruglov 一起準備單獨的 Slurm SRE。 該公告將在稍後發布。
感謝 Selectel,自第一屆 Slurm 以來我們的贊助商!
關於哲學、懷疑論和意外的成功
我於 XNUMX 月底參加了在莫斯科舉行的 DevOpsConf。
我所聽到的摘要:
— 大多數任何規模的專案都需要 DevOps;
— DevOps 是一種文化,就像任何文化一樣,它必須來自公司內部。 你不可能僱用 DevOps 工程師並夢想他會改進流程。
— DevOps 轉型所需的最後一項是技術,即我們所教導的 DevOps 工具。
我意識到我們在課程中不包含 DevOps 哲學和文化是正確的,因為這無法系統地教授。 誰需要它,就在書上讀。 或者他會找到一位超級酷的教練,用他的魅力和權威說服所有人。
就我個人而言,我一直是「自下而上的運動」的支持者,即透過工具遊擊式地實施文化。 就像《鳳凰計畫》中所描述的。 如果我們的團隊合作和Git設定正確,我們可以慢慢補充它的規則,然後它就會形成價值。
儘管如此,當我們準備 DevOps Slurm 時,我們只討論工具,我擔心參與者的反應:「你說的很棒。 遺憾的是,我永遠無法實現它們。” 由於存在如此多的懷疑,我們立即停止了重複該計劃。
然而,大多數參與者在調查中回答說,所獲得的知識可以應用於實踐,並且他們將在不久的將來在自己的國家實施一些東西。 同時,我們解釋的所有內容都包含在有用的東西清單中:Git、Ansible、CI/CD 和 SRE。
值得記住的是,一開始他們也說過 Slurm Kubernetes 不可能在 3 天內解釋完 k8s。
我們與領導 SRE 主題的 Ivan Kruglov 商定了一個單獨的計劃。 目前我們正在討論細節,我會盡快發布消息。
Slurm DevOps 會發生什麼事?
節目
主題#1:使用 Git 進行團隊合作
- 基本指令 git init、commit、add、diff、log、status、pull、push
- Git 流程、分支與標籤、合併策略
- 與多個遠端代表合作
- GitHub 流程
- 分叉、遠端、拉取請求
- 關於 Gitflow 和其他與團隊相關的流程的衝突、發布、再一次
主題#2:從開發的角度使用應用程式
- 用 Python 編寫微服務
- 環境變數
- 整合和單元測試
- 在開發中使用 docker-compose
主題 #3:CI/CD:自動化簡介
- 自動化簡介
- 工具(bash、make、gradle)
- 使用 git-hooks 自動化流程
- 工廠裝配線及其在IT中的應用
- 建構“通用”管道的範例
- 適用於 CI/CD 的現代軟體:Drone CI、BitBucket Pipelines、Travis 等。
主題 #4:CI/CD:使用 Gitlab
- 亞特實驗室持續集成
- Gitlab Runner,它們的類型和應用
- Gitlab CI、設定特性、最佳實踐
- Gitlab CI 階段
- Gitlab CI 變數
- 建置、測試、部署
- 執行控制和限制:僅當
- 使用工件
- .gitlab-ci.yml 內的模板,在管道的不同部分重複使用操作
- 包括 - 部分
- 集中管理gitlab-ci.yml(一個文件,自動推送到其他倉庫)
主題#5:基礎設施即程式碼
- IaC:將基礎設施視為代碼
- 雲端提供者作為基礎設施提供者
- 系統初始化工具、鏡像建置(打包器)
- 以 Terraform 為例的 IaC
- 配置儲存、協作、應用自動化
- 建立 Ansible playbook 的實踐
- 冪等性、宣告性
- 以 Ansible 為例的 IaC
主題#6:基礎設施測試
- 與 Molecule 和 Gitlab CI 的測試和持續集成
- 使用流浪者
主題#7:使用 Prometheus 進行基礎設施監控
- 為什麼需要監控?
- 監控類型
- 監控系統中的通知
- 如何建立健康的監測系統
- 適合所有人的人類可讀通知
- 健康檢查:應注意什麼
- 基於監測數據的自動化
主題 #8:使用 ELK 記錄應用程式
- 最佳日誌記錄實務
- ELK堆疊
主題 #9:使用 ChatOps 實現基礎架構自動化
- DevOps 和 ChatOps
- ChatOps:優勢
- Slack 和替代方案
- ChatOps 機器人
- Hubot 和替代方案
- 安全
- 最佳和最差做法
地點: 莫斯科,塞瓦斯托波爾飯店的會議室。
日期: 從30月1日到3月XNUMX日,辛苦工作了XNUMX天。
來源: www.habr.com