Iaas云基础平台搭建
分别安装两台最小化的centos6.5系统。要求配置双网卡,打开虚拟化。
安装系统
安装过程
正在安装包
在安装的过程中,将计算机名分别改为controller和compute
设置controller的eth0为10.0.0.10255.0.0.010.0.0.1
Controler的eth1为192.168.0.10255.255.255.0192.168.0.1
Compute的eth0为10.0.0.11255.0.0.010.0.0.1
Compute的eth1为192.168.0.11255.255.255.0192.168.0.1
做计算机名解析
测试控制节点和计算节点直接的通信
将centos光盘里的内容复制到/opt目录下,此外还要复制脚本script和repop_w_picpaths,我们可以使用工具传输
接下来将传输过来的光盘里面的文件,制作一个本地yum源,然后搭建一个ftp服务,用于后期我们的计算节点和控制节点之间的文件传输。
删除/etc/yum.repos.d/下原有的yum仓库。新建一个base的base.repo文件
切换到/opt/centos6.5/Packages目录下,手动安装createrepo-0.9.9-18.el6.noarch.rpm包
[root@controllerPackages]#rpm-ivhcreaterepo-0.9.9-18.el6.noarch.rpm
warning:createrepo-0.9.9-18.el6.noarch.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
error:Faileddependencies:
libxml2-pythonisneededbycreaterepo-0.9.9-18.el6.noarch
python-deltarpmisneededbycreaterepo-0.9.9-18.el6.noarch
根据提示,我们需要安装它的依赖包,所以要手动安装依赖包
[root@controllerPackages]#rpm-ivhlibxml2-python-2.7.6-14.el6.x86_64.rpm
warning:libxml2-python-2.7.6-14.el6.x86_64.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:libxml2-python###########################################[100%]
[root@controllerPackages]#rpm-ivhpython-deltarpm-3.5-0.5.0913git.el6.x86_64.rpm
warning:python-deltarpm-3.5-0.5.0913git.el6.x86_64.rpm:HeaderV3RSA/SHA256Signature,keyIDc105b9de:NOKEY
error:Faileddependencies:
deltarpm=3.5-0.5.0913git.el6isneededbypython-deltarpm-3.5-0.5.0913git.el6.x86_64
[root@controllerPackages]#rpm-ivhdeltarpm-3.5-0.5.0913git.el6.x86_64.rpm
warning:deltarpm-3.5-0.5.0913git.el6.x86_64.rpm:HeaderV3RSA/SHA256Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:deltarpm###########################################[100%]
[root@controllerPackages]#rpm-ivhpython-deltarpm-3.5-0.5.0913git.el6.x86_64.rpm
warning:python-deltarpm-3.5-0.5.0913git.el6.x86_64.rpm:HeaderV3RSA/SHA256Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:python-deltarpm###########################################[100%]
[root@controllerPackages]#rpm-ivhcreaterepo-0.9.9-18.el6.noarch.rpm
warning:createrepo-0.9.9-18.el6.noarch.rpm:HeaderV3RSA/SHA1Signature,keyIDc105b9de:NOKEY
Preparing...###########################################[100%]
1:createrepo###########################################[100%]
[root@controllerPackages]#
到此为止,我们已经安装好了依赖包。
执行命令
[root@controllerPackages]#createrepo-v/opt/centos
链接库文件
库文件链接过程
SavingPrimarymetadata
Savingfilelistsmetadata
Savingothermetadata
GeneratingsqliteDBs
Startingotherdbcreation:ThuJul1023:55:11
Endingotherdbcreation:ThuJul1023:55:13
Startingfilelistsdbcreation:ThuJul1023:55:14
Endingfilelistsdbcreation:ThuJul1023:55:21
Startingprimarydbcreation:ThuJul1023:55:21
Endingprimarydbcreation:ThuJul1023:55:26
SqliteDBscomplete
库文件链接完成。
配置base.repo内容如下:
[base]
name=centos
baseurl=file:///opt/centos/
enabled=1
gpgcheck=0
这样本地yum就配好了,安装vsftpd服务,在编辑vsftpd.conf配置文件,在末尾加入anon_root=/opt
[root@controlleryum.repos.d]#yuminstallvsftpd-y
重启服务,设置开机启动。
这里还要修改一下base.repo文件,改成从ftp获取,如下如
因为计算机点还要从控制节点获包。
接下来就开始配置另外几个yum仓库了。
所有的仓库配置文件可以参考下面的文件:
[root@controlleryum.repos.d]#cat*.repo
[base]
name=centos
baseurl=ftp://10.0.0.10/centos/
enabled=1
gpgcheck=0
[centos]
name=centos
baseurl=ftp://10.0.0.10/repo/centos6.5/
enabled=1
gpgcheck=0
[epel]
name=epel
baseurl=ftp://10.0.0.10/repo/epel6//epel/6/x86_64/
enabled=1
gpgcheck=0
[foreman]
name=foreman
baseurl=ftp://10.0.0.10/repo/foreman//release/1.3/el6/x86_64/
enabled=1
gpgcheck=0
[openstack]
name=openstack
baseurl=ftp://10.0.0.10/repo/openstack-havana/
enabled=1
gpgcheck=0
[puppetlabs]
name=puppetlabs
baseurl=ftp://10.0.0.10/repo/puppetlabs//el/6/products/x86_64/
enabled=1
gpgcheck=0
编辑openrc.sh设置环境变量
exportOS_USERNAME=admin
exportOS_PASSWORD=secrete
exportOS_TENANT_NAME=admin
exportOS_AUTH_URL=http://controller:35357/v2.0
exportHOST_IP=10.0.0.10
exportHOST_EXT_IP=192.168.1.10
exportFIX_RANGE=192.168.1.129/25
exportIMAGES_DIR=/var/lig/glance/p_w_picpaths
exportFTP_IMAGES_URL=ftp://10.0.0.10/p_w_picpaths
exportIMAGE_NAME_LINUX=centos-6.5-0117.0x86_64.qcow2
exportLINUX_IMAGE_LABEL=centos
exportLINUX_IAMGE_FILE_FORMAT=qcow2
exportKEYSTONE_DBPASS=keystone
exportDB_PASS=openstack
exportADMIN_PASS=secrete
exportGLANCE_DBPASS=glance
exportGLANCE_PASS=service
exportNOVA_DBPASS=nova
exportNOVA_PASS=service
exportDASH_DBPASS=service
exportCINDER_DBPASS=service
exportCINDER_PASS=service
exportDEMO_PASS=demo
exportMAIL_ADMIN_ADDR=admin@
exportMAIL_DEMO_ADDR=demo@
exportMAIL_GLANCE_ADDR=admin@
exportMAIL_NOVA_ADDR=admin@
配置完成后追加至/root/.bash_profile中
[root@controllerscript]#catopenrc.sh>/root/.bash_profile
执行source/root/.bash_profile生效
[root@controllerscript]#source/root/.bash_profile
[root@controllerscript]#echo$DB_PASS
Openstack
查看是否生效
接下啦安装ntp时钟服务,我们可以调用写好的脚本文件
首先我们看一下,有哪些脚本文件
[root@controllerscript]#ll
total100
-rw-r--r--.1rootroot16320Apr317:49dnsmasq-utils-2.48-13.el6.x86_64.rpm
-rw-r--r--.1rootroot2496Apr308:05iaas-config-glance.sh
-rw-r--r--.1rootroot1070Apr317:18iaas-config-node.sh
-rw-r--r--.1rootroot2127Apr308:58iaas-config-nova.sh
-rw-r--r--.1rootroot359Apr307:58iaas-config-stone.sh
-rw-r--r--.1rootroot138Apr309:06iaas-create-network.sh
-rw-r--r--.1rootroot1088Apr307:43iaas-define-stone.sh
-rw-r--r--.1rootroot195Apr307:55iaas-install-db.sh
-rw-r--r--.1rootroot342Apr308:03iaas-install-glance.sh
-rw-r--r--.1rootroot2183Apr317:20iaas-install-node.sh
-rw-r--r--.1rootroot288Apr308:42iaas-install-nova.sh
-rw-r--r--.1rootroot242Apr307:39iaas-install-stone.sh
-rw-r--r--.1rootroot284Apr307:28iaas-pre-controller.sh
-rw-r--r--.1rootroot363Apr316:42iaas-pre-node.sh
-rw-r--r--.1rootroot245Apr308:40iaas-verify-glance.sh
-rw-r--r--.1rootroot16Apr308:59iaas-verify-nova.sh
-rw-r--r--.1rootroot278Apr307:47iaas-verify-stone.sh
-rw-r--r--.1rootroot394Apr318:08noderc.sh
-rw-r--r--.1rootroot886Jul1101:03openrc.sh
-rw-r--r--.1rootroot101Apr308:02source
-rw-r--r--.1rootroot101Apr308:02sourcecon
-rw-r--r--.1rootroot139Apr316:39sourcenode
首先执行脚本iaas-pre-controller.sh
看一下脚本内容:
[root@controllerscript]#catiaas-pre-controller.sh
yuminstall-yntp
servicentpdrestart
chkconfigntpdon
yuminstall-yqpid-cpp-servermemcached
serviceqpiddrestart
chkconfigqpiddon
yuminstall-yopenstack-utils
yuminstall-yopenstack-selinux
sed-i'/^SELINUX=/s/enforcing/permissive/g'/etc/selinux/config
yum-yupgrade
执行脚本
[root@controllerscript]#shiaas-pre-controller.sh
成功的标志
Updated:
ca-certificates.noarch0:.1.95-65.1.el6_5centos-release.x86_640:6-5.el6.centos.11.2coreutils.x86_640:8.4-31.el6_5.1coreutils-libs.x86_640:8.4-31.el6_5.1
dracut.noarch0:004-336.el6_5.2dracut-kernel.noarch0:004-336.el6_5.2ethtool.x86_642:3.5-1.2.el6_5glib2.x86_640:2.26.1-7.el6_5
grep.x86_640:2.6.3-4.el6_5.1initscripts.x86_640:9.03.40-2.el6.centos.1iproute.x86_640:2.6.32-ns.2kernel-firmware.noarch0:2.6.32-431.11.2.el6
mysql-libs.x86_640:5.1.73-3.el6_5nspr.x86_640:4.10.2-1.el6_5nss.x86_640:3.15.3-6.el6_5nss-sysinit.x86_640:3.15.3-6.el6_5
nss-tools.x86_640:3.15.3-6.el6_5nss-util.x86_640:3.15.3-1.el6_5openldap.x86_640:2.4.23-34.el6_5.1openssl.x86_640:1.0.1e-16.el6_5.4
p11-kit.x86_640:0.18.5-2.el6_5.2p11-kit-trust.x86_640:0.18.5-2.el6_5.2postfix.x86_642:2.6.6-6.el6_5psmisc.x86_640:22.6-19.el6_5
python.x86_640:2.6.6-52.el6python-libs.x86_640:2.6.6-52.el6selinux-policy.noarch0:3.7.19-231.el6_5.1selinux-policy-targeted.noarch0:3.7.19-231.el6_5.1
tzdata.noarch0:b-1.el6upstart.x86_640:0.6.5-13.el6_5.3yum.noarch0:3.2.29-43.el6.centosyum-plugin-fastestmirror.noarch0:1.1.30-17.el6_5
Complete!
接下来手动重启
这时候你会发现一个问题,/etc/yum.repo下又多了几个文件,这是升级内核导致的,所以要将多余的.repo文件删除
第二步就是安装数据库服务端
执行脚本iaas-install-db.sh
脚本内容:
yuminstall-ymysqlmysql-serverMySQL-python
sed-i"/^symbolic-links/a\bind-address=$HOST_IP"/etc/f
servicemysqldrestart
chkconfigmysqldon
mysql_install_db
mysql_secure_installation
安装过程中会提示
Entercurrentpasswordforroot(enterfornone)://直接回车
Setrootpassword?[Y/n]
Newpassword:
Re-enternewpassword:
这里的密码是openrc.sh中的DB_PASS中的参数
Removeanonymoususers?[Y/n]y
Disallowrootloginremotely?[Y/n]n
Removetestdatabaseandaccesstoit?[Y/n]y
Reloadprivilegetablesnow?[Y/n]y
接下来就是身份服务安装与配置
执行脚本iaas-install-stone.sh
脚本内容:
yuminstall-yopenstack-keystonepython-keystoneclient
openstack-config--set/etc/keystone/keystone.confsqlconnectionmysql://keystone:$KEYSTONE_DBPASS@$HOSTNAME/keystone
openstack-db--init--servicekeystone--password$KEYSTONE_DBPASS
提示输入密码,级前面输的密码
Pleaseenterthepasswordforthe'root'MySQLuser:
配置身份服务,执行脚本iaas-config-stone.sh
脚本内容:
ADMIN_TOKEN=$(opensslrand-hex10)
echo$ADMIN_TOKEN
openstack-config--set/etc/keystone/keystone.confDEFAULTadmin_token$ADMIN_TOKEN
keystone-managepki_setup--keystone-userkeystone--keystone-groupkeystone
chown-Rkeystone:keystone/etc/keystone/*/var/log/keystone/keystone.log
serviceopenstack-keystonerestart
chkconfigopenstack-keystoneon
结果:
接下来定义身份用户
执行脚本:iaas-define-stone.sh
脚本内容:
exportADMIN_TOKEN=`openstack-config--get/etc/keystone/keystone.confDEFAULTadmin_token`
exportOS_SERVICE_TOKEN=$ADMIN_TOKEN
exportOS_SERVICE_ENDPOINT=http://$HOSTNAME:35357/v2.0
keystoneuser-create--name=admin--pass=$ADMIN_PASS--email=$MAIL_ADMIN_ADDR
keystonerole-create--name=admin
keystonetenant-create--name=admin--description="AdminTenant"
keystoneuser-role-add--user=admin--tenant=admin--role=admin
keystoneuser-role-add--user=admin--role=_member_--tenant=admin
keystoneuser-create--name=demo--pass=$DEMO_PASS--email=$MAIL_DEMO_ADDR
keystonetenant-create--name=demo--description="DemoTenant"
keystoneuser-role-add--user=demo--role=_member_--tenant=demo
keystonetenant-create--name=service--description="ServiceTenant"
keystoneservice-create--name=keystone--type=identity--description="OpenStackIdentityService"
keystoneendpoint-create--service-id=$(keystoneservice-list|awk'/identity/{print$2}')--publicurl=http://$HOSTNAME:5000/v2.0--internalurl=http://$HOSTNAME:5000/v2.0--adminurl=http://$HOSTNAME:35357/v2.0
结果:
接下来验证身份服务
执行脚本:iaas-verify-stone.sh
脚本内容:
keystone--os-username=admin--os-password=$ADMIN_PASS--os-auth-url=http://$HOSTNAME:35357/v2.0token-get
keystone--os-username=admin--os-password=$ADMIN_PASS--os-tenant-name=admin--os-auth-url=http://$HOSTNAME:35357/v2.0token-get
keystonetoken-get
keystoneuser-list
结果:
glance服务安装于配置
安装glance服务
执行安装脚本:iaas-install-glance.sh
脚本内容:
yuminstall-yopenstack-glance
openstack-config--set/etc/glance/glance-api.confDEFAULTsql_connectionmysql://glance:$GLANCE_DBPASS@$HOSTNAME/glance
openstack-config--set/etc/glance/glance-registry.confDEFAULTsql_connectionmysql://glance:$GLANCE_DBPASS@$HOSTNAME/glance
openstack-db--init--serviceglance--password$GLANCE_DBPASS
提示输密码:
Pleaseenterthepasswordforthe'root'MySQLuser:
成功的标志:
接下来配置glance服务
执行脚本:iaas-config-glance.sh
脚本内容:
keystoneuser-create--name=glance--pass=$GLANCE_PASS--email=$MAIL_GLANCE_ADDR
keystoneuser-role-add--user=glance--tenant=service--role=admin
openstack-config--set/etc/glance/glance-api.confkeystone_authtokenauth_urihttp://$HOSTNAME:5000
openstack-config--set/etc/glance/glance-api.confkeystone_authtokenauth_host$HOSTNAME
openstack-config--set/etc/glance/glance-api.confkeystone_authtokenadmin_tenant_nameservice
openstack-config--set/etc/glance/glance-api.confkeystone_authtokenadmin_userglance
openstack-config--set/etc/glance/glance-api.confkeystone_authtokenadmin_password$GLANCE_PASS
openstack-config--set/etc/glance/glance-api.confpaste_deployflavorkeystone
openstack-config--set/etc/glance/glance-registry.confkeystone_authtokenauth_urihttp://$HOSTNAME:5000
openstack-config--set/etc/glance/glance-registry.confkeystone_authtokenauth_host$HOSTNAME
openstack-config--set/etc/glance/glance-registry.confkeystone_authtokenadmin_tenant_nameservice
openstack-config--set/etc/glance/glance-registry.confkeystone_authtokenadmin_userglance
cp/usr/share/glance/glance-api-dist-paste.ini/etc/glance/glance-api-paste.ini
cp/usr/share/glance/glance-registry-dist-paste.ini/etc/glance/glance-registry-paste.ini
openstack-config--set/etc/glance/glance-registry-paste.inifilter:authtokenauth_host$HOSTNAME
openstack-config--set/etc/glance/glance-registry-paste.inifilter:authtokenadmin_password$GLANCE_PASS
openstack-config--set/etc/glance/glance-registry-paste.inifilter:authtokenadmin_userglance
openstack-config--set/etc/glance/glance-registry-paste.inifilter:authtokenadmin_tenant_nameservice
openstack-config--set/etc/glance/glance-api-paste.inifilter:authtokenauth_host$HOSTNAME
openstack-config--set/etc/glance/glance-api-paste.inifilter:authtokenadmin_password$GLANCE_PASS
openstack-config--set/etc/glance/glance-api-paste.inifilter:authtokenadmin_userglance
openstack-config--set/etc/glance/glance-api-paste.inifilter:authtokenadmin_tenant_nameservice
keystoneservice-create--name=glance--type=p_w_picpath--description="GlanceImageService"
keystoneendpoint-create--service-id=$(keystoneservice-list|awk'/p_w_picpath/{print$2}')--publicurl=http://controller:9292--internalurl=http://controller:9292--adminurl=http://controller:9292
serviceopenstack-glance-apirestart
serviceopenstack-glance-registryrestart
chkconfigopenstack-glance-apion
chkconfigopenstack-glance-registryon
结果:
验证glance服务
执行脚本:iaas-verify-glance.sh
脚本内容:
yuminstall-ywget
wgetftp://10.0.0.120/p_w_picpaths/centos-6.5-0117.0.x86_64.qcow2
glancep_w_picpath-create--name=CentOS-6.5-x86_64--disk-format=qcow2--container-format=bare--is-public=true
glancep_w_picpath-list
结果:
由于还没有上传镜像,所以提示没有
接下来就是安装nova计算服务。不过在安装之前先要手动安装dnsmasq-utils-2.48-13.el6.x86_64.rpm包
执行脚本:iaas-install-nova.sh
脚本内容:
yuminstall-yopenstack-novapython-novaclient
openstack-config--set/etc/nova/nova.confdatabaseconnectionmysql://nova:$NOVA_DBPASS@$HOSTNAME/nova
openstack-config--set/etc/nova/nova.confDEFAULTqpid_hostname$HOSTNAME
openstack-db--init--servicenova--password$NOVA_DBPASS
结果,要输入密码
计算服务配置
执行脚本:iaas-config-nova.sh
脚本内容:
keystoneuser-create--name=nova--pass=$NOVA_PASS--email=$MAIL_NOVA_ADDR
openstack-config--set/etc/nova/nova.confDEFAULTauth_strategykeystone
openstack-config--set/etc/nova/nova.confkeystone_authtokenauth_host$HOSTNAME
openstack-config--set/etc/nova/nova.confkeystone_authtokenauth_protocolhttp
openstack-config--set/etc/nova/nova.confkeystone_authtokenauth_port35357
openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_usernova
openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_tenant_nameservice
openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_password$NOVA_PASS
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_host$HOSTNAME
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_port35357
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_protocolhttp
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_uri$OS_AUTH_URL
openstack-config--set/etc/nova/api-paste.inifilter:authtokenadmin_tenant_nameservice
openstack-config--set/etc/nova/api-paste.inifilter:authtokenadmin_usernova
openstack-config--set/etc/nova/api-paste.inifilter:authtokenadmin_password$NOVA_PASS
keystoneuser-role-add--user=nova--tenant=service--role=admin
keystoneservice-create--name=nova--type=compute--description="NovaComputeservice"
keystoneendpoint-create--service-id=$(keystoneservice-list|awk'/compute/{print$2}')--publicurl=http://$HOSTNAME:8774/v2/%\(tenant_id\)s--internalurl=http://$HOSTNAME:8774/v2/%\(tenant_id\)s--adminurl=http://$HOSTNAME:8774/v2/%\(tenant_id\)s
serviceopenstack-nova-apirestart
serviceopenstack-nova-certrestart
serviceopenstack-nova-consoleauthrestart
serviceopenstack-nova-schedulerrestart
serviceopenstack-nova-conductorrestart
serviceopenstack-nova-novncproxyrestart
chkconfigopenstack-nova-apion
chkconfigopenstack-nova-certon
chkconfigopenstack-nova-consoleauthon
chkconfigopenstack-nova-scheduleron
chkconfigopenstack-nova-conductoron
chkconfigopenstack-nova-novncproxyon
结果:
验证nova的配置:
执行脚本:iaas-verify-nova.sh
脚本内容:
novap_w_picpath-list
因为没有上传镜像,所以现在无法验证。等到后面,可以手动上传镜像。
接下来进入计算节点,配置计算节点的yum客户端。参考如下
[root@compute~]#cd/etc/yum.repos.d/;cat*.repo
[base]
name=centos
baseurl=ftp://10.0.0.10/centos/
enabled=1
gpgcheck=0
[centos]
name=centos
baseurl=ftp://10.0.0.10/repo/centos6.5/
enabled=1
gpgcheck=0
[epel]
name=epel
baseurl=ftp://10.0.0.10/repo/epel6//epel/6/x86_64/
enabled=1
gpgcheck=0
[foreman]
name=foreman
baseurl=ftp://10.0.0.10/repo/foreman//release/1.3/el6/x86_64/
enabled=1
gpgcheck=0
[openstack]
name=openstack
baseurl=ftp://10.0.0.10/repo/openstack-havana/
enabled=1
gpgcheck=0
[puppetlabs]
name=puppetlabs
baseurl=ftp://10.0.0.10/repo/puppetlabs//el/6/products/x86_64/
enabled=1
gpgcheck=0
接下来编辑noderc.sh文件
exportHOSTNAME_CONT=controller
exportNOVA_DBPASS=nova
exportNOVA_PASS=service
exportHOST_IP_NODE1=10.0.0.11
exportEXTERNAL_NIC=eth0
exportFIX_RANGE=192.168.1.129/25
exportOS_USERNAME=admin
exportOS_TENANT_NAME=admin
exportOS_PASSWORD=secrete
exportOS_AUTH_URL=http://10.0.0.10:5000/v2.0
exportSERVICE_ENDPOINT=http://10.0.0.10:35357/v2.0
exportSERVICE_TOKEN=87dbbbe96a346d6bcf31
保存并将文件追加至/root/.bash_profile
[root@computescript]#catnoderc.sh>/root/.bash_profile
生效
[root@computescript]#source/root/.bash_profile
查看一下
[root@computescript]#echo$OS_PASSWORD
Secrete
可以看到已经生效
接下来执行预安装脚本
执行脚本:iaas-pre-node.sh
脚本内容:
serviceNetworkManagerstop
servicenetworkstart
chkconfigNetworkManageroff
chkconfignetworkon
servicefirewalldstop
serviceiptablesstart
chkconfigfirewalldoff
chkconfigiptableson
yuminstall-yntp
servicentpdrestart
chkconfigntpdon
yuminstall-ymysqlMySQL-python
yuminstall-yopenstack-utils
yuminstall-yopenstack-selinux
yum-yupgrade
成功标志:
手动重启服务器
也要注意删除多余的.repo文件
接下来安装计算节点服务
执行脚本:iaas-install-node.sh
脚本内容:
yuminstall-yopenstack-nova-compute
openstack-config--set/etc/nova/nova.confdatabaseconnectionmysql://nova:$NOVA_DBPASS@$HOSTNAME_CONT/nova
openstack-config--set/etc/nova/nova.confDEFAULTauth_strategykeystone
openstack-config--set/etc/nova/nova.confkeystone_authtokenauth_host$HOSTNAME_CONT
openstack-config--set/etc/nova/nova.confkeystone_authtokenauth_protocolhttp
openstack-config--set/etc/nova/nova.confkeystone_authtokenauth_port35357
openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_usernova
openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_tenant_nameservice
openstack-config--set/etc/nova/nova.confkeystone_authtokenadmin_password$NOVA_PASS
openstack-config--set/etc/nova/nova.mon.rpc.impl_qpid
openstack-config--set/etc/nova/nova.confDEFAULTqpid_hostname$HOSTNAME_CONT
openstack-config--set/etc/nova/nova.confDEFAULTmy_ip$HOST_IP_NODE1
openstack-config--set/etc/nova/nova.confDEFAULTvnc_enabledTrue
openstack-config--set/etc/nova/nova.confDEFAULTvncserver_listen0.0.0.0
openstack-config--set/etc/nova/nova.confDEFAULTvncserver_proxyclient_address$HOST_IP_NODE1
openstack-config--set/etc/nova/nova.confDEFAULTnovncproxy_base_urlhttp://$HOSTNAME_CONT:6080/vnc_auto.html
openstack-config--set/etc/nova/nova.confDEFAULTglance_host$HOSTNAME_CONT
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_host$HOSTNAME_CONT
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_port35357
openstack-config--set/etc/nova/api-paste.inifilter:authtokenauth_protocolhttp
openstack-config--set/etc/nova/api-paste.inifilter:authtokenadmin_tenant_nameservice
openstack-config--set/etc/nova/api-paste.inifilter:authtokenadmin_usernova
openstack-config--set/etc/nova/api-paste.inifilter:authtokenadmin_password$NOVA_PASS
servicelibvirtdrestart
servicemessagebusrestart
chkconfiglibvirtdon
chkconfigmessagebuson
serviceopenstack-nova-computestart
chkconfigopenstack-nova-computeon
yuminstall-yopenstack-nova-network
yuminstall-yopenstack-nova-api
在此之前,要先安装dnsmasq-utils-2.48-13.el6.x86_64.rpm
之后再执行脚本
结果:
接下来就是配置计算节点服务
执行脚本:iaas-config-node.sh
脚本内容:
openstack-config--set/etc/nova/work.manager.FlatDHCPManager
openstack-config--set/etc/nova/nova.confDEFAULTfirewall_drivernova.virt.libvirt.firewall.IptablesFirewallDriver
openstack-config--set/etc/nova/nova.confDEFAULTnetwork_size254
openstack-config--set/etc/nova/nova.confDEFAULTallow_same_net_trafficFalse
openstack-config--set/etc/nova/nova.confDEFAULTmulti_hostTrue
openstack-config--set/etc/nova/nova.confDEFAULTsend_arp_for_haTrue
openstack-config--set/etc/nova/nova.confDEFAULTshare_dhcp_addressTrue
openstack-config--set/etc/nova/nova.confDEFAULTforce_dhcp_releaseTrue
openstack-config--set/etc/nova/nova.confDEFAULTflat_interface$EXTERNAL_NIC
openstack-config--set/etc/nova/nova.confDEFAULTflat_network_bridgebr100
openstack-config--set/etc/nova/nova.confDEFAULTpublic_interface$EXTERNAL_NIC
serviceopenstack-nova-metadata-apirestart
chkconfigopenstack-nova-metadata-apion
serviceopenstack-nova-networkrestart
chkconfigopenstack-nova-networkon
结果:
接下来我们要回到控制节点创建网络
执行脚本;iaas-create-network.sh
脚本内容:
yuminstall-ybridge-utils
echofix_range=$FIX_RANGE
novanetwork-createvmnet--fixed-range-v4=$FIX_RANGE--bridge=br100--multi-host=T
接下来安装dashboardweb前端控制台
执行命令:
yuminstall-ymemcachedpython-memcachedmod_wsgiopenstack-dashboard
编辑/etc/openstack-dashboard/local_settings
CACHES={
'default':{
'BACKEND':'django.core.cache.backends.memcached.MemcachedCache',
'LOCATION':'127.0.0.1:11211',
}
}
打开注释。修改
ALLOWED_HOSTS=['','localhost']为ALLOWED_HOSTS=['10.0.0.10','localhost']
修改127.0.0.1为controller
OPENSTACK_HOST="127.0.0.1"OPENSTACK_HOST="controller"
重启httpd服务memcached服务并设置开机启动
到此为止,云平台基础架构服务平台搭建告一段落,接下来就可以用浏览器访问了。
界面如下:
用户名为nova密码为service
登陆后界面如下:
自己就可以创建云主机类型并启动云主机了。