Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20221116 混合雲架構師日常 如何使用 WSL 2 搭配 Ansible 自動化進行 A...
Search
Phil Huang
November 16, 2022
Technology
530
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20221116 混合雲架構師日常 如何使用 WSL 2 搭配 Ansible 自動化進行 Azure 維運管理
#DevDaysAsia2022
Phil Huang
November 16, 2022
More Decks by Phil Huang
See All by Phil Huang
20251119 如果是勇者欣美爾的話, 他會怎麼做? 東海資工
pichuang
1
210
20250924 零信任下的容器安全供應鏈:從隔離到信任
pichuang
0
83
20250705 Headlamp: 專注可擴展性的 Kubernetes 用戶界面
pichuang
0
420
20250307 雲端原生:引領數位轉型與永續的雙贏之道
pichuang
0
110
20250116 When Windows Meets Kubernetes…
pichuang
0
620
20241217-Azure Red Hat OpenShift 於 Azure TaiwanNorth 上之雲原生異地備援架構設計
pichuang
0
160
20241112 Real AVS Migration Experience Sharing
pichuang
0
130
Active/Passive HA FortiGate Pair with External and Internal Azure Load Balancer
pichuang
0
590
20240814-採用 Azure VMware Solution 啟動你的 Azure 雲端服務
pichuang
0
170
Other Decks in Technology
See All in Technology
Amazon Bedrock AgentCore ワークショップ JAWS UG TOHOKU / amazon-bedrock-agentcore-workshop-jawsug-tohoku-2026
gawa
9
660
AIソロプレナー時代に2ヶ月で20人増員した事業創造会社の開発組織の話
miyatakoji
0
580
Socrates × Looker 〜セマンティックレイヤーで進化するデータ分析エージェント〜
hanon52_
3
2.1k
Disciplined Vibes: Scaling AI-Assisted Engineering
sheharyar
0
130
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
220
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
530
Djangoユーザが知っ得なPostgreSQL機能 - 設計の選択肢を増やす / Djang-use-PostgreSQL
soudai
PRO
1
230
社内 AI エージェント Synapse と セマンティックレイヤーの育て方
hiroakis
2
1.6k
AI Engineering Summit Tokyo 2026 AIの前に、やることがある 〜医療データ企業の4フェーズ〜
dtaniwaki
0
2.5k
LLMにもCAP定理があるという話
harukasakihara
0
290
LLMと共に進化するプロセスを目指して
ymatsuwitter
12
4k
攻撃者視点で考えるDetection Engineering
cryptopeg
1
1k
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
2
310
WCS-LA-2024
lcolladotor
0
630
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
2
210
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
730
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
250
YesSQL, Process and Tooling at Scale
rocio
174
15k
Become a Pro
speakerdeck
PRO
31
6k
A Tale of Four Properties
chriscoyier
163
24k
Claude Code のすすめ
schroneko
67
230k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
170
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
62
54k
Transcript
混合雲架構師日常: 如何使用 WSL 2 搭配 Ansible 自動化進行 Azure 維運管理 Phil
Huang 黃秉鈞 <
[email protected]
> Senior Cloud Solution Architect 2022/11/16 以部署 Azure Red Hat OpenShift 為例
天下武功,唯快不破 Photo by NASA on Unsplash https://unsplash.com/photos/Q1p7bh3SHj8
黃秉鈞 Phil Huang • 現任 Microsoft Sr. Cloud Solution Architect
• 曾任 VMware / Red Hat 解決方案架構師 • Cloud Native Taiwan User Group 社群志工 • blog.pichuang.com.tw • 歷年演講經歷 • 如何採用雲原生作法 Velero 備份還原你的 Kubernetes 叢集? DevDays Asia 2021 講師介紹
從 WSL 2 探索 Azure Red Hat OpenShift 能力 •
每個月測試預算有限 因多數為開發測試用途, 無須持續開啟環境,故選 擇上班日每日早上 09:00 開起資源,晚上 21:00 刪 除資源以節省成本花費 起心動念 • 裝置和身分權限設定嚴謹 若需要登入公司分發的 Azure Tenant,需使用公 司配發的筆電才能登入, 其他 BYOD 的設備無法 進行開發 • 現行多數 Open Source 皆須運行於 Linux 系統上 因現行開源軟體多數發展 還是以 Linux 為基礎,且 講者對 Linux 熟悉程度遠 高於 Windows,故須尋 找兩者平衡點
Windows Subsystem Linux 2 • 常見使用場景 • 讓 AppDev 開發人員在
Windows 上直接使用 Linux 環境進行程式開發,不需要特別修改或安裝 虛擬環境準備開發機,大量節省計算資源和管理成本 • 適用作業系統 • Windows 10 / 11 / Server 2019 / Server 2022 • 預設可啟用的 Distro • Ubuntu 18.04 / 20.04 • Debian • Kali Linux • SLES 12 / 15 • OracleLinux 8.5 / 7.9 • 若遇客製化 WSL Launcher 需求 (如 RHEL) 可採用 microsoft/WSL-DistroLauncher 或 yuk7/wsldl 可在 Windows 10+ 上本機運行 Linux 程式 Ref: http://aka.ms/wsldocs
WSL 2 與虛擬機比較表 Windows Subsystem Linux 2 項目 WSL 2
VM 資源隔離性 與既有 Windows 資源共用 獨立資源 預設開機速度 秒級開啟 (~3 second) 分鐘級開啟 預設記憶體消耗量 極小 中或大 完整 Linux 核心 是 是 Systemd 支援 預設沒開,需額外設定,於 2022/09/21 宣布 WSL2 要準備正式支援 有 可否客製化 Linux Distro? 可 可 可否執行多個 Linux Distro? 可 可 適用場景 個人自主開發環境 Production / UAT / SIT
以 Red Hat Enterprise Linux 8.6 on WSL 2 為例
Windows Subsystem Linux 2 WSL 2 Kernel Linux Distro Windows Usermode Windows 11 Enterprise Windows NT Kernel
關於使用 WSL 2 應該要知道的事情 • 一般常討論的 Hyper-V 分為 2 個部分
• Hyper-V 管理平台: 提供維運管理 VM 的服務 • 虛擬機器平台 (Virtual Machine Platform): 實際上提供 VM 具體能 力的服務 • 使用 WSL 2 不需要啟用 Hyper-V,僅需啟用下列 3 個功能 • Windows 子系統 Linux 版 (Windows Subsystem Linux) • 虛擬機器平台 (Virtual Machine Platform) • 於 BIOS 須啟動 Intel VT-X 或 AMD AMD-V • WSL 2 是基於 Virtual Machine Platform 辦到的,但因不具備任 何的維運管理能力,故主要是提供開發人員開發環境之用 Windows Subsystem Linux 2 Ref: https://learn.microsoft.com/zh-tw/windows/wsl/faq
Ansible • 為何使用 Ansible 來做 IT 自動化? 1. 無代理服務 (Agentless):
不需要特別的 Agent 放在被控端,管理方便 2. 學習曲線低: 僅需具備基本 Bash Script 或已知 Command 即可上手使用,附帶大量 Examples 參考 3. 重用方便: 方便重複使用,僅須具備基本 Linux 環境即可使用和開發 知名 Open Source IT 自動化部署工具,現以被 Red Hat 收購並且提供商業支援 Ansible Playbook Ansible Module Ansible Collection Linux IPMI Azure Resource Windows Network Devices VMware vSphere Kubernetes OpenShift
基於 DevSecOps 理念之 Ansible Playbook 開發概觀 全面落實零信任架構 (Zero Trust Architecture),資安融入開發生命週期
Day 1 Implement: Ansible Playbook 個人開發流程 DevSecOps
Day 2 Operation: 例行日常維運方法 DevSecOps *實際上,Operation 應該還要包含監控 (Monitoring)、Continuous Delivery 和其他階段討論,但本演講無特別涉入
Ansible Playbook Task 流程設計原則 無論資深資淺人員執行時,都可以重複使用,且可預期產出結果 從上到下 依序執行 多設檢查點,強化防呆 名稱要清楚易讀 上
git 版控管理 有可被驗證的交付物 提供必要參數匯入供其他人沿用
Ansible Playbook Task 撰寫建議 ansible.builtin.{shell, command} 是萬用模組 • 針對 Azure
環境 Ansible Module 採用建議順序: 1. 官方提供 Ansible Collection 2. azure-cli + ansible.builtin.{command, shell} 3. RESTful API • Ansible 所提供的 Azure 模組不一 定完全跟 azure-cli 所提供的功能 保持一樣,故只要覺得使用上有異 樣,建議可以採方式 2: azure-cli + ansible.builtin.{command, shell} 進行撰寫
Time to Market In "ansible.cfg" [default] callbacks_enabled = profile_tasks, timer
尋找瓶頸、分析鬆綁可行性 可做為 RTO 參考依據之一
GitHub Copilot 加速 Infrastructure as Code (IaC) 開發效率 • 適用場景
• 忘記 Windows 系統指令 怎麼寫? • 忘記 Bash Script 撰寫參 數? • Ansible Module 懶得查 語法文件? • Copilot 採行建議 • 它是輔助工具,最終撰寫 責任還是在 Coder 身上 • 它的強項是實踐內容,而 非流程或架構設計,最終 要寫什麼功能還是在 Coder 身上 以 AI 輔助開發人員撰寫程式碼或指令 Ref: https://youtu.be/NfxTfw35wls
綜觀全局的安全性思維 • 針對開發人員電腦 • Azure AD Conditional Access: 零信任政策治理 •
Azure AD Privilege Identity Management: 特權 帳號管理及暫時性權限派送 • Azure AD Identity Protection: 自動化身分識別風 險分析,如非慣用登入位置、身分認證洩漏等 • Microsoft Intune: 跨行動裝置管理,譬如開發筆 電控管、軟體版本派送等 • 針對 Azure 環境 • Azure AD: 提供主動式、高整合度的身分驗證及管 控 • Microsoft Defender for Cloud: 強化 Azure 管理 政策 • Azure Network Security Group, Azure Firewall: 針對不同環境建置適當資安防護控制措施 以 Microsoft Cybersecurity Reference Architectures 零信任架構為基礎上進行合規、安全的開發和維運 Ref: Microsoft 企業的法遵挑戰與行動指南 https://query.prod.cms.rt.microsoft.com/cms/api/am/binary/RE55yNt
Day 0: 設計適切的 Azure 服務 • Cloud Adaption Framework 是
Microsoft 融合客戶、夥伴及自身經驗所提供 Azure 服務 初始架構設計基礎,可隨需求變動架構 • 跟設計地端服務一樣,可從網路拓樸和連線考慮 (Network Topology & Connectivity) 章節 著手會是較好的起手 Microsoft Cloud Adaption Framework for Azure Ref: https://learn.microsoft.com/en-us/azure/cloud-adoption-framework/scenarios/app-platform/azure-red-hat-openshift/landing-zone-accelerator
WSL 2 讓 Linux 為主的用戶更易於接受跨平台環境 1. 開發人員可以於 Windows 作業系統上採用 WSL
2 進行各式各樣的開發,無須等待較長 及額外的資源準備 2. Ansible 是一個易於上手的軟體工具,搭配著 WSL 2 可以很容易的準備好開發環境協助 IaC 理念更容易地被落實到各部門 IT 人員上 3. Microsoft 提供了多層次雲原生服務協助客戶強化資安防禦能力、加速開發效率,包含但 不現於: • GitHub / Azure DevOps • GitHub Copilot • Microsoft Security • Azure AD Conclusion
Thank You Microsoft Azure Taiwan Facebook 官方粉專 Azure Taiwan User
Group Facebook 交流社團