iT邦幫忙

2026 iThome 鐵人賽

DAY 4
0
Build on Google AI

使用gemini 準備 az-900系列 第 4

使用gemini 準備 az-900 Day 4 Azure Portal / CLI / PowerShell / Cloud Shell(管理工具選型對照)

  • 分享至 

  • xImage
  •  

【Day 4】管理工具選型對照:Azure Portal / CLI / PowerShell / Cloud Shell 全解析 feat. AWS 雙強對照

系列專欄:從 AWS 視角征服 Azure:AZ-900 30 天通關實戰
難度指數:★☆☆☆☆
核心考點:Azure Portal, Azure CLI, Azure PowerShell, Azure Cloud Shell, Azure Mobile App, ARM (Azure Resource Manager) 統一管理平面, 跨平台支援性(Windows / macOS / Linux / 瀏覽器)


🎯 前言與今日目標

本日 使用了aws kiro-cli(模型為opus 5) 補充gemini.md 偷懶的部分制定了更嚴謹的 寫作規範及 參考順序。
詳見gist https://gist.githubusercontent.com/linjinhsien/7f4792b2f40bfe79e427b37c4524ea7c/raw/39219723d927b0a5c6b9894f2e1b0d06cc259371/gistfile1.txt ,https://ithelp.ithome.com.tw/upload/images/20260827/20166002h0BzQdHAj1.png

在經歷了 Day 1 的邏輯資源階層、Day 2 的全球實體架構與 Day 3 的主權合規雲之後,我們已經全面掌握了 Azure 的版圖邊界。

但作為一名雲端架構師或 DevOps 工程師,日常工作中不可或缺的一環就是:「我們到底該拿什麼武器去操控 Azure 資源?」

當你想手動探索功能、撰寫跨平台 CI/CD 自動化腳本、利用 PowerShell 模組批次維運,或者在外出用餐時用手機重啟故障 VM 時,Azure 提供了完整的管理兵器庫。

今日 Day 4 的核心任務,就是要帶你全面拆解 Azure Portal、Azure CLI、Azure PowerShell、Azure Cloud ShellAzure Mobile App 的選型情境與跨平台支援度,並揭開微軟雲端架構最迷人的底層設計——Azure Resource Manager (ARM) 統一管理平面


📚 Part 1:0.5 小時觀念裝備(AWS ↔ Azure 深度對照)

許多從 AWS 轉換到 Azure 的工程師常有一個盲點:「在 Azure Portal 上建的虛擬機器,用 Azure CLI 看得到嗎?權限會不會不一樣?」

答案是:100% 看得到,而且行為完全一致!
因為不論你點擊網頁、敲下指令碼還是執行 SDK,所有請求最終都會發送給同一個核心大腦——ARM API

📊 管理工具全景對照表

管理工具類別 AWS 對應工具 Azure 對應工具 運作環境與跨平台支援 核心特色與最佳適用情境 AZ-900 關鍵考點
圖形化網頁介面 AWS Management Console Azure Portal 任何支援現代瀏覽器的設備(Chrome, Edge, Safari, Firefox) • 圖形化 GUI 介面,最適合初學者探索、可視化監控與手動調整。• 支援自訂儀表板 (Custom Dashboards) 與跨訂閱資源搜尋。 • 不適合大規模重複性部署或自動化任務。
跨平台命令列 AWS CLI Azure CLI 可安裝於 Windows、macOS、Linux(支援 Docker 容器) • 跨平台命令列工具,指令皆以 az 開頭(如 az vm create)。• 輸出預設為 JSON,易於與 Bash / Linux 腳本與 CI/CD 管線整合。 跨平台:可在 macOS 與 Linux 終端機直接執行。
Cmdlet 指令碼模組 AWS Tools for PowerShell Azure PowerShell (Az 模組) 可安裝於 Windows、macOS、Linux(需 PowerShell 7+) • 以 PowerShell Cmdlet 為基礎,採用「動詞-名詞」語法(如 New-AzVM, Get-AzResourceGroup)。• 物件導向輸出,最適合熟悉 Windows / .NET 生態系的維運工程師。 跨平台:過去僅限 Windows,現在透過 PowerShell Core 亦可跑在 Linux/macOS 上。
瀏覽器內建終端機 AWS CloudShell Azure Cloud Shell 免安裝!直接在瀏覽器(或 Portal、VS Code、手機 App)中開啟 預先認證 (Pre-authenticated):登入即自動帶入當前 Azure 帳號身分。• 雙核心環境:可自由切換 Bash(預載 Azure CLI)或 PowerShell(預載 Azure PowerShell)。• 需掛載一個 Azure Storage Account (Files) 以持久化保存 $HOME 目錄檔案。 免安裝任何軟體。• 第一次啟動時必須關聯一個儲存體帳戶
行動端 App AWS Console Mobile App Azure Mobile App iOS / Android 行動裝置 • 提供即時告警通知、健康狀況檢視。• 可執行基本的緊急維運操作(如重啟 VM、停止 Web App),並內建 Cloud Shell 終端。 • 適合下班或通勤時的緊急突發故障排除,不適合做複雜建置。

📐 ARM (Azure Resource Manager) 統一管理平面架構圖

不論是開發者用 Visual Studio 呼叫 REST API、維運工程師用 Azure CLI 執行腳本,還是架構師在 Portal 點擊按鈕,背後的呼叫路徑如下:

┌────────────────────────────────────────────────────────────────────────┐
│ 🛠️ 各式客戶端管理工具 (Management Clients) │
│ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐│
│ │ Azure Portal │ │ Azure CLI │ │ Azure PS │ │ Cloud Shell ││
│ │ (GUI 網頁) │ │(Bash/跨平台) │ │ (Az 模組) │ │(免安裝瀏覽器)││
│ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘ └──────┬───────┘│
│ │ │ │ │ │
│ │ ┌─────────────┴─────────────────┴─────────────┐ │ │
│ └──►│ HTTPS REST API / SDK 統一請求 │◄──┘ │
│ └──────────────────────┬──────────────────────┘ │
└────────────────────────────────────┼───────────────────────────────────┘


┌────────────────────────────────────────────────────────────────────────┐
│ 🏛️ Azure Resource Manager (ARM) 統一控制平面 │
│ • 統一驗證身分 (Microsoft Entra ID) • 統一授權控管 (Azure RBAC) │
│ • 統一套用合規 (Azure Policy) • 統一資源防刪 (Resource Locks) │
│ • 全局操作日誌 (Azure Activity Log) │
└────────────────────────────────────┬───────────────────────────────────┘

┌───────────────────────────┼───────────────────────────┐
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│Microsoft.Compute│ │Microsoft.Network│ │Microsoft.Storage│
│ • VMs / VMSS │ │ • VNets / Subnets│ │ • Storage Accts │
│ • App Services │ │ • NSG / Pub IPs │ │ • Blob / Files │
└─────────────────┘ └─────────────────┘ └─────────────────┘

💡 架構師必備心法(ARM 統一性的三大好處)

  1. 結果一致性:用 Portal 建立的資源,跟用 CLI、PowerShell 或 ARM Template 建立的完全沒有差別。
  2. 安全與審計一致性:所有請求都會被 Microsoft Entra ID 驗證身分,並被 Azure RBAC 檢查權限,最後寫入 Azure Activity Log(活動記錄)
  3. 鎖定與原則全面生效:只要你在 ARM 層級上了「資源鎖 (Resource Lock)」或「合規原則 (Policy)」,不論任何人用哪種工具都無法繞過!

📖 AZ-900 核心名詞解釋與速查

  1. Azure Portal (Azure 入口網站)
    • 定義:微軟官方提供的網頁圖形化管理主控台(portal.azure.com)。
    • 考點:建立個人化自訂 Dashboard、初學者手動探索與視覺化監控資源的首選。
  2. Azure CLI (Azure 命令列介面)
    • 定義:基於 Python 開發的跨平台命令列工具,語法結構為 az [group] [subgroup] [action] [parameters]
    • AWS 對照:AWS CLI。
    • 考點:原生支援 Windows、macOS 與 Linux,指令輸出格式為 JSON,適合 Bash 自動化腳本。
  3. Azure PowerShell
    • 定義:以 PowerShell 模組(Az module)形式提供的管理工具,使用 Cmdlet(動詞-名詞,如 New-AzResourceGroup)操作 Azure。
    • AWS 對照:AWS Tools for PowerShell。
    • 考點:透過 PowerShell 7+(PowerShell Core),Azure PowerShell 同樣具備跨平台能力,可在 macOS / Linux 上執行。
  4. Azure Cloud Shell
    • 定義:直接內嵌於瀏覽器中的互動式、預先通過身分驗證的終端機環境。
    • 考點:免在本機安裝任何環境;可自由切換 Bash 或 PowerShell;初次啟用時必須配置一個 Azure Storage Account 來存放使用者設定檔與暫存檔案。
  5. Azure Resource Manager (ARM)
    • 定義:Azure 的集中部署與管理服務層,負責接收所有工具發送的 API 請求並轉發給對應的 Resource Providers。
    • 考點:保證跨工具操作的一致性、集中套用 RBAC 權限與 Resource Locks。
  6. Azure Mobile App
    • 定義:適用於 iOS 與 Android 的行動應用程式。
    • 考點:隨時隨地查看資源健康警報、執行緊急診斷與基本啟動/停止操作。

🎮 Part 2:1 小時實戰情境 Role-Play

🏛️ 情境背景:Titan 科技的多元開發團隊與自動化決策

Titan 科技的雲端架構逐步成形,但在每週的跨部門工程會議上,開發與維運主管們為了「管理工具」吵成一團:

Linux 維運工程師:「我們團隊平常都在 Ubuntu 環境開發,每天要跑數十個 Bash 自動化腳本來部屬微服務,我們不想用 Windows 工具!」
Mac 前端工程師:「我用 MacBook Pro,有時候需要快速跑指令驗證 API,但我的電腦容量不夠,不想裝一大堆龐大的本機軟體!」
Windows 自動化管理員:「我們公司過去幾年累積了數千行以 Cmdlet 物件導向為主的 PowerShell 腳本,我們希望能繼續沿用現有維運資產!」
CTO 轉頭問你:「架構師,我們公司有 Windows、macOS、Linux 各種環境,還有跨平台的 CI/CD 自動化管線需求。微軟的工具鏈能不能同時滿足所有人?在 CI/CD 跨平台自動化腳本中,你推薦最標準的工具是什麼?」


🧩 決策任務

  • A:要求所有人統一使用 Azure Portal,因為只有網頁版才能確保所有人看到的介面一致且不挑作業系統。
  • B:建議將 Azure CLI 作為跨平台 CI/CD 自動化腳本的標準工具;Mac 工程師可隨時使用免安裝的 Azure Cloud Shell;而 Windows 維運人員可利用 Azure PowerShell (Az 模組) 在 Windows/Linux/macOS 上無縫執行現有腳本。
  • C:強制所有人只能使用 Azure PowerShell,因為 Azure 是微軟產品,只有 Windows PowerShell 才能進行自動化管理。
  • D:要求團隊所有成員一律改用 Azure Mobile App 進行日常部署與維運,以達到全行動化管理。

🎯 解題拆解與解析

✅ 正解:B

❌ 陷阱分析與架構決策拆解:

  • 選項 A 陷阱(GUI 無法自動化)
    Azure Portal 雖然跨瀏覽器,但它是純圖形化介面(GUI),完全無法嵌入 CI/CD 自動化管線(如 GitHub Actions 或 Azure DevOps)中執行自動化腳本,且手動點擊容易有人為操作失誤的風險。
  • 選項 B 正解(跨平台兼顧與最佳實務)
    • Azure CLI 跨平台支援 Windows、macOS 與 Linux,且語法簡潔、JSON 輸出易解析,是業界撰寫 CI/CD 跨平台腳本的首選標準。
    • Azure Cloud Shell 免安裝本機環境,只要打開瀏覽器就能使用,完全滿足 Mac 工程師不想安裝龐大工具的需求。
    • Azure PowerShell 現代版本(Az 模組)已可在 PowerShell Core (7+) 上跨平台執行,完美相容舊有資產。
  • 選項 C 陷阱(觀念過時且違背事實)
    過去的 Windows Azure PowerShell 確實綁定 Windows,但現在的 Azure PowerShell 已全面跨平台;更重要的是,Azure CLI 本來就是為了跨平台自動化而生的強大工具,絕非「只能用 PowerShell」。
  • 選項 D 陷阱(工具定位錯誤)
    Azure Mobile App 的定位是「突發故障警報處理與簡易維運(如隨手重開 VM)」,無法用於大規模系統建置與 CI/CD 自動化。

🎯 Part 3:AZ-900 精選高頻真題解析

以下精選 3 題 關於管理工具的高頻真題進行深度拆解:


📝 考題 1:跨平台作業系統支援性(判斷題 / Hotspot)

【Question】 (選自 AZ-900 官方考古題真題 Question 42)
For each of the following statements, select Yes if the statement is true. Otherwise, select No.

題目陳述 (Statements) Yes / No
1. Azure CLI can be installed on computers that run Windows, macOS, and Linux. [ ? ]
2. Azure PowerShell can be used from computers that run Linux and macOS. [ ? ]
3. Azure Portal can be accessed from a tablet or Chromebook that has a web browser. [ ? ]
  • 正確答案
    • 1 ➔ Yes
    • 2 ➔ Yes
    • 3 ➔ Yes
  • 考點深度解析
    • 陳述 1 (Yes):Azure CLI 是以 Python 為基礎打造的跨平台工具,官方提供 Windows (MSI)、macOS (Homebrew) 與 Linux (apt/yum) 的原生安裝套件。
    • 陳述 2 (Yes):這是非常容易被誤答成 No 的經典陷阱!自從微軟推出 Az PowerShell 模組並支援 PowerShell Core 後,Azure PowerShell 已經可以在 Linux 與 macOS 上順暢運行
    • 陳述 3 (Yes):Azure Portal 是基於標準 Web 技術(HTML5/JS)建置的網頁,任何具備現代瀏覽器的裝置(包含 iPad、Android 平板、Chromebook)皆可直接訪問。

📝 考題 2:Azure Cloud Shell 的儲存體依賴(單選題)

【Question】 (選自 AZ-900 考古題真題 Question 88)
You plan to use Azure Cloud Shell to manage Azure resources.
What is required when you use Azure Cloud Shell for the first time?

  • A. Installing the Azure CLI on your local computer
  • B. An Azure Storage Account
  • C. A Windows Virtual Machine in Azure
  • D. Configuring a dedicated VPN Gateway
  • 正確答案B
  • 考點深度解析
    • 必備儲存體帳戶:當你第一次啟動 Azure Cloud Shell 時,系統會提示你必須關聯或新建一個 Azure Storage Account(儲存體帳戶)
    • 原因:Cloud Shell 每次啟動都是背後一個臨時容器,它需要透過 Azure Files(檔案共享)掛載一個專屬的磁碟目錄($HOME),以便在不同工作階段(Sessions)之間永久保存你寫的腳本、金鑰與工具設定檔。
    • Cloud Shell 完全免在本地安裝 CLI (A),也不需要特別開 VM (C) 或 VPN (D)。

📝 考題 3:管理工具統一底層架構(單選評估題)

【Question】 (選自 AZ-900 官方題庫精選)
Review the underlined text. If it makes the statement correct, select "No change is needed". If the statement is incorrect, select the answer choice that makes the statement correct.

Azure CLI, Azure PowerShell, and the Azure Portal all send requests to Azure Resource Manager (ARM) to manage resources.

  • A. No change is needed
  • B. only Azure CLI and Azure PowerShell send requests to Azure Resource Manager (ARM)
  • C. only the Azure Portal sends requests to Azure Resource Manager (ARM)
  • D. all management tools bypass Azure Resource Manager (ARM) and communicate directly with virtual machine hypervisors
  • 正確答案A (No change is needed)
  • 考點深度解析
    • ARM 的統一管理心法:不論是 Portal (GUI)、CLI、PowerShell、Cloud Shell、SDK 還是 Terraform/Bicep,所有工具在底層都是轉換成 HTTPS REST API 請求發送給 Azure Resource Manager (ARM)
    • ARM 集中驗證 Entra ID 身分與 RBAC 權限後,再調用後端的 Resource Providers。沒有任何外部工具可以直接繞過 ARM 去跟實體主機通訊。

📝 真題 4:在 macOS 上跑 PowerShell 腳本建立 Azure 資源(2020 題庫 Q31 改編)

⚠️ 來源說明:本題改寫自 2020 年 gratisexam AZ-900 題庫(Q31),屬歷史題庫層,已與 Microsoft Learn 交叉驗證,考點至今仍然有效。

【Question】
系統管理員要跑一支 PowerShell 腳本來建立 Azure 資源,需選擇合適的電腦環境。
解法:從一台執行 macOS 且已安裝 PowerShell Core 6.0 的電腦執行該腳本。這個解法可行嗎?

  • A. Yes(可行)
  • B. No(不可行)
  • 正確答案A (Yes)
  • 考點解析
    • PowerShell 腳本需要在 PowerShell 環境執行;自 PowerShell Core(6.0 起) 後,PowerShell 已跨平台支援 macOS 與 Linux。搭配匯入 Az 模組即可建立 Azure 資源,故解法可行。
    • 經典陷阱對照:若同系列題目改成「在 macOS 上只裝了 Azure CLI卻要跑 PowerShell 腳本」,答案就會變成 No——因為 PowerShell 腳本不能用 CLI 執行。看清楚裝的是 PowerShell 還是 CLI,是這組題的關鍵。
  • 來源與驗證:經 Microsoft Learn:在 macOS 安裝 Azure PowerShell 交叉驗證確認。

📝 真題 5:從 Android 平板建立 Azure VM(2020 題庫 Q52 改編)

⚠️ 來源說明:本題改寫自 2020 年 gratisexam AZ-900 題庫(Q52),屬歷史題庫層,已與 Microsoft Learn 交叉驗證,考點至今仍然有效。

【Question】
你需要從一台執行 Android 作業系統的平板建立一台新的 Azure 虛擬機器。
解法:使用 Azure Cloud Shell 中的 PowerShell。這個解法可行嗎?

  • A. Yes(可行)
  • B. No(不可行)
  • 正確答案A (Yes)
  • 考點解析
    • Azure Cloud Shell 是瀏覽器內的 shell,免安裝、預先完成身分驗證。只要 Android 平板有現代瀏覽器就能開啟,並用其中的 PowerShell(或 Bash)建立 VM,故解法可行。
    • 記憶點:只要題目問「用某個只有瀏覽器的裝置(Android/iPad/Chromebook)管理或建立 Azure 資源」,Cloud Shell 幾乎都是 Yes;而「在本機安裝 CLI/PowerShell」則受該裝置 OS 能否安裝而定。
  • 來源與驗證:經 Microsoft Learn:Cloud Shell 功能 交叉驗證確認。

📐 Part 4:以戰代訓課程對照

項目 內容
對應課程章節 第 3 章 Azure 管理與治理 ▸ 管理 Azure 的入口(p117)
官方考綱領域 Describe Azure Management & Governance(占比 30–35%)
課程涵蓋範圍 介紹 Azure Portal、Azure Cloud Shell、Azure CLI 與 Azure PowerShell 四大工具的基本定義、操作型態(GUI vs CLI vs Scripting)與 Cloud Shell 的快速上手。
本文補充範圍 深入剖析 ARM (Azure Resource Manager) 統一控制平面的架構圖與 API 轉發流程、跨平台作業系統支援矩陣(Windows/macOS/Linux/Chromebook)、Azure Mobile App 行動端定位、Cloud Shell 需綁定 Storage Account 的底層機制,以及與 AWS 對應工具(Console / AWS CLI / CloudShell / Tools for PowerShell)的深度對照。

🚀 今日總結與明日預告

🏆 今日 3 點速記精華

  1. 萬劍歸宗於 ARM:Azure Portal、CLI、PowerShell 與 Cloud Shell 全都對接 ARM API,操作結果、安全權限與審計日誌完全一致。
  2. 跨平台無死角:Azure CLI、Azure PowerShell (Az) 與 Azure Portal 全都支援 Windows、macOS 與 Linux
  3. Cloud Shell 免安裝即用:內建於瀏覽器,預先完成身分驗證,支援 Bash 與 PowerShell 雙核心,但初次使用必須掛載 Azure Storage Account

🔮 明日預告

學會了用命令列與 Portal 操控 Azure,但如果我們要一鍵部署包含 100 台 VM、VNet 與負載平衡器的整套複雜生產環境,總不能一條條指令手敲吧?
明天 Day 5,我們將正式踏入現代雲端工程師的核心武器庫——【ARM Templates & Bicep】!我們將探索 Infrastructure as Code (IaC) 的精髓,並與 AWS CloudFormation 進行深度對照!


上一篇
使用gemini 準備 az-900 DAY 3特務與合規:Sovereign Clouds(Azure Government / China / 獨立合規雲)
下一篇
使用gemini 準備 az-900 Day 5】ARM Templates & Bicep:基礎架構即程式碼 (IaC) 的精髓 feat. AWS 雙強對照
系列文
使用gemini 準備 az-9006
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言