您可以使用命令列介面在執行 OpenStack Neutron 的節點上設定 LBaaS。
程序
- 以
viouser 身分登入 OpenStack 管理伺服器。
- 以
viouser 身分登入控制器節點。
- 針對您的使用者帳戶載入認證檔案。
source user-credentials.rc
- 建立負載平衡器。
neutron lbaas-loadbalancer-create --name lb-name lb-subnet-id
只有指定子網路的成員可以新增至 LBaaS 集區。
- 建立新負載平衡器的接聽程式。
neutron lbaas-listener-create --loadbalancer lb-name --protocol {HTTP | TCP} --protocol-port port-num --name listener-name
- 建立 LBaaS 集區。
neutron lbaas-pool-create --lb-algorithm lb-method --listener listener-name --protocol {TCP | HTTP} --name pool-name
--lb-algorithm 參數接受下列值。
引數 |
說明 |
LEAST_CONNECTIONS
|
新用戶端要求將傳送至具有最少連線的伺服器。 |
ROUND_ROBIN
|
根據為其指派的權數,依次使用每個伺服器。 |
SOURCE_IP
|
由相同的集區成員處理來自相同來源 IP 位址的所有連線。 |
- 至少將兩個伺服器執行個體新增至您建立的 LBaaS 集區。
neutron lbaas-member-create --subnet lb-subnet-id --address server1-ip --protocol-port 80 pool-name
neutron lbaas-member-create --subnet lb-subnet-id --address server2-ip --protocol-port 80 pool-name
- 設定健全監視器。
neutron lbaas-healthmonitor-create --delay delay-seconds --type {HTTP | TCP | PING} --max-retries number --timeout timeout-seconds --pool pool-name
參數 |
說明 |
--delay |
輸入傳送探查至成員間隔的時間 (以秒為單位)。 |
--type |
指定 HTTP、TCP 或 PING。 |
--max-retries |
輸入將成員狀態變更為 INACTIVE 之前允許的連線失敗次數。 |
--timeout |
輸入監控器在逾時之前等待建立連線的時間 (以秒為單位)。 逾時值必須少於延遲值。 |
--pool |
指定您已建立的 LBaaS 集區。 |
- 如果您已在承租人子網路上建立負載平衡器,請將浮動 IP 位址與負載平衡器建立關聯。
- (選擇性) 傳送測試要求,以驗證 LBaaS 組態。
- 以
viouser 身分登入 OpenStack 管理伺服器。
- 建立測試 index.html 檔案。
- 在相同的目錄中,啟動 Web 伺服器。
sudo python -m SimpleHTTPServer 80
- 登入用戶端執行個體。
- 執行 wget 命令,並檢視您的要求是否在集區中的伺服器之間正確地進行負載平衡。
wget -O - http://mgmt-server-ip