具有 1 個實體節點的虛擬 OpenStack 部署 (Juju/MAAS) 的架構

具有 1 個實體節點的虛擬 OpenStack 部署 (Juju/MAAS) 的架構

我想演示一些 OpenStack HA/FT 功能(最重要的是即時遷移和儲存複製)。為此,我有一台 32 GB RAM 和 4 核(8 線程)Xeon e3v2 的機器。到目前為止,我已經設法讓 MAAS 和 Juju 啟動並運行,但我不確定可以安全部署的虛擬節點數量(以及 CPU / RAM 過度使用比率,儘管我在某處讀到實體 CPU可以很好地處理1 -vcpu-機器的過度使用)。

目前,運行 MAAS 的虛擬機器使用 1 個 vCPU 和 8 GB RAM,Juju 在主機上運行。這讓我擁有 7 個 vCPU 和 24 GB RAM,而無需過度使用任何資源。我想出的是以下內容:

  • 1 個控制器節點:2vCPU、4GB RAM - RabbitMQ、mysql、keystone、dashboard、cinder、nova-cloud-controller 和 lxc 容器中的概覽
  • 2 個 Ceph 節點:每個 1 個 vCPU、4GB RAM - ceph
  • 2 個運算節點:2 個 vCPU,每個 8GB RAM - nova-compute
  • 1 個網路節點:1 個 vCPU、2GB RAM - 量子網關
  • 加上 MAAS 主機:1 個 vCPU、8GB RAM

這將導致總共 38 GB RAM 和 10 個 vCPU,所以我有點過度使用。

我真正的問題是是否有人有更好的架構。我真的只是打算展示 OpenStack(或一般雲端)的一些功能。

答案1

我有類似的設置,讓我建議您的配置:

  • 減少分配給 MAAS 的 RAM 量,大約 2GB 就足夠了。
  • 新增另一個 ceph 節點,這將有助於您在使用 ceph 且 1 個節點發生故障時展示復原能力。
  • CPU 的過度使用並沒有那麼糟糕,但你不想在記憶體中過度使用,因為系統將開始交換,一切都會變得無法使用。
  • 你沒有提到的是你擁有的磁碟,這對我來說是一個巨大的瓶頸,我有 2 個帶有 btrfs (raid0) 的 7200 RPM 磁碟,但在部署 juju 時這還不夠。
  • 此外,您可能想要使用 juju-deployer 並調整用於部署的命令列,特別是超時修飾符和“-s”,它是每個“juju部署”呼叫之間的延遲。

我希望這有幫助。

費利佩,

答案2

如果它仍在運行,我建議您將其轉儲並使用 LXD。你應該沒有問題部署這個無需 MaaS,只需運行 Juju,並透過本地 LXD 進行本地控制如此處所述。 您的機器應該能夠在不流太多汗的情況下運作。如果您需要 MaaS 來演示它(它確實非常棒。如果有人在附近,您應該嘗試查看 Canonical 所做的 Openstack 路演…),那麼事情就會變得有點複雜。

該參考文獻演示了在 3 台機器上進行設置,但如果確實需要,您可以偷偷摸摸地將 Juju 和 MaaS 部署到同一台其他機器上。如果您的第二台機器在 LXD 下運行 MaaS 和 JuJu,並且網橋連接到您的實驗室 LAN,並且您的 PXE 流量可以通過,您應該能夠在兩台機器上的容器中運行所有內容。我正在嘗試在我的筆記型電腦上使用 VMWare Fusion VM 執行類似的操作,其中我將內部網路橋接到 Thunderbolt NIC,以允許 MaaS 和 Juju 機器協調 Raspberry Pi 和 NUC 設備。

答案3

我沒有使用 juju 進行 openstack 編排的經驗,但根據 ceph 和 openstack 的經驗,出於演示目的,您可以在 2GB 機器上運行 ceph,不會出現問題,我認為 maas 主機也可以配置為 6GB 而不是 8GB。

我不知道 juju 是否允許您在同一虛擬機器中組合不同的角色,在我們的(非 juju)部署中,我們將控制器和網路角色組合在同一虛擬機器上(不使用容器)。

答案4

在小型叢集中使用實體節點(尤其是測試實驗室類型的節點)時,典型的捷徑是將 ceph 節點與運算節點結合。請參閱 ceph-0.48-era 的這套Debian 的說明,或者這個更現代的proxmox VE 的實驗室配置

使用您提供的數字,以及其他答案中關於 ram-decreases 和 Triple-ceph 的建議,也許是這樣的:

  1. 3vCpu + 8gb == RabbitMQ/keystone/glance/etc + cephMon1/Osd1
  2. 2vCpu + 10gb == novaComp2/Net2/Vol2 + cephMon2/Osd2/Httpd2/Rgw2
  3. 2vCpu + 10gb == novaComp3/Net3 + cephMon3/Osd3
  4. 1vCpu + 2GB == novaQuantum4
  5. 1vCpu + 3GB == MAAS_host5

我目前正在研究這種性質的單節點配置,但可用 RAM 較少,並且只有四個磁碟可供使用(cephOsd 對於多個磁碟更好)。我無法確認上面的數字是否能夠為您提供足夠的性能,因為我自己沒有嘗試過這個方案,但是合併有點正交的節點以節省vCpu&ram 的核心思想可能會給您足夠的牽引力來到達您想要去的地方。

ps 另請參閱 OpenStack 在一個實體節點上的半官方說明文檔VM,以及更相關的 OpenStack 專用盒子教程,位於 devstack.org

相關內容