設定管理工具:Ansible、Puppet、Chef
三個工具的比較表,這一節幾乎就是純記憶題。
約 10 分鐘
| 項目 | **Ansible** | Puppet | Chef |
|---|---|---|---|
| 需要裝 Agent? | 不需要(agentless) | 需要 | 需要 |
| 傳輸方式 | SSH | TCP 8140 | TCP 10002 |
| 設定檔語言 | YAML | Puppet DSL | Ruby DSL |
| 設定檔名稱 | Playbook | Manifest | Recipe / Cookbook |
| 推或拉 | Push(推) | Pull(拉) | Pull(拉) |
| 學習曲線 | 最平緩 | 中 | 較陡 |
---
- name: Configure VLANs on access switches
hosts: access_switches
gather_facts: no
tasks:
- name: Create VLAN 10
ios_vlans:
config:
- vlan_id: 10
name: SALES
state: merged網路設備的程式化介面
| 協定 | 傳輸 | 資料格式 | 說明 |
|---|---|---|---|
| NETCONF | SSH (830) | XML | IETF 標準,支援設定的驗證與回復 |
| RESTCONF | HTTPS (443) | JSON 或 XML | 把 NETCONF 包成 REST 風格,比較好用 |
| gNMI / gRPC | HTTP/2 | Protobuf | 高效能,適合串流遙測 |
傳統網管 vs 控制器式網管
| 面向 | 傳統(每台設備各自為政) | 控制器式(DNA Center 等) |
|---|---|---|
| 設定來源 | 各台設備的 running-config | 控制器上的單一政策 |
| 變更方式 | SSH 逐台修改 | 定義意圖,控制器下發 |
| 一致性驗證 | 人工比對 | 控制器持續稽核 |
| 故障排查 | 逐台查日誌 | 集中式關聯分析 |
| 新設備上線 | 手動設定 | Plug and Play 自動佈建 |
立即測驗這一節(3 題)