Upgrade to Pro — share decks privately, control downloads, hide ads and more …

20210824 雲原生人才尋找的難處及常見誤區探討

D907136acebc72f1df878541b26f271a?s=47 Phil Huang
August 26, 2021

20210824 雲原生人才尋找的難處及常見誤區探討

D907136acebc72f1df878541b26f271a?s=128

Phil Huang

August 26, 2021
Tweet

Transcript

  1. 雲原生人才? 看得到,找不到 Phil Huang 黃秉鈞 <pichuang@pichuang.com.tw> SDN x Cloud Native

    Meetup #39, Webniar, Aug. 25, 2021
  2. WARNING • 本次分享無深度技術含量 • 建議當廣播節目收聽 • 歡迎直接開麥交流

  3. 個人立場偏頗聲明 • 因職業生涯皆住在地端打轉,所以會比較以地端 IT 基礎架構師角度出發 • 本人主要技能樹範圍 • Linux 作業系統:Red

    Hat Enterprise Linux 6 / 7 / 8 • 虛擬化平台技術:OpenStack / VMware vSphere • 容器和容器化平台技術:Kubernetes / OpenShift / Tanzu • IT 自動化技術:Ansible • 虛實網路技術:主要看虛擬網路居多 • 主要背景以中大型公司為主
  4. 地端和雲端 IT 人才技術棧起始點不同,技術迭代較慢 地端 IT 重視由硬體 採購開始的基礎建 設,包括計算、網 路、儲存 雲端

    IT 重視由三大公有雲 提供服務基礎提供的應用
  5. App 人才技術棧高度一致、但廣度大、技術迭代快 App 應用開發重視 上層軟體架構設計, 框架應用、語言熟練 度 三大公有雲提供各式各樣的 SaaS 租用服務

    + 天助自助者 地端廠商提供各自軟 體服務 + 天助自助者
  6. 4 個 IT 人才屬性 • 依據平台位置不同,地端 v.s 雲端 • 依據開發跟管理不同,Infra

    v.s App 雲端 Public Cloud 落地設備熟悉領域 地端 Infra 人才 地端 App 人才 雲端 Infra 人才 雲端 App 人才 程式碼開發能力 低 高 地端 Virtualization / Private Cloud IaC Day 2 Operation IaC Day 0 Design Day 1 Provision Day 2 Operation 深度熟悉特定 雲廠商操作 GAP 混合雲的 採用和建 置 混合雲 Infra 人才
  7. 目前已知台灣現況,以我理解的 0050.TW 為主 • 甲方現況 • 現況 1: 絕大部分政府單位、金融、製造業,因資料需落地,多半還是會重視 地端

    (On-premise) + 離線 (Disconnect) 基礎平台建設 • 現況 2: App 開發只想用服務,不想管服務 • 現況 3: Infra 薪少 事多 人不足 • 乙方現況 • 現況 4: 大~公有雲在各自的資料中心,領域展開了一堆 SaaS 服務,各佔一 片天 • 現況 5: 為了現況 1,大~公有雲廠商都有準備地端服務 • 現況 6: 地端廠商各種想當 SaaS 公司
  8. 看著職稱 但不一定知道他在幹嘛的工作 • DevOps Engineer • SRE Engineer • Cloud

    Engineer 老闆對這些職稱員工的期待
  9. 證照無用論 v.s 證照黃金論 • 獲得證照只是達到均標及格線 (聽得懂名詞,但不一定專精該技術) • 學習的過程積累 >>> 證書本身的價值

    • 先求專精 後求廣度 (盾之勇者 v.s 超級初心者)
  10. 考與不考不是問題,重點是有沒有走過學習歷程 • 什麼狀況該考 • 你為了後續的專精知識 (Professional+) 路線而考,如三大公有雲、地端 • 物以稀為貴或已知困難,如 CCIE、Offensive

    Security、CISSP • 證明有基礎知識及能力,如 CCNA、CK{A,AD,S} • 自認很難單靠履歷拿到面試門票者 • 什麼狀況不太需要考 ◦ 不需要靠證照證明自己能力者 ◦ 通用常識類,如文書處理證照,但不代表不用學,你確定你真的會用 Word 或 Excel ? ◦ 技術變化很快,如程式語言,不如搞個 side project 比較快 個人心態:反正都花時間讀書了,就順便考一考
  11. 15 Top-Paying IT Certifications for 2021 Ref: https://www.globalknowledge.com/us-en/resources/resource-library/articles/top-paying-certifications/#methodology

  12. 常見誤解:會容器使用 跟 會容器平台管理 是不同層次

  13. 常見誤解:會容器使用 跟 會容器平台管理 是不同層次

  14. Kubernetes 是現行混合雲平台常見標準 • 先有容器服務,才有容器平台的需求

  15. Kubernetes 容器平台的技術門檻 CKAD • Core Concepts 13% • Configuraiton 18%

    • Multi-Container Pods 10% • Observability 18% • Pod Design 20% • Service & Networking 13% • State Persistence 8% CKA • Cluster Architecture, Install, Configuration 25% • Workloads & Scheduling 15% • Service & Networking 20% • Storage 10% • Troubleshooting 30% CKS • Cluster Setup 10% • Cluster Hardening 15% • Systen Hardening 15% • Minimize Microservice Vulnerabilites 20% • Supply Chain Security • Monitoring / Logging / Runtime Security 20% • Kubernetes 本身是就是一個扎扎實實地容器調度平台 • 考照目的是為了能夠證明雙方交流 K8s 和容器技術等級有一定基礎
  16. Kubernetes 容器平台的組織文化挑戰 • 現況 • 會使用 Kubernetes 都是以 App 開發需求為主,因為可快速部署和測試

    • 普遍 App 開發都不太愛維運,因為開發趕死線都來不及了,不太可能叫他管理平 台 • Kubernetes 平台和容器 設計 管理 資安 人才難找,多半都在聚集在乙方或公有 雲為主之中小型甲方 • 甲方多數解法 a. 自建或找廠商提供代管服務:EKS / GKE / AKS / Tanzu / OpenShift / Rancher b. 從 App 團隊選 1 ~ 2 個人擔任管理該平台角色,多半稱呼為 SRE / DevOps Team c. SRE Engineer / DevOps Engineer = 天選之人
  17. 相同挑戰:CICD 持續交付與整合 Ref: https://rickhw.github.io/2018/03/20/DevOps/First-Step-To-CICD/ • Q1: 誰能負責設計 Pipeline? • Q2:

    誰負責建置平台和 後續維運服務,如 GitLab / Jenkins / Harbor / JFrog 等? • Q3: 誰負責跨部門和團 隊的溝通 => 誰要當那位 Jenkins 老爺爺? 10 個人有 11 種 CICD 設計
  18. CICD 持續交付與整合的組織文化挑戰 • 現況 • 普遍 App 開發都不太愛維運,因為開發趕死線都來不及了,不太可能叫他管理平 台 •

    Infra 根本不知道程式編譯過程 • 一堆第三方軟體怎麼維護和選型議題 • 鮮少存在一個人所知道的待整合服務知識都是專精等級 • 甲方多數解法 a. 自建或找廠商統包提供設計建置服務 b. 從 App 團隊選 1 ~ 2 個人擔任設計和管理該平台角色,多半稱呼為 SRE / DevOps Team c. SRE Engineer / DevOps Engineer = 天選之人 = 一條龍工程師
  19. 常見誤解:IT 自動化 Ref: https://ansible.github.io/workshops/ • 自動化只是手動操作的延伸,並 不是代表一定會該領域技術 • 並不會說會寫 Ansible

    的工程師, 同時就會知道如何設定 F5 / Windows / Cisco / Linux 等服務 • 先有人工操作知識積累,才有維 運自動化需求 • 重點是寫 Source Code 下來,需 要基礎軟體工程開發能力跟思維
  20. 常見誤解:設定檔組態管理 v.s 資源管理與部署 Ref: https://www.facebook.com/groups/DevOpsTaiwan/posts/3824636597623358/?comment_id=3824820040938347 • 設定檔組態管理 • 主要負責 Day

    2 維運 • Ansible / Puppet / Saltstack / Chef • 資源管理與部署 ◦ 主要負責 Day 1 部署 ◦ Terrafrom / AWS CloudFormation / GCP Cloud Deployment Manger / Azure Deployement Manager
  21. IT 自動化的組織文化挑戰 • 現況 • 地端 Infra 基本上都不太寫 Code •

    對於地端 Infra 部署,主要是採購硬體軟體、安裝、設定、獲取 Day 2 維運知識 • 甲方多數解法 a. 自建或找廠商統包提供設計建置服務 b. 從 App 團隊選 1 ~ 2 個人擔任撰寫自動化腳本角色,多半稱呼為 SRE / DevOps Team c. SRE Engineer / DevOps Engineer = 天選之人 = 一條龍工程師 = 全棧工程師
  22. DevOps 和 SRE 職位差異 • 早期說法,前者是 Interface,後者是 Implementation • 現在依據職缺需求來看,前者比較偏開發到維運,端到端

    CICD 建置,後者比 較偏全系統監控維運
  23. SRE 定義以 Google 為首 用軟體工程方式解決日常維運以及服務監控 問題

  24. DevOps 職位定義不一致:什麼都是,什麼也不是

  25. DevOps = 天選之人 DevOps: 各職位都不幹的事情

  26. SRE 跟 DevOps 的價差 Ref: https://www.facebook.com/chentien.tsai/posts/10219843238131195 年薪:數字越大越多錢 平均年資 越右邊越資深

  27. 建議 • 求職者 • 不要看到 DevOps / SRE 職稱就有先入為主的想法 •

    面試一定要先問日常實際到底要做什麼 • 呈上 • 雇主 • 了解自己到底什麼業務缺什麼技能 • 多參考國外求職網站的工作描述 (Job Descrition , JD) ◦ Indeed / Linedin • 如果知道目標,但不知道怎麼做,建議挖角比較快... • 然後多挖幾個不同領域...