记录个人在学习中的所得以及遇到的一些问题
创建两台linux虚拟机,controller和compute
1.内存和处理器根据物理机配置而定,太小可能会引起后续创建云主机时出现问题。
2.很多教程建议勾选虚拟化引擎第一项,跟着勾选。
3.所用镜像为CentOS-7-x86_64-DVD-1511.iso。
4.双网卡为:仅主机模式(内网网卡)、nat模式(外网网卡)。
5.内网:192.168.100.0/24、外网:192.168.200.0/24
ifcfg-eno16777736:192.168.100.10(内网ip)
修改配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eno16777736
删除所有内容,添加如文本。
TYPE=Ethernet //网络类型
BOOTPROTO=static //表示为网卡配置静态还是动态IP地址(none:表示无须启动协议;bootp:表示使用BOOTP协议;dhcp :使用dhcp协议动态获取ip地址; static:表示手工设置静态IP地址)
NM_CONTROLLED=no //network mamager的参数
NAME=eno16777736 //设备名
DEVICE=eno16777736 //网卡物理设备名称
ONBOOT=yes //网卡是否自启
IPADDR=192.168.100.10 //ip地址
NETMASK=255.255.255.0 //子网掩码
ifcfg-eno33554960:192.168.200.10(外网ip)
修改配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eno33554960
删除所有内容,添加如文本。
TYPE=Ethernet //网络类型
BOOTPROTO=static //表示为网卡配置静态还是动态IP地址(none:表示无须启动协议;bootp:表示使用BOOTP协议;dhcp :使用dhcp协议动态获取ip地址; static:表示手工设置静态IP地址)
NM_CONTROLLED=no //network mamager的参数
NAME=eno33554960//设备名
DEVICE=eno33554960//网卡物理设备名称
ONBOOT=yes //网卡是否自启
IPADDR=192.168.200.10 //ip地址
NETMASK=255.255.255.0 //子网掩码
GATEWAY=192.168.200.2 //网关
参考controller节点操作
ifcfg-eno16777736:192.168.100.20(内网ip)
ifcfg-eno33554960:192.168.200.20(外网ip)
hostnamectl set-hostname controller
hostnamectl set-hostname compute
systemctl stop firewalld //关闭防火墙
systemctl disable firewalld //禁止防火墙自启
setenforce 0 //临时禁用
vi /etc/sysconfig/selinux //将SELINUX=*修改为SELINUX=disabled
vi /etc/hosts
添加
192.168.100.10 controller
192.168.100.20 compute
发送到controller或compute
scp /etc/hosts root@controller或compute:/etc/hosts
输入密码
以下操作在controller终端中进行
cd /opt
mkdir iaas centos repo
使用crt上传iaas镜像和centos镜像至/opt/
在controller终端窗口中按Ctrl+P进入传输界面,界面中输入cd /opt/,拖动镜像进入界面即可上传
备份repo文件
mv /etc/yum.repos.r/C* /opt/repo
配置yum源
vi /etc/yum.repos.r/local.repo
添加如下内容:
[centos]
name=centos
baseurl=file:/opt/centos
gpgcheck=0
disabled=1
[iaas]
name=iaas
baseurl=file:/opt/iaas/iaas-repo
gpgcheck=0
disabled=1
保存后发送至compute
scp /etc/yum.repos.r/local.repo root@compute:/etc/yum.repos.r/ftp.repo
挂载镜像
mount -o loop /opt/CentOS-7-x86_64-DVD-1511.iso /mnt
cp -rfv /mnt/* /opt/centos
umount /mnt
mount -o loop /opt/XianDian-IaaS-v2.2.iso /mnt
cp -rfv /mnt/* /opt/iaas
umount /mnt
yum相关
清除缓存
yum clean all
列出所有可安裝的软件清单
yum list
安装ftp
yum install vsftpd -y
ftp相关配置
vi /etc/vsftpd/vsftpd.conf
添加 anon_root=/opt/
重启vsftpd
systemctl restart vsftpd
启动自启vsftpd
systemctl enabled vsftpd
在compute中修改ftp.repo并进行yum相关操作
vi /etc/yum.repos.r/ftp.repo
[centos]
name=centos
baseurl=ftp:/controller/centos
gpgcheck=0
disabled=1
[iaas]
name=iaas
baseurl=ftp:/controller/iaas/iaas-repo
gpgcheck=0
disabled=1
yum相关
清除缓存
yum clean all
列出所有可安裝的软件清单
yum list
controller节点和compute节点
安装iaas-xiandian软件包
yum install xiandian-iaas -y
修改openrc.sh
#--------------------system Config--------------------##
#Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.100.10
#Controller Server hostname. example:controller
HOST_NAME=controller
#Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.100.20
#Compute Node hostname. example:compute
HOST_NAME_NODE=compute
#--------------------Rabbit Config ------------------##
#user for rabbit. example:openstack
RABBIT_USER=openstack
#Password for rabbit user .example:000000
RABBIT_PASS=000000
#--------------------MySQL Config---------------------##
#Password for MySQL root user . exmaple:000000
DB_PASS=000000
#--------------------Keystone Config------------------##
#Password for Keystore admin user. exmaple:000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000
#Password for Mysql keystore user. exmaple:000000
KEYSTONE_DBPASS=000000
#--------------------Glance Config--------------------##
#Password for Mysql glance user. exmaple:000000
GLANCE_DBPASS=000000
#Password for Keystore glance user. exmaple:000000
GLANCE_PASS=000000
#--------------------Nova Config----------------------##
#Password for Mysql nova user. exmaple:000000
NOVA_DBPASS=000000
#Password for Keystore nova user. exmaple:000000
NOVA_PASS=000000
#--------------------Neturon Config-------------------##
#Password for Mysql neutron user. exmaple:000000
NEUTRON_DBPASS=000000
#Password for Keystore neutron user. exmaple:000000
NEUTRON_PASS=000000
#metadata secret for neutron. exmaple:000000
METADATA_SECRET=000000
#External Network Interface. example:eth1
INTERFACE_NAME=eno33554960
#First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101
minvlan=101
#Last Vlan ID in VLAN RANGE for VLAN Network. example:200
maxvlan=200
#--------------------Cinder Config--------------------##
#Password for Mysql cinder user. exmaple:000000
CINDER_DBPASS=000000
#Password for Keystore cinder user. exmaple:000000
CINDER_PASS=000000
#Cinder Block Disk. example:md126p3
BLOCK_DISK=
#--------------------Trove Config--------------------##
#Password for Mysql Trove User. exmaple:000000
TROVE_DBPASS=000000
#Password for Keystore Trove User. exmaple:000000
TROVE_PASS=000000
#--------------------Swift Config---------------------##
#Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000
#The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=
#The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=
#--------------------Heat Config----------------------##
#Password for Mysql heat user. exmaple:000000
HEAT_DBPASS=000000
#Password for Keystore heat user. exmaple:000000
HEAT_PASS=000000
#--------------------Ceilometer Config----------------##
#Password for Mysql ceilometer user. exmaple:000000
CEILOMETER_DBPASS=000000
#Password for Keystore ceilometer user. exmaple:000000
CEILOMETER_PASS=000000
#--------------------AODH Config----------------##
#Password for Mysql AODH user. exmaple:000000
AODH_DBPASS=000000
#Password for Keystore AODH user. exmaple:000000
AODH_PASS=000000
个人使用命令 sed -i -e “s/PASS=/PASS=000000/” -e “s/^#//” /etc/xiandian/openrc.sh
再修改个别项
完成后自启reboot 或重新登录终端 login
执行脚本iaas-pre-host.sh
按顺序执行
#Controller节点
通过脚本安装mysql数据库服务
执行脚本iaas-install-mysql.sh进行安装
通过脚本安装keystone人证服务
执行脚本iaas-install-keystone.sh进行安装
通过脚本安装glance服务
执行脚本iaas-install-glance.sh进行安装
通过脚本安装nova服务
#Controller节点
执行脚本iaas-install-nova-controller.sh进行安装
#Compute节点
执行脚本iaas-install-nova-compute.sh进行安装
通过脚本安装neutron服务
#Controller节点
执行脚本iaas-install-neutron-controller.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute.sh进行安装
通过脚本创建neutron网络
创建flat网络
#Controller节点
执行脚本iaas-install-neutron-controller-flat.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute-flat.sh进行安装
创建gre网络
#Controller节点
执行脚本iaas-install-neutron-controller-gre.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute-gre.sh进行安装
创建vlan网络
#Controller节点
执行脚本iaas-install-neutron-controller-vlan.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute-vlan.sh进行安装
通过脚本安装dashboard服务
#Controller
执行脚本iaas-install-dashboard.sh进行安装
省赛仅需安装至dashboard服务
至此安装完成