Libvirt 為一套提供方便的方法管理 VM 及其他虛擬功能 ( 例如:Storage 或網路 ) 的 C 語言軟體。這些軟體包含 API 函式庫、daemon (libvirtd) 及一個命令提示工具 (virsh)。
Libvirt 的主要目標為,提供一個簡單的方法管理多個不同的虛擬化提供者或 hypervisor。舉例來說,命令 "virsh list --all" 可列出所有支援的 hypervisor (KVM、Xen、VMWare ESX 等等 )中存在的 VM。
Libvirt 所提供之主要功能為:
1 ) VM 管理:開始、停止、暫停、儲存、回復及遷移。
2 ) 支持遠端機器控制 (Remote machine support):運行 libvirt daemon 的機器皆可使用 libvirt 的所有功能,包含遠端控制機器。更多資訊,可參考 http://libvirt.org/remote.html。
3 ) Storage 管理:運行 libvirt daemon 的機器可管理不同型態的 storage。更多資訊,可參考 http://libvirt.org/storage.html。
4 ) 網路介面管理:運行 libvirt daemon 的機器可管理 physical 和 logical 網路介面。更多資訊,可參考 https://fedorahosted.org/netcf/。
5 ) 虛擬 NAT 與路由基礎網路 (Route based networking):運行 libvirt daemon 的機器可管理與產生虛擬網路 (virtual network)。更多資訊,可參考 http://libvirt.org/archnetwork.html。
Libvirt 支援:
1 ) KVM/QEMU
2 ) Xen
3 ) LXC - Linux container system
4 ) OpenVZ - Linux container system
5 ) User Mode Linux
6 ) VirtualBox
7 ) VMware ESX and GSX
8 ) VMware Workstation and Player
9 ) Microsoft Hyper-V
2012年2月28日 星期二
2012年2月13日 星期一
[OpenStack] OpenStack Dashboard 簡介與安裝
簡介:
OpenStack Dashboard 是一個以 web 為基礎的視窗提供使用者透過 OpenStack APIs 與 OpenStack Compute 雲控制器溝通。
系統需求:
1. 必須運行 OpenStack Compute 安裝並包含 Identity 與 Keystone 服務
2. 必須知道 Identity 與 Compute 的 URL
3. 必須安裝 git
4. Python 2.6 或 2.7
安裝步驟:
1. 安裝 OpenStack Dashboard 框架,其中包含 Apache 及相關模組
sudo apt-get install -y libapache2-mod-wsgi
sudo apt-get install -y openstack-dashboard openstackx python -sqlite
2. 配置 Dashboard
2.1 開啟 mysql,並輸入 root 使用者的密碼
2.2 配置 MySQL,建立 dash 資料庫
2.3 建立使用者,並擁有 dash 資料庫之最高權限
2.4 於 /local/local_settings.py 中修正下列選項:
● DATABASE:
2.5 運行 syncdb 指令初始化資料庫
你將會看見下列結果輸出
3. 重啟並運行 Apache 伺服器
如果安裝正確,打開瀏覽器並輸入 http://localhost 你將會看見 OpenStack Dashboard。
OpenStack Dashboard 是一個以 web 為基礎的視窗提供使用者透過 OpenStack APIs 與 OpenStack Compute 雲控制器溝通。
系統需求:
1. 必須運行 OpenStack Compute 安裝並包含 Identity 與 Keystone 服務
2. 必須知道 Identity 與 Compute 的 URL
3. 必須安裝 git
4. Python 2.6 或 2.7
安裝步驟:
1. 安裝 OpenStack Dashboard 框架,其中包含 Apache 及相關模組
sudo apt-get install -y libapache2-mod-wsgi
sudo apt-get install -y openstack-dashboard openstackx python -sqlite
2. 配置 Dashboard
2.1 開啟 mysql,並輸入 root 使用者的密碼
mysql -u root -p
2.2 配置 MySQL,建立 dash 資料庫
mysql> CREATE DATABASE dash;
2.3 建立使用者,並擁有 dash 資料庫之最高權限
mysql> GRANT ALL ON dash.* TO 'dash'@'%' IDENTIFIED BY 'yourpassword';
2.4 於 /local/local_settings.py 中修正下列選項:
● DATABASE:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'dash',
'USER': 'dash',
'PASSWORD': 'yourpassword',
'HOST': 'localhost',
'default-character-set': 'utf8'
},
}
2.5 運行 syncdb 指令初始化資料庫
# If using Cloud Builders packages, do this:
cd /var/lib/dash
PYTHONPATH=/var/lib/dash/ python dashboard/manage.py syncdb
# If using Managed IT packages, do this:
/usr/share/openstack-dashboard/dashboard/manage.py syncdb
你將會看見下列結果輸出
Installing custom SQL ...
Installing indexes ...
DEBUG:django.db.backends:(0.008) CREATE INDEX `django_session_c25c2c28` ON`django_session` (`expire_date`);; args=()
No fixtures found.
3. 重啟並運行 Apache 伺服器
sudo /etc/init.d/apache2 restart
sudo restart nova-api
如果安裝正確,打開瀏覽器並輸入 http://localhost 你將會看見 OpenStack Dashboard。
2012年2月7日 星期二
[OpenStack] OpenStack Compute (Nova) 簡介
Nova 的特色及功能如下:
1. Instance 生命週期 (life cycle) 管理
2. 計算資源管理
3. 網路及認證
4. REST-based API
5. 最終一致的非同步通訊
6. 支援 Xen, XenServer/XPC, KVM, UML, VMware, vSphere and Hyper-V
OpenStack Compute 組件包含:
1. API Server (nova-api):提供外界對於雲基礎架構的管理與介面。
2. Message Queue (rabbit-mq server)
3. Compute Workers (nova-compute):處理 instance 的生命週期管理,透過 Message Queue 接收
並處理生命週期管理之請求。
4. Network Controller (nova-network):處理主機網路辨別。例如:分配 IP 位址、辨別專案
VLAN 等等。
5. Volume Worker (nova-volume):用於管理 LVM-based instance volume。功能如新增、刪除及從
instance 掛 ( 卸 ) 載一個 volume。
6. Scheduler (nova-scheduler):對應 nova-API 呼叫至正確的 OpenStack 組件。
參考資料:
1. OpenStack Compute Starter Guide
- http://docs.openstack.org/diablo/openstack-compute/starter/content/
1. Instance 生命週期 (life cycle) 管理
2. 計算資源管理
3. 網路及認證
4. REST-based API
5. 最終一致的非同步通訊
6. 支援 Xen, XenServer/XPC, KVM, UML, VMware, vSphere and Hyper-V
OpenStack Compute 組件包含:
1. API Server (nova-api):提供外界對於雲基礎架構的管理與介面。
2. Message Queue (rabbit-mq server)
3. Compute Workers (nova-compute):處理 instance 的生命週期管理,透過 Message Queue 接收
並處理生命週期管理之請求。
4. Network Controller (nova-network):處理主機網路辨別。例如:分配 IP 位址、辨別專案
VLAN 等等。
5. Volume Worker (nova-volume):用於管理 LVM-based instance volume。功能如新增、刪除及從
instance 掛 ( 卸 ) 載一個 volume。
6. Scheduler (nova-scheduler):對應 nova-API 呼叫至正確的 OpenStack 組件。
參考資料:
1. OpenStack Compute Starter Guide
- http://docs.openstack.org/diablo/openstack-compute/starter/content/
2012年2月3日 星期五
[OpenStack] 「手動」安裝 OpenStack 後之後續設定
在 [OpenStack] 在 Ubuntu 11.10 上「手動」安裝 OpenStack 中已將「手動」安裝之前置作業及資料庫設定完成,接下來的後續設定部分,將於本篇中介紹。
首先,必須設定 nova.conf 檔案中的旗標。nova.conf 位在 /etc/nova 下,原始檔案內容如下:
相關旗標資訊可參考 /bin/nova-api --help 或 OpenStack Compute Administration 手冊中 Setting Flags in the nova.conf 章節。
設定 nova.conf 後,必須產生一個 "nova" 群組
將 nova.conf 的權限設定給予 root,並保證使用者 nova 隸屬於 nova 群組
緊接著設定 OpenStack Compute 環境,利用 Identity 服務保證資料庫 schema 的及時性。
旗標與環境設定完成後,需產生 Credentials (zip file)。
解壓縮 credentials 的 zip 檔在家目錄下,並加入至安裝環境中。
最後,別忘了啟動存取 VM;使用 "euca-authorize" 指令啟動存取。
如已使用 "euca-authorize" 指令,但無法透過 ping 或 SSH 方式進行存取 VM,請使用下列方法解決問題。
安裝至此,已完成所有安裝與設定之步驟,請帶著愉快的心情使用 OpenStack 吧!:D
首先,必須設定 nova.conf 檔案中的旗標。nova.conf 位在 /etc/nova 下,原始檔案內容如下:
--daemonize=1
--dhcpbridge_flagfile=/etc/nova/nova.conf
--dhcpbridge=/bin/nova-dhcpbridge
--logdir=/var/log/nova
--state_path=/var/lib/nova
相關旗標資訊可參考 /bin/nova-api --help 或 OpenStack Compute Administration 手冊中 Setting Flags in the nova.conf 章節。
設定 nova.conf 後,必須產生一個 "nova" 群組
sudo addgroup nova
將 nova.conf 的權限設定給予 root,並保證使用者 nova 隸屬於 nova 群組
sudo usermod -g nova nova
chown -R root:nova /etc/nova
chmod 640 /etc/nova/nova.conf
緊接著設定 OpenStack Compute 環境,利用 Identity 服務保證資料庫 schema 的及時性。
nova-manage db sync
nova-manage user admin <user_name>
nova-manage project create <project_name> <user_name>
nova-manage network create <network-label> <project-network> <number-of-networks-in-project> <addresses-in-each-network>
旗標與環境設定完成後,需產生 Credentials (zip file)。
mkdir –p /root/creds
/usr/bin/python /usr/bin/nova-manage project zipfile $NOVA_PROJECT $NOVA_PROJECT_USER /root/creds/novacreds.zip
解壓縮 credentials 的 zip 檔在家目錄下,並加入至安裝環境中。
unzip /root/creds/novacreds.zip -d /root/creds/
cat /root/creds/novarc >> ~/.bashrc
source ~/.bashrc
最後,別忘了啟動存取 VM;使用 "euca-authorize" 指令啟動存取。
euca-authorize -P icmp -t -1:-1 default
euca-authorize -P tcp -p 22 default
如已使用 "euca-authorize" 指令,但無法透過 ping 或 SSH 方式進行存取 VM,請使用下列方法解決問題。
killall dnsmasq
service nova-network restart
安裝至此,已完成所有安裝與設定之步驟,請帶著愉快的心情使用 OpenStack 吧!:D
訂閱:
文章 (Atom)