部署计划:

一个控制节点和一台计算节点组成简架构 OpenStack 平台,控制节点安装 MySQL、Keystone、Glance等服务,主要作为认证、镜像管理节点、以及提供 Nova 和 Neutron 服务的管理节点。计算节点主要安装 nova-compute 和 Neutron 服务,Nova 服务提供云主机服务,Neutron 提供网络服务。

准备:

IP

主机名

节点

192.168.200.10

controller

控制节点

192.168.200.20

compute

计算节点

 

 

 

 

每台最小虚拟机安装Centos7.2。每台虚拟机两张网卡,一张仅主机、一张为NET模式。第一张网卡网段为192.168.200.0 第二张网卡网段为192.168.100.0。两台虚拟机CPU开启虚拟化,两个节点你内存最大优化为4G+,控制节点可以给少点,控制节点硬盘为50G即可,计算节点配置为100G分两个区为 sda3 与 sda4,也可以再额外添加两块5G的硬盘。

也可以直接弄一个100G的硬盘然后载弄一个40G的硬盘,且记在创建的虚拟机的时候点击100G的网卡。划分磁盘的时候把40G磁盘划分了,再配置 /etc/xiandian/openrc.sh 这文件的时候写 sdb1 与 sdb2。

操作:

基础环境配置

1. 两台虚拟机的第一个NAT网卡要在一个网段上,第二个仅主机的网卡也要在一个网段上。
2. 修改主机名

上传镜像

#上传镜像 
[root@controller ~]# ls
anaconda-ks.cfg   XianDian-IaaS-v2.2.iso
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# mkdir /opt/iaas
#挂载镜像
[root@controller ~]# mount /dev/sr0 /opt/centos
mount: /dev/loop0 写保护,将以只读方式挂载
[root@controller ~]# mount XianDian-IaaS-v2.2.iso /opt/iaas/
mount: /dev/loop1 写保护,将以只读方式挂载

#删除所以的国外yum源
[root@controller ~]# rm -rf /etc/yum.repos.d/*
#配置本地yum源
[root@controller ~]# vi /etc/yum.repos.d/loacl.repo
[root@controller ~]# cat /etc/yum.repos.d/loacl.repo
    [centos]
    name=centos
    baseurl=file:///opt/centos
    gpgcheck=0
    enabled=1
    [iaas]
    name=iaas
    baseurl=file:///opt/iaas/iaas-repo
    gpgcheck=0
    enabled=1
 
[root@controller ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: centos iaas
Cleaning up list of fastest mirrors
[root@controller ~]# yum repolist all
已加载插件:fastestmirror
Determining fastest mirrors
centos                                                       | 3.6 kB  00:00:00     
iaas                                                         | 2.9 kB  00:00:00     
(1/3): centos/group_gz                                       | 153 kB  00:00:00     
(2/3): centos/primary_db                                     | 3.3 MB  00:00:00     
(3/3): iaas/primary_db                                       | 2.3 MB  00:00:00     
源标识                              源名称                               状态
centos                              centos                               启用: 4,070
iaas                                iaas                                 启用: 1,688
repolist: 5,758

 

修改hosts配置文件

[root@controller ~]# vi /etc/hosts
    192.168.200.10 controller
    192.168.200.20 compute

配置 ftp 防火墙  

控制节点

[root@controller ~]#yum install vim net-tools vsftpd bash-c*

#共享opt文件夹
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
    anon_root=/opt         #添加进去

#重启ftp
[root@controller ~]# systemctl restart vsftpd
#开机自启 ftp 服务
[root@controller ~]# systemctl enable bsftpd

[root@controller ~]# setenforce 0
#关闭se(修改配置文件是为了永久关闭)
[root@controller ~]# vi /etc/selinux/config
    SELINUX=disabled        #修改为这个
#关闭防火墙
[root@controller ~]# systemctl stop firewalld
[root@controller ~]# systemctl disable firewalld        //开机自动关闭防火墙
[root@controller ~]# iptables -F
[root@controller ~]# iptables -X
[root@controller ~]# iptables -Z
[root@controller ~]# iptables-save

克隆虚拟机

克隆一个计算几点,修改IP还需要修改UUID(随便改一个就可以),你如果是自己弄得两个虚拟机就不需要克隆了!!!

计算节点

计算节点是通过 FTP 来配置 yum 源。

[root@compute ~]vi /etc/yum.repos.d/ftp.repo
[root@compute ~]cat /etc/yum.repos.d/ftp.repo
    [centos]
    name=centos
    baseurl=ftp://192.168.200.100/centos
    gpgcheck=0
    enabled=1
    [iaas]
    name=iaas
    baseurl=ftp://192.168.200.100/iaas/iaas-repo
    gpgcheck=0
    enabled=1
[root@compute ~]# yum clean all
已加载插件:fastestmirror
正在清理软件源: centos iaas
Cleaning up list of fastest mirrors
[root@compute ~]# yum repolist all
已加载插件:fastestmirror
Determining fastest mirrors
centos                                                       | 3.6 kB  00:00:00     
iaas                                                         | 2.9 kB  00:00:00     
(1/3): centos/group_gz                                       | 153 kB  00:00:00     
(2/3): centos/primary_db                                     | 3.3 MB  00:00:00     
(3/3): iaas/primary_db                                       | 2.3 MB  00:00:00     
源标识                              源名称                               状态
centos                              centos                               启用: 4,070
iaas                                iaas                                 启用: 1,688
repolist: 5,758。

安装 iass-xiandian 服务

两个节点都需要安装

[root@controller ~]# yum install iaas-xiandian -y
[root@compute ~]# yum install iaas-xiandian -y

小技巧

#将文件中的##换成@
sed -i s/##/@/g /etc/xiandian/openrc.sh
#将文件中的#去掉
sed -i s/#//g /etc/xiandian/openrc.sh
#将文件中的@换回##
sed -i s/@/##/g /etc/xiandian/openrc.sh
#删除#号
还可以进入文件直接输入(:%s/^#//g)

修该配置文件

#查看没有注释的内容
[root@controller ~]# egrep -v '^$|^#' /etc/xiandian/openrc.sh 
#controller节点NAT的IP
HOST_IP=192.168.200.10
HOST_NAME=controller
#comture节点NAT的IP
HOST_IP_NODE=192.168.200.20
HOST_NAME_NODE=compute
RABBIT_USER=openstack
RABBIT_PASS=000000
DB_PASS=000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000
KEYSTONE_DBPASS=000000
GLANCE_DBPASS=000000
GLANCE_PASS=000000
NOVA_DBPASS=000000
NOVA_PASS=000000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
#controller仅主机的ip文件名字
INTERFACE_NAME=eno11
minvlan=
maxvlan=
CINDER_DBPASS=000000
CINDER_PASS=000000
BLOCK_DISK=sdb1
TROVE_DBPASS=000000
TROVE_PASS=000000
SWIFT_PASS=000000
OBJECT_DISK=sdb2
STORAGE_LOCAL_NET_IP=192.168.200.20
HEAT_DBPASS=
HEAT_PASS=
CEILOMETER_DBPASS=
CEILOMETER_PASS=
AODH_DBPASS=
AODH_PASS=

将控制节点的文件传达计算节点

#这IP地址是计算几点的地址
[root@controller ~]# scp -r /etc/xiandian/openrc.sh 192.168.100.20:/etc/xiandian/openrc.sh

跑脚本

跑脚本的时候看好节点再跑,一个一个跑要不如何卡死

安装基础服务

这个脚本跑完需要断开重新了连接一下

# 两个节点都跑
[root@localhost ~]# iaas-pre-host.sh

安装 MySQL

[root@controller ~]# iaas-install-mysql.sh

安装 Keystone 认证服务

[root@controller ~]# iaas-install-keystone.sh

安装 Glance 镜像服务

[root@controller ~]# iaas-install-glance.sh

安装 Nova 服务

[root@controller ~]# iaas-install-nova-controller.sh
[root@compute ~]# iaas-install-nova-compute.sh

安装 Neutron 网络服务

[root@controller ~]# iaas-install-neutron-controller.sh
[root@controller ~]# iaas-install-neutron-controller-gre.sh
[root@compute ~]# iaas-install-neutron-compute.sh
[root@compute ~]# iaas-install-neutron-compute-gre.sh

安装 Dashboard 服务

[root@controller ~]# iaas-install-dashboard.sh

安装 Cinder 服务

[root@controller ~]# iaas-install-cinder-controller.sh
[root@compute ~]# iaas-install-cinder-compute.sh

安装 Swift 对象存储服务

[root@controller ~]# iaas-install-swift-controller.sh
[root@compute ~]# iaas-install-swift-compute.sh

访问 Dashboard 服务

在浏览器访问:https://192.168.200.10/dashboard 地址,输入环境变量文件中填写的密码。

域名为:demo

用户名为:admin

密码为:000000

然后连接即可,进去之后都点一点。