在Ubuntu Server 12.04.1 安装部署CloudStack 4.0企业私有云平台
http://www.milltoo.com/forum.php?mod=viewthread&tid=2543
在Ubuntu Server 12.04.1 安装部署CloudStack 4.0企业私有云平台
1. 什么是CloudStack
2. 宿主机的系统需求
3. 配置安装源
4. 安装Management Server
5. 安装配置KVM虚拟化Host主机
6. 用户界面
7. 配置Management Server
8. 创建Instance类型
9. 创建ISO安装源并创建Instance
10. 创建并定制Template
11. 通过定制的Template创建VM Instance
12. 其它优化设置
参考资料
环境介绍
OS: Ubuntu Server 12.04.1 64-bit
Server:
10.6.203.10 cloudstack-server-1
- CloudStack Management Server
- CloudStack Agent
- NFS Server
- MySQL Server
注:CloudStack支持很好的分布式架构,上面 - 代表的所有角色都可以部署在不同的机器上,但在测试环境中因为条件有限我全部都部署到了一台机器上。
OS: Ubuntu Server 12.04.1 64-bit
Server:
10.6.203.10 cloudstack-server-1
- CloudStack Management Server
- CloudStack Agent
- NFS Server
- MySQL Server
注:CloudStack支持很好的分布式架构,上面 - 代表的所有角色都可以部署在不同的机器上,但在测试环境中因为条件有限我全部都部署到了一台机器上。
1. 什么是CloudStack
CloudStack是一个开源的具有高可用性及扩展性的云计算平台。
提到开源的云计算平台,相信大家首先想到的可能是OpenStack,目前国内的几家云计算平台如阿里云、盛大云以及新浪SAE貌似都基于OpenStack做了二次开发。
但使用过CloudStack之后,你会发现其实CloudStack更像是一个商业化过后的产品,有着非常好的用户界面,各个模块默认集成的很好,且安装与部署过程也相对容易一些。
CloudStack是一个开源的具有高可用性及扩展性的云计算平台。
提到开源的云计算平台,相信大家首先想到的可能是OpenStack,目前国内的几家云计算平台如阿里云、盛大云以及新浪SAE貌似都基于OpenStack做了二次开发。
但使用过CloudStack之后,你会发现其实CloudStack更像是一个商业化过后的产品,有着非常好的用户界面,各个模块默认集成的很好,且安装与部署过程也相对容易一些。
事实上,CloudStack的前身是Cloud.com,后来被思杰收购。2011年7月,Citrix收购Cloud.com,将CloudStack 100%开源并交给Apache软件基金会管理。
同时,CloudStack已经有了许多商用客户,包括GoDaddy、英国电信、日本电报电话公司、塔塔集团、韩国电信等。
同时,CloudStack已经有了许多商用客户,包括GoDaddy、英国电信、日本电报电话公司、塔塔集团、韩国电信等。
因此,CloudStack本身其实就是一个商业化过后的产品,然后在面对OpenStack等开源系统的巨大竞争压力的情况下选择了同样的开源。
目前Cloudstack支持管理大部分主流的hypervisors,如KVM,XenServer,VMware,Oracle VM,Xen等。
CloudStack具有商业软件所拥有的完善的用户权限管理,可以让用户构建一个安全的多租户云计算环境。
同时兼容Amazon AWS API 接口,可用来管理AWS的资源。
CloudStack的官方网址如下(目前还处于Apache基金会的孵化器中):
CloudStack具有商业软件所拥有的完善的用户权限管理,可以让用户构建一个安全的多租户云计算环境。
同时兼容Amazon AWS API 接口,可用来管理AWS的资源。
CloudStack的官方网址如下(目前还处于Apache基金会的孵化器中):
http://incubator.apache.org/cloudstack/
2. 宿主机的系统需求
由于CloudStack 4.0 限定了libvirt版本 > 0.9.4,并在社区宣称所支持的OS为 CentOS/RHEL 6.2 以上或 Ubuntu Server 12.04。
因此,这里我们选择 Ubuntu Server 12.04.1 作为我们的操作系统。
官方下载地址: http://releases.ubuntu.com/preci ... .1-server-amd64.iso
由于CloudStack 4.0 限定了libvirt版本 > 0.9.4,并在社区宣称所支持的OS为 CentOS/RHEL 6.2 以上或 Ubuntu Server 12.04。
因此,这里我们选择 Ubuntu Server 12.04.1 作为我们的操作系统。
官方下载地址: http://releases.ubuntu.com/preci ... .1-server-amd64.iso
另外,官方要求硬件至少满足以下条件:
1) 支持硬件虚拟化(Intel-VT 或 AMD-V)
2) 64位的x86 CPU
3) 4G内存
4) 36GB硬盘
5) 1张网卡
1) 支持硬件虚拟化(Intel-VT 或 AMD-V)
2) 64位的x86 CPU
3) 4G内存
4) 36GB硬盘
5) 1张网卡
3. 配置安装源
配置国内的网易镜像源
$ sudo sed -i s/us.archive.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
$ sudo sed -i s/security.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
配置国内的网易镜像源
$ sudo sed -i s/us.archive.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
$ sudo sed -i s/security.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
配置CloudStack官方源
$ sudo vim /etc/apt/sources.list.d/cloudstack.list
deb http://cloudstack.apt-get.eu/ubuntu precise 4.0
$ sudo vim /etc/apt/sources.list.d/cloudstack.list
deb http://cloudstack.apt-get.eu/ubuntu precise 4.0
配置CloudStack官方源证书
$ wget -O - http://cloudstack.apt-get.eu/release.asc| sudo apt-key add -
$ wget -O - http://cloudstack.apt-get.eu/release.asc| sudo apt-key add -
更新系统的安装源
$ sudo apt-get update
$ sudo apt-get update
4. 安装Management Server
4.1 准备好操作系统环境
查看主机名
$ hostname --fqdn
cloudstack-server-1
4.1 准备好操作系统环境
查看主机名
$ hostname --fqdn
cloudstack-server-1
$ sudo vim /etc/hosts
添加以下记录
10.6.203.10 cloudstack-server-1
添加以下记录
10.6.203.10 cloudstack-server-1
安装时间服务器
$ sudo apt-get install openntpd
$ sudo apt-get install openntpd
4.2 下载安装 CloudStack Management Server 与 vhd-util
安装CloudStack Management Server
$ sudo apt-get install cloud-client
安装CloudStack Management Server
$ sudo apt-get install cloud-client
将用户cloud加入到sudo用户组 //CloudStack默认以cloud用户启动,但默认会通过sudo以root身份管理相关文件与目录
$ sudo adduser cloud sudo
$ sudo adduser cloud sudo
配置sudo用户组免密码切换 //同样是为了解决和上面相同的权限问题
$ sudo visudo
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
$ sudo visudo
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
初始化root用户密码,如cloudstack //CloudStack默认需要root权限远程SSH连接到Agent
$ sudo -i
# passwd
$ sudo -i
# passwd
1 | Enter new UNIX password: |
2 | Retype new UNIX password: |
3 | passwd: password updated successfully |
# chmod 777 /root //为了解决一个bug,即CloudStack默认以cloud用户启动,但却读取的是启动服务的用户的home目录用来存放一些临时文件,从而导致权限问题
$ exit
$ exit
下载vhd-util
$ sudo wget http://download.cloud.com.s3.amazonaws.com/tools/vhd-util
$ sudo mv vhd-util /usr/lib/cloud/common/scripts/vm/hypervisor/xenserver/
$ sudo wget http://download.cloud.com.s3.amazonaws.com/tools/vhd-util
$ sudo mv vhd-util /usr/lib/cloud/common/scripts/vm/hypervisor/xenserver/
4.3 安装配置MySQL数据库
$ sudo apt-get install mysql-server
在弹出的界面中输入密码,如: cloudstack
$ sudo apt-get install mysql-server
在弹出的界面中输入密码,如: cloudstack
修改MySQL配置文件参数
$ sudo vim /etc/mysql/my.cnf
在[mysqld]模块中加入以下参数
$ sudo vim /etc/mysql/my.cnf
在[mysqld]模块中加入以下参数
1 | innodb_rollback_on_timeout=1 |
2 | innodb_lock_wait_timeout=600 |
3 | max_connections=350 |
4 | log-bin=mysql-bin |
5 | binlog-format = 'ROW' |
重启MySQL
$ sudo service mysql restart
$ sudo service mysql restart
初始化数据库cloud
$ sudo cloud-setup-databases cloud:cloudstack @localhost --deploy-as=root:cloudstack -e file -m cloudstack -k cloudstack
$ sudo cloud-setup-databases cloud:cloudstack @localhost --deploy-as=root:cloudstack -e file -m cloudstack -k cloudstack
01 | Mysql user name:cloud [ OK ] |
02 | Mysql user password:cloudstack [ OK ] |
03 | Mysql server ip:localhost [ OK ] |
04 | Mysql server port:3306 [ OK ] |
05 | Mysql root user name:root [ OK ] |
06 | Mysql root user password:cloudstack [ OK ] |
07 | Checking Cloud database files ... [ OK ] |
08 | Checking local machine hostname ... [ OK ] |
09 | Checking SELinux setup ... [ OK ] |
10 | Detected local IP address as 10.6.203.10, |
11 | will use as cluster management server node IP [ OK ] |
12 | Preparing /etc/cloud/management/db.properties [ OK ] |
13 | Applying /usr/share/cloud/setup/create-database.sql [ OK ] |
14 | Applying /usr/share/cloud/setup/create-schema.sql [ OK ] |
15 | Applying /usr/share/cloud/setup/create-database-premium.sql [ OK ] |
16 | Applying /usr/share/cloud/setup/create-schema-premium.sql [ OK ] |
17 | Applying /usr/share/cloud/setup/server-setup.sql [ OK ] |
18 | Applying /usr/share/cloud/setup/templates.sql [ OK ] |
19 | Applying /usr/share/cloud/setup/create-index-fk.sql [ OK ] |
20 | Processing encryption ... [ OK ] |
21 | Finalizing setup ... [ OK ] |
22 |
23 | CloudStack has successfully initialized database, |
24 | you can check your database configuration in /etc/cloud/management/db.properties |
4.4 配置NFS共享
CloudStack 需要一个地方来存放Primar和Secondary Storage,官方推荐使用NFS共享。
CloudStack 需要一个地方来存放Primar和Secondary Storage,官方推荐使用NFS共享。
安装NFS
$ sudo apt-get install nfs-common nfs-kernel-server
$ sudo apt-get install nfs-common nfs-kernel-server
创建目录
$ sudo mkdir -p /export/primary
$ sudo mkdir -p /export/secondary
$ sudo mkdir -p /export/primary
$ sudo mkdir -p /export/secondary
编辑NFS配置文件
$ sudo vim /etc/exports
$ sudo vim /etc/exports
1 | /export *(rw,async,no_root_squash,no_subtree_check) |
刷新配置
$ sudo exportfs -a
$ sudo exportfs -a
挂载测试NFS共享
$ sudo mkdir /mnt/primary
$ sudo mount -t nfs 10.6.203.10:/export/primary /mnt/primary
$ sudo mkdir /mnt/secondary
$ sudo mount -t nfs 10.6.203.10:/export/secondary /mnt/secondary
$ sudo mkdir /mnt/primary
$ sudo mount -t nfs 10.6.203.10:/export/primary /mnt/primary
$ sudo mkdir /mnt/secondary
$ sudo mount -t nfs 10.6.203.10:/export/secondary /mnt/secondary
$ df -h
1 | Filesystem Size Used Avail Use% Mounted on |
2 | ... |
3 | 10.6.203.10:/export/primary 434G 7.8G 404G 2% /mnt/primary |
4 | 10.6.203.10:/export/secondary 434G 7.8G 404G 2% /mnt/secondary |
$ sudo vim /etc/fstab
增加以下内容
增加以下内容
1 | 10.6.203.10:/export/primary /mnt/primary nfs rw,tcp,intr 0 1 |
2 | 10.6.203.10:/export/secondary /mnt/secondary nfs rw,tcp,intr 0 1 |
4.5 准备System VM Template
我们选择KVM作为虚拟化引擎
$ sudo /usr/lib/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary \
-u http://download.cloud.com/templa ... -02062012.qcow2.bz2 -h kvm -F
整个过程大概需要花费半个小时
我们选择KVM作为虚拟化引擎
$ sudo /usr/lib/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary \
-u http://download.cloud.com/templa ... -02062012.qcow2.bz2 -h kvm -F
整个过程大概需要花费半个小时
01 | --2012-11-12 14:49:18-- http://download.cloud.com/templates/acton/acton-systemvm-02062012.qcow2.bz2 |
02 | Resolving download.cloud.com (download.cloud.com)... 207.171.189.81 |
03 | Connecting to download.cloud.com (download.cloud.com)|207.171.189.81|:80... connected. |
04 | HTTP request sent, awaiting response... 200 OK |
05 | Length: 286036668 (273M) [binary/octet-stream] |
06 | Saving to: `/usr/lib/cloud/common/scripts/storage/secondary/4aae2546-33e1-4784-9e69-09e1ef9d6fb4.qcow2' |
07 |
08 | 100%[======================================================================>] 286,036,668 188K/s in 24m 53s |
09 |
10 | 2012-11-12 15:14:13 (187 KB/s) - `/usr/lib/cloud/common/scripts/storage/secondary/4aae2546-33e1-4784-9e69-09e1ef9d6fb4.qcow2' saved [286036668/286036668] |
11 |
12 | Uncompressing to /usr/lib/cloud/common/scripts/storage/secondary/4aae2546-33e1-4784-9e69-09e1ef9d6fb4.qcow2.tmp (type bz2)...could take a long time |
13 | Moving to /mnt/secondary/template/tmpl/1/3///4aae2546-33e1-4784-9e69-09e1ef9d6fb4.qcow2...could take a while |
14 | Successfully installed system VM template to /mnt/secondary/template/tmpl/1/3/ |
5. 安装配置KVM虚拟化Host主机
5.1 安装配置Agent
$ sudo apt-get install cloud-agent
$ sudo apt-get install cloud-agent
5.2 安装配置libvirt
$ sudo vim /etc/libvirt/libvirtd.conf
修改以下配置
$ sudo vim /etc/libvirt/libvirtd.conf
修改以下配置
1 | listen_tls = 0 |
2 | listen_tcp = 1 |
3 | tcp_port = "16059" |
4 | auth_tcp = "none" |
5 | mdns_adv = 0 |
查看配置
$ cat /etc/libvirt/libvirtd.conf | grep -v '#' | grep -v "^$"
$ cat /etc/libvirt/libvirtd.conf | grep -v '#' | grep -v "^$"
1 | listen_tls = 0 |
2 | listen_tcp = 1 |
3 | tcp_port = "16509" |
4 | mdns_adv = 0 |
5 | unix_sock_group = "libvirtd" |
6 | unix_sock_rw_perms = "0770" |
7 | auth_unix_ro = "none" |
8 | auth_unix_rw = "none" |
9 | auth_tcp = "none" |
$ sudo vim /etc/init/libvirt-bin.conf
修改以下参数
修改以下参数
1 | env libvirtd_opts="-d -l" |
# sudo vim /etc/libvirt/qemu.conf
修改以下参数
修改以下参数
1 | vnc_listen = "0.0.0.0" |
重启服务
$ sudo service libvirt-bin restart
$ sudo service libvirt-bin restart
5.3 配置安全策略
$ sudo dpkg --list "apparmor"
$ sudo dpkg --list "apparmor"
1 | Desired=Unknown/Install/Remove/Purge/Hold |
2 | | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |
3 | |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) |
4 | ||/ Name Version Description |
5 | +++-===================================-===================================-====================================================================================== |
6 | ii apparmor |
7 | 2.7.102-0ubuntu3.1 User-space parser utility for AppArmor |
$ sudo ln -s /etc/apparmor.d/usr.sbin.libvirtd /etc/apparmor.d/disable/
$ sudo ln -s /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper /etc/apparmor.d/disable/
$ sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.libvirtd
$ sudo apparmor_parser -R /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper
$ sudo ln -s /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper /etc/apparmor.d/disable/
$ sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.libvirtd
$ sudo apparmor_parser -R /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper
5.4 配置网桥
需要注意的是,官方文档给出的配置参数会导致网络不可用。
正确的配置是将物理网卡设置为manual,然后在虚拟网卡上设置IP并桥接到物理网卡上。
$ sudo vim /etc/network/interfaces
需要注意的是,官方文档给出的配置参数会导致网络不可用。
正确的配置是将物理网卡设置为manual,然后在虚拟网卡上设置IP并桥接到物理网卡上。
$ sudo vim /etc/network/interfaces
01 | # This file describes the network interfaces available on your system |
02 | # and how to activate them. For more information, see interfaces(5). |
03 |
04 | # The loopback network interface |
05 | auto lo |
06 | iface lo inet loopback |
07 |
08 | # The primary network interface |
09 | auto eth0 |
10 | iface eth0 inet manual |
11 |
12 | # Public network |
13 | auto cloudbr0 |
14 | iface cloudbr0 inet static |
15 | address 10.6.203.10 |
16 | netmask 255.255.0.0 |
17 | gateway 10.6.255.1 |
18 | bridge_ports eth0 |
19 | bridge_fd 5 |
20 | bridge_stp off |
21 | bridge_maxwait 1 |
22 | dns-nameservers 10.6.255.253 61.139.2.69 |
23 |
24 | # Private network |
25 | auto cloudbr1 |
26 | iface cloudbr1 inet manual |
27 | bridge_ports eth0 |
28 | bridge_fd 5 |
29 | bridge_stp off |
30 | bridge_maxwait 1 |
$ sudo /etc/init.d/networking restart
$ sudo /etc/init.d/networking start
$ sudo /etc/init.d/networking start
5.5 配置防火墙
$ sudo ufw allow proto tcp from any to any port 22
$ sudo ufw allow proto tcp from any to any port 80
$ sudo ufw allow proto tcp from any to any port 1798
$ sudo ufw allow proto tcp from any to any port 16509
$ sudo ufw allow proto tcp from any to any port 5900:6100
$ sudo ufw allow proto tcp from any to any port 49152:49216
$ sudo ufw allow proto tcp from any to any port 22
$ sudo ufw allow proto tcp from any to any port 80
$ sudo ufw allow proto tcp from any to any port 1798
$ sudo ufw allow proto tcp from any to any port 16509
$ sudo ufw allow proto tcp from any to any port 5900:6100
$ sudo ufw allow proto tcp from any to any port 49152:49216
6. 用户界面
禁用系统默认的tomcat服务
$ sudo /etc/init.d/tomcat6 stop
禁用系统默认的tomcat服务
$ sudo /etc/init.d/tomcat6 stop
1 | * Stopping Tomcat servlet engine tomcat6 [ OK ] |
$ sudo update-rc.d -f tomcat6 remove
1 | Removing any system startup links for /etc/init.d/tomcat6 ... |
2 | /etc/rc0.d/K08tomcat6 |
3 | /etc/rc1.d/K08tomcat6 |
4 | /etc/rc2.d/S92tomcat6 |
5 | /etc/rc3.d/S92tomcat6 |
6 | /etc/rc4.d/S92tomcat6 |
7 | /etc/rc5.d/S92tomcat6 |
8 | /etc/rc6.d/K08tomcat6 |
启动cloud-management
$ cd ~
$ sudo /etc/init.d/cloud-management restart
$ cd ~
$ sudo /etc/init.d/cloud-management restart
1 | * Starting CloudStack-specific Tomcat servlet engine cloud-management [ OK ] |
登陆用户界面
http://10.6.203.10:8080/client/
默认账号密码
admin/password
admin/password
7.1 修改Web管理员默认密码
登陆 http://10.6.203.10:8080/client
进入 Accounts - admin - View Users - admin 页面,点击 Change Password
登陆 http://10.6.203.10:8080/client
进入 Accounts - admin - View Users - admin 页面,点击 Change Password
7.2 创建相关配置
在用户界面中通过向导,依次创建
"Zone" - "Add Zone" - "Physical Network" - "Pod" - "Guest Traffic" - "Storage Traffic" -
"Cluster" - "Host" - "Primary Storage" - "Secondary Storage"
在用户界面中通过向导,依次创建
"Zone" - "Add Zone" - "Physical Network" - "Pod" - "Guest Traffic" - "Storage Traffic" -
"Cluster" - "Host" - "Primary Storage" - "Secondary Storage"
8. 创建Instance类型
默认有Small Instance和Medium Instance
我们再分别创建两个类型:Large 和 xLarge,如下图所示:
默认有Small Instance和Medium Instance
我们再分别创建两个类型:Large 和 xLarge,如下图所示:
9. 创建ISO安装源并创建Instance
在用户界面中配置
Template - Select view: ISO - Redister ISO
在用户界面中配置
Template - Select view: ISO - Redister ISO
1 | Name: Ubuntu-10.10 |
2 | Description: Ubuntu Server 10.10 64-bit x86 |
3 | URL: http://old-releases.ubuntu.com/releases/maverick/ubuntu-10.10-server-amd64.iso |
4 | Zone: All Zones |
5 | Bootable: Yes |
6 | OS Type: Ubuntu 10.10 (64-bit) |
7 | Extractable: Yes |
8 | Public: Yes |
9 | Featured: Yes |
接着,就可以开始使用ISO创建Instance,并在后面跟将其制作成为Template了。
如果想下载的速度快一些,可以通过在主机上搭建一个HTTP Server
但需要登录到Secondary Storage VM内部对防火墙规则进行一些修改,否则无法访问主机的80端口
具体步骤如下
$ sudo apt-get install apache2
但需要登录到Secondary Storage VM内部对防火墙规则进行一些修改,否则无法访问主机的80端口
具体步骤如下
$ sudo apt-get install apache2
$ sudo netstat -lntp | grep -w 80
1 | tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 6157/apache2 |
上传Ubuntu安装ISO到服务器的/var/www/iso,例如ubuntu-10.10-server-amd64.iso
$ sudo mkdir /var/www/iso
$ sudo chown www-data:www-data /var/www/iso
$ sudo chown www-data:www-data /var/www/iso/ubuntu-10.10-server-amd64.iso
$ sudo chown www-data:www-data /var/www/iso
$ sudo chown www-data:www-data /var/www/iso/ubuntu-10.10-server-amd64.iso
登录Secondary Storage VM修改防火墙规则
$ sudo -i
# ssh -i .ssh/id_rsa.cloud -p 3922 169.254.1.99
root@s-30-VM:~# iptables -D OUTPUT -o eth1 -p tcp -m state --state NEW -m tcp --dport 80 -j REJECT --reject-with icmp-port-unreachable
$ sudo -i
# ssh -i .ssh/id_rsa.cloud -p 3922 169.254.1.99
root@s-30-VM:~# iptables -D OUTPUT -o eth1 -p tcp -m state --state NEW -m tcp --dport 80 -j REJECT --reject-with icmp-port-unreachable
10. 创建并定制Template
10.1 创建初始Instance
通过刚刚安装的ISO文件来创建一个Instance
具体步骤如下
10.1 创建初始Instance
通过刚刚安装的ISO文件来创建一个Instance
具体步骤如下
10.2 通过View console执行操作系统的安装过程
通过在创建好的Instance的属性页面上点击 View console,即通过Web界面操作本地图形终端
执行操作系统的安装过程,安装好操作系统。
通过在创建好的Instance的属性页面上点击 View console,即通过Web界面操作本地图形终端
执行操作系统的安装过程,安装好操作系统。
10.3 定制Template
操作系统安装完成以后,由于计划以该操作系统来制作Template,所以需要进行如下修改
10.3.1 安装openssh client和server (通过View console)
ubuntu@Template-Instance:~$ sudo apt-get install ssh
操作系统安装完成以后,由于计划以该操作系统来制作Template,所以需要进行如下修改
10.3.1 安装openssh client和server (通过View console)
ubuntu@Template-Instance:~$ sudo apt-get install ssh
后面的步骤就可以通过SSH来完成了。
10.3.2 配置国内的网易镜像源
ubuntu@Template-Instance:~$ sudo sed -i s/us.archive.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
ubuntu@Template-Instance:~$ sudo sed -i s/security.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
ubuntu@Template-Instance:~$ sudo apt-get update
ubuntu@Template-Instance:~$ sudo sed -i s/us.archive.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
ubuntu@Template-Instance:~$ sudo sed -i s/security.ubuntu.com/mirrors.163.com/g /etc/apt/sources.list
ubuntu@Template-Instance:~$ sudo apt-get update
10.3.3 配置sudo用户组免密码切换
ubuntu@Template-Instance:~$ sudo visudo
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
%admin ALL=(ALL) NOPASSWD:ALL
ubuntu@Template-Instance:~$ sudo visudo
%sudo ALL=(ALL:ALL) NOPASSWD:ALL
%admin ALL=(ALL) NOPASSWD:ALL
10.3.4 安装常用工具
ubuntu@Template-Instance:~$ sudo apt-get install vim lrzsz
ubuntu@Template-Instance:~$ sudo apt-get install vim lrzsz
10.3.5 去除主机名相关配置
这样做是为了后面利用该Template创建的Instance能够自动生成特有的主机名
ubuntu@Template-Instance:~$ sudo vim /etc/hosts
注释或删除以下内容
#127.0.1.1 Template-Instance.cs1cloud.internal Template-Instance
这样做是为了后面利用该Template创建的Instance能够自动生成特有的主机名
ubuntu@Template-Instance:~$ sudo vim /etc/hosts
注释或删除以下内容
#127.0.1.1 Template-Instance.cs1cloud.internal Template-Instance
将/etc/hostname文件更名或删除
ubuntu@Template-Instance:~$ sudo mv /etc/hostname /etc/hostname.template
ubuntu@Template-Instance:~$ sudo mv /etc/hostname /etc/hostname.template
10.3.6 关闭Instance
ubuntu@Template-Instance:~$ sudo sync
ubuntu@Template-Instance:~$ sudo poweroff
ubuntu@Template-Instance:~$ sudo sync
ubuntu@Template-Instance:~$ sudo poweroff
Name: Ubuntu-10.10
Description: Ubuntu Server 10.10 64-bit x86 with SSH
OS Type: Ubuntu 10.10 (64-bit)
Public: Yes
Password Enabled: No
Featured: No
Description: Ubuntu Server 10.10 64-bit x86 with SSH
OS Type: Ubuntu 10.10 (64-bit)
Public: Yes
Password Enabled: No
Featured: No
init3-15.png
11. 通过定制的Template创建VM Instance
通过刚刚创建好的Template,我们可以快速创建新的Instance
通过刚刚创建好的Template,我们可以快速创建新的Instance
12. 其它优化设置
CloudStack对已经删除的Instance设置了一个保护时间
时间比较长,等于86400秒即24小时,我们可以将其设置的短一些
如300秒,即五分钟
在Global Settings中搜索expunge并设置,如下图所示
CloudStack对已经删除的Instance设置了一个保护时间
时间比较长,等于86400秒即24小时,我们可以将其设置的短一些
如300秒,即五分钟
在Global Settings中搜索expunge并设置,如下图所示
然后重启Management Server使配置生效
$ sudo /etc/init.d/cloud-management restart
$ sudo /etc/init.d/cloud-management restart
13. 结束语
目前,整个CloudStack的安装部署就已经完成了。
但,这仅仅是一个开始,CloudStack的更多功能,比如
1) 多节点分布式部署,将管理节点,Host节点,数据库,NFS存储区域都分开部署;
2) 集成 Amazon EC2;
3) VPC+VPN 网络实现;
4) 多用户权限设计与资源分配等
目前,整个CloudStack的安装部署就已经完成了。
但,这仅仅是一个开始,CloudStack的更多功能,比如
1) 多节点分布式部署,将管理节点,Host节点,数据库,NFS存储区域都分开部署;
2) 集成 Amazon EC2;
3) VPC+VPN 网络实现;
4) 多用户权限设计与资源分配等
都有待我们进一步的研究和学习。
目录 返回
首页