前言: 親身用了大半年,沒出過重大毛病,也就是服務掛了,跟伺服器也沒啥關係。如果想更深入學習cloudstack可以試試高級網路,我是一直用的簡單網路(扁平網路)。由來:CloudStack的前身是Cloud com,後被思傑收購。英特爾、阿爾卡特-朗迅、瞻博網路、博科等都已宣佈支持CloudSta ...
前言:
親身用了大半年,沒出過重大毛病,也就是服務掛了,跟伺服器也沒啥關係。如果想更深入學習cloudstack可以試試高級網路,我是一直用的簡單網路(扁平網路)。
由來:
CloudStack的前身是Cloud com,後被思傑收購。英特爾、阿爾卡特-朗迅、瞻博網路、博科等都已宣佈支持CloudStack。2011年7月,Citrix收購Cloud com,並將CloudStack 100%開源。2012年4月5日,Citrix又宣佈將其擁有的CloudStack開源軟體交給Apache軟體基金會管理。CloudStack已經有了許多商用客戶,包括GoDaddy、英國電信、日本電報電話公司、塔塔集團、南韓電信等。再具體的簡介大家百度吧。
伺服器主機名及IP地址:
openstack-node1 192.168.100.4
系統版本:
CentOS Linux release 7.2.1511 (Core)
Cloudstack版本:4.8
linux系統基礎優化:大部分略過了
關閉selinux:
sed -i s#'SELINUX=enforcing'#'SELINUX=disabled'#g /etc/selinux/config
setenforce 0
關閉防火牆:
systemctl stop firewalld
systemctl disable firewalld
安裝NTP(時間同步):
yum -y install ntp
systemctl enable ntpd
安裝ManagementServer (管理端的源)
vi /etc/yum.repos.d/cloudstack.repo
[cloudstack]
name=cloudstack
baseurl=http://cloudstack.apt-get.eu/centos/7/4.8/
enabled=1
gpgcheck=0
安裝Cloudstack管理server
yum -y install cloudstack-management
安裝資料庫(mysql和mariadb都可以)
yum install mariadb mariadb-server
vi /etc/my.cnf
###一般會在/etc/my.cnf.d里有個mariadb的配置文件,cp到上一級覆蓋就可
[mysqld]
innodb_rollback_on_timeout=1
innodb_lock_wait_timeout=600
max_connections=350
log-bin=mysql-bin
binlog-format = 'ROW'
systemctl start mariadb ###啟動資料庫
systemctl enable mariadb ###開機自啟動
初始化資料庫
mysql_secure_installation
###設置密碼然後一路yyyy
cloudstack-setup-databases cloud:cloud@localhost --deploy-as=root:citylife -i 192.168.100.4
###重置資料庫citylife是我的資料庫密碼
cloudstack-setup-management --tomcat7
啟動
systemctl start cloudstack-management
配置NFS存儲
yum -y install nfs-utils rpcbind
配置功能變數名稱(很隨意了)
vi /etc/idmapd.conf
Domain = xxx
準備NFS目錄
mkdir -p /data/cloudstack/{primary,secondary}
修改nfs服務參數
vim /etc/sysconfig/nfs (直接載入結尾也可以)
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
RQUOTAD_PORT=875
MOUNTD_PORT=892
STATD_PORT=662
STATD_OUTGOING_PORT=2020
RPCNFSDARGS="-N 4"
配置文件
vi /etc/exports
/data/cloudstack/primary *(rw,async,no_root_squash,no_subtree_check)
/data/cloudstack/secondary *(rw,async,no_root_squash,no_subtree_check)
設置nfs掛載配置文件
vi /etc/nfsmount.conf
Nfsvers=3
啟動
systemctl enable rpcbind
systemctl enable nfs-server
systemctl start rpcbind
systemctl start nfs-server
測試掛載
mount -t nfs 192.168.100.4:/data/cloudstack/primary /mnt
df -h ###查看有了代表成功
umount /mnt
下載系統VM模板
/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /data/cloudstack/secondary -uhttp://cloudstack.apt-get.eu/systemvm/4.6/systemvm64template-4.6.0-kvm.qcow2.bz2 -h kvm -F
安裝agent(cloudstack主機,如果部署集群,備機只需要直接部署agent)
yum -y install cloudstack-agent
vi /etc/libvirt/qemu.conf 並取消如下行的註釋
vnc_listen=0.0.0.0
配置KVM
vi /etc/libvirt/libvirtd.conf
listen_tls = 0
listen_tcp = 1
tcp_port = "16059"
auth_tcp = "none"
mdns_adv = 0
vi /etc/sysconfig/libvirtd
LIBVIRTD_ARGS="--listen"
systemctl restart libvirtd
systemctl enable libvirtd
配置agent
vi /etc/cloudstack/agent/agent.properties
host=192.168.100.4
配置網卡(做橋接)
網卡1
vi /etc/sysconfig/network-scripts/ifcfg-em1
###編輯第一塊網卡 是什麼就編輯什麼 我這叫em1
TYPE=Ethernet
IPV6INIT=no
DEVICE=em1
ONBOOT=yes
BRIDGE=cloudbr0
網卡橋接
vi /etc/sysconfig/network-scripts/ifcfg-cloudbr0
####名字也可以自定義,要和裡邊配置對應上
TYPE=Bridge
BOOTPROTO=static
DEVICE=cloudbr0
IPV6INIT=no
ONBOOT=yes
IPADDR=192.168.100.4
NETMASK=255.255.255.0
GATEWAY=192.168.110.1
DNS1=202.106.0.20 ###我寫了個公網的
初始化cloudstack-agent
cloudstack-setup-agent ##一路回車
systemctl restart cloudstack-agent
systemctl restart libvirtd
查看8080埠是否啟動
netstat -tunlp|grep 8080
打開瀏覽器,我們進行下一步配置
http://192.168.100.4:8080/client/ 賬號admin 密碼password
登錄
點左下角的,我們需要配置兩個參數。
第一個:cpu負載 我們改成2.0
全局設置--搜索cpu 預設是1.0
第二個:我們加上我們的網段,不加會起不來主機
搜索allow預設是0.0.0.0
之後重啟我們的管理服務
systemctl restart cloudstack-management
等一會我們可以看日誌:報錯會拋java異常,如果你看得懂你就看
tailf /var/log/cloudstack/management/management-server.log
目前為止如果沒報錯你已經成功了一半,後續請看《快速部署簡單私有雲CloudStack(下)》