iT邦幫忙

2025 iThome 鐵人賽

DAY 3
1

牧場主今日工作

各位牧場主們,昨天我們認識了 Rancher 這位得力助手,今天要來規劃我們的實驗牧場!就像建造一個小型示範牧場需要先規劃空間配置和功能區域,我們也需要在 8Core 32G 的 Proxmox 環境中,設計一個能夠驗證多租戶概念的實驗架構。

這不是要打造企業級的生產環境,而是要建立一個功能完整的學習和驗證平台。重點是要讓每個概念都能實際操作,讓大家在有限的資源下也能體驗到完整的多租戶管理流程!

技術背景與概念

實驗環境的學習目標

我們的實驗牧場要達成以下學習目標:

1. 多租戶概念驗證

  • 理解 Rancher Projects 如何實現租戶隔離
  • 實際操作 RBAC 權限管理
  • 體驗資源配額的設定和效果

2. 叢集管理實作

  • 管理叢集與工作叢集的分離設計
  • Rancher 多叢集管理的操作流程
  • 叢集節點的新增和維護

3. 基礎服務整合

  • NFS 儲存的部署和使用
  • 負載均衡和 Ingress 配置
  • 基本的監控和日誌收集

4. 應用部署流程

  • GitOps 的實際操作
  • Helm 應用的管理
  • 多租戶環境下的應用隔離

Proxmox 實驗環境的優勢

選擇 Proxmox 作為虛擬化平台有以下好處:

  • 資源調配彈性:可以根據實驗需要動態調整 VM 配置
  • 快照功能:實驗失敗時可以快速恢復到之前的狀態
  • 網路模擬:可以模擬不同的網路拓撲
  • 成本效益:免費開源,適合學習和實驗

Proxmox 實驗牧場架構設計

整體架構概覽

我們在 Proxmox 上的實驗架構採用資源彈性共享的設計:

Proxmox Host (8Core 32G)
├─ Rancher Node (4C16G 100G)
│  └─ 獨立管理叢集,運行 Rancher Server
├─ RKE2 Master (4C16G 100G)
│  └─ 工作叢集控制節點
├─ RKE2 Worker (4C16G 100G)
│  └─ 工作叢集運算節點
└─ Bastion Infra (4C8G 100G)
   ├─ NFS 服務
   ├─ 負載均衡器 (HAProxy)
   └─ DNS 服務

這個設計的特點:

  • 資源彈性共享:VM 間可以彈性使用 CPU 資源,類似 K8s 的 request/limit 概念
  • 管理叢集分離:Rancher Server 獨立運行,不會被工作負載影響
  • Bastion 模式:類似 OpenShift 的做法,用一台 infra 節點處理基礎服務

實驗多租戶設計

1. 簡化的權限測試
我們會建立幾個測試角色來驗證 RBAC:

  • admin:全域管理員(我們自己)
  • dev-lead:開發專案負責人
  • dev-member:開發團隊成員
  • ops-user:運維人員

這樣的設計可以讓我們實際體驗:

  • 不同使用者看到不同的資源範圍
  • 資源配額在不同專案間的隔離效果
  • 網路政策如何在 Namespace 層級實現流量隔離

實驗儲存設計

1. 整合在 Bastion 節點的 NFS 服務
NFS 服務整合在 Bastion Infra 節點中:

Bastion Infra Node (4C8G)
├─ NFS 服務
│  ├─ dev-pv/      (開發環境用)
│  ├─ test-pv/     (測試環境用)
│  └─ system-pv/   (系統服務用)
├─ 負載均衡器 (HAProxy)
└─ DNS 服務

↓ NFS CSI Driver

Work Cluster (RKE2)
└─ StorageClass
   └─ nfs-client

2. 儲存用途規劃

  • 應用程式資料:各種應用的持久化資料
  • 基礎服務:監控資料、日誌等
  • 暫存資料:臨時檔案和快取

架構設計優勢與考量

設計優勢

這個 4 節點的設計有以下優勢:

  1. 簡化管理:節點數量適中,便於理解和維護
  2. 功能完整:涵蓋管理叢集、工作叢集、基礎服務
  3. 資源彈性:透過 Proxmox 的資源共享機制提高利用率
  4. 實戰導向:每個概念都能實際操作驗證

資源彈性策略

採用類似 Kubernetes request/limit 的概念:

  • CPU 超用:總計分配 16C,但實際 8C 硬體可以動態調度
  • 記憶體 overcommit:總計分配 56G,依靠 Proxmox 的記憶體管理機制
  • 儲存共享:統一使用 Proxmox 儲存池

這樣的設計讓我們能在有限硬體下,體驗完整的多租戶管理流程,同時學會資源規劃的實務技巧。

今日總結與明日預告

今天我們規劃了一個實用的 Proxmox 實驗牧場架構,在 8Core 32G 的硬體限制下,設計出一個功能完整的多租戶學習環境。透過 4個 VM 的精簡設計,足以讓我們體驗所有重要的概念和操作。

重點回顧:

  • 確定實驗環境的學習目標和技術邊界
  • 設計 4個 VM 的資源彈性共享策略
  • 規劃多租戶專案和權限架構
  • 整合基礎服務到 Bastion 節點的設計

明天我們將開始動手建造實驗牧場!我們會實際設定 Proxmox 環境,建立第一批虛擬機,為後續的 K8s 叢集部署做好準備。準備好開始挖土動工了嗎?


💡 牧場主小提示:實驗環境的價值不在規模大小,而在能否讓每個概念都得到實際驗證。小而美的設計往往比大而空的架構更有學習價值!


上一篇
Day 2: 認識你的新夥伴 Rancher
下一篇
Day 4: Proxmox 實驗環境建置
系列文
牧場主的 K8s 放牧日記20
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言