一、前言
上一篇文章講了OpenStack的部署和簡單操作,今天介紹一下如何實現(xiàn)虛擬機的Migrate以及Resize。Migrate操作和Resize操作基本上屬于同一種操作,Migrate操作只是Resize操作的一個特例,無需更改虛擬機的配置。
二、操作
2.1 應用需求
這兩個需求的應用場景如下:
某臺宿主機不再使用需要將其內(nèi)虛擬機遷出。
當前宿主機內(nèi)虛擬機數(shù)量過多,遷出一部分。理論上這種情況不存在,因為OpenStack在建立虛擬機的時候會考慮這些問題,但是如果新添加了宿主機節(jié)點則有可能出現(xiàn)此問題。
虛擬機的配置過低,需要提高配置。
2.2 實操
理論上此操作很簡單,只需要在web管理界面中點下按鈕即可。但是我實際測試卻木有反應,是何道理?檢查日志發(fā)現(xiàn)是因為不能進行從當前宿主機到目標宿主機的ssh,于是操作失敗。經(jīng)過多次測試發(fā)現(xiàn)如下解決方案。
首先通過ps -ef命令可以發(fā)現(xiàn)nova-compute進程的啟動用戶是stack。所以是stack用戶之間不能進行ssh造成的上述問題。解決方案便是實現(xiàn)宿主機集群內(nèi)所有服務器兩兩之間的ssh無密碼登錄。(參考https://funcptr.net/2014/09/29/openstack-resizing-of-instances/)
生成公鑰
切換到stack用戶(以下操作全在stack用戶下),執(zhí)行
ssh-keygen -t rsa
關閉host校驗
執(zhí)行
cat << EOF > ~/.ssh/config Host * StrictHostKeyChecking no UserKnownHostsFile=/dev/nullEOF