目录

一、安装VMware虚拟机

1.下载安装VMware-workstation-full-14.1.1

2.创建虚拟网卡,更改虚拟网卡

3.创建虚拟机

二、网络配置

1.Controller节点

2.Compute节点

三、基础服务 

1.上传镜像

2.关闭防火墙与安全策略

3.配置主机映射

4.配置yum源

5.安装ntp( 时间同步)服务

6.安装Openstack软件包 

7.安装数据库

8.安装并配置消息服务器和Memcached

9.安装Memcached


一、安装VMware虚拟机

1.下载安装VMware-workstation-full-14.1.1

centos-7-isos-x86_64安装包下载_开源镜像站-阿里云 (aliyun.com)

2.创建虚拟网卡,更改虚拟网卡

打开VMware选择 编辑——虚拟网络编辑器——更改设置
添加一张虚拟网卡 VMnet2 并将其设置为NAT模式

devstack安装openstack 单机 openstack怎么安装_centos

将VMnet1的子网设置为 192.168.100.0 作为两台虚拟机的内网
VMnet2的子网设置为 192.168.200.0 作为两台虚拟机的外网
若未将VMnet2设置为NAT模式是无法连接外网的

3.创建虚拟机

devstack安装openstack 单机 openstack怎么安装_云计算_02

CentOS 7 64位

添加镜像文件后,点击 添加 添加一个网络适配器

点击 网络适配器 选择自定义 VMnet1;网络适配器2 选择自定义 VMnet2

:这一步必须在开启虚拟机之前设置好,不然等你进入虚拟机后只有一张网卡或没有网卡,那时你就只能重新创建虚拟机。

然后自动分配磁盘并设置密码

密码设置为 123456 或者 000000 方便后面搭建

用户名为root

devstack安装openstack 单机 openstack怎么安装_linux_03

 虚拟机创建完成。

参考OpenStack双节点部署-M环境部署一 ——VMware虚拟机安装

二、网络配置

1.Controller节点

网口 ifcfg-ens33:作为管理网络使用,配置IP为 192.168.100.10/24
网口 ifcfg-ens34:作为外部网络使用,配置IP为 192.168.200.10/24 

# hostnamectl set-hostname controller       (将主机名改为controller,方便分辨虚拟机)

Ctrl+D 退出登录 、重新登录(或者输入bash命令)会发现主机名已经改为controller

devstack安装openstack 单机 openstack怎么安装_centos_04

不同的镜像,网卡名不同,所以需要进入 network-scripts 目录下去查看网卡名
由于我们添加了一个网络适配器,所以这里有两张网卡
第一张虚拟网卡:ifcfg-ens33对应虚拟机的网络适配器1
第二张虚拟网卡:ifcfg-ens34对应虚拟机的网络适配器2

修改第一张网卡(ifcfg-ens33)

# vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static       (dhcp动态IP地址,static静态IP地址)
ONBOOT=yes
IPADDR=192.168.100.10
PREFIX=24

devstack安装openstack 单机 openstack怎么安装_centos_05

:这一张为内网,所以不需要设置网关,
若设置网关将与第二张网卡冲突,无法连接外网
若使用内网搭建,网络适配器都为仅主机模式,则可以添加 GATEWAY=192.168.100.1

查看我们的第二张虚拟网卡的网关
点击 编辑——虚拟网络编辑器
点击VMnet2——NAT设置 可以发现我的VMnet2的网关为192.168.200.2

devstack安装openstack 单机 openstack怎么安装_openstack_06

 

devstack安装openstack 单机 openstack怎么安装_云计算_07

修改第二张网卡(ifcfg-ens34)

# vi /etc/sysconfig/network-scripts/ifcfg-ens34
BOOTPROTO=static(静态IP地址)
ONBOOT=yes
IPADDR=192.168.200.10
PREFIX=24
GATEWAY=192.168.200.2   (为VMnet2——NAT里的网关)

devstack安装openstack 单机 openstack怎么安装_openstack_08

 在resolv.conf里添加如下内容(这里是让虚拟机能够进行域名解析)

# vi /etc/resolv.conf 
search localdomain
nameserver 119.29.29.29

:两个重启网卡的命令,选择一个就行

#  systemctl restart network
 #  service network restart

devstack安装openstack 单机 openstack怎么安装_openstack_09

devstack安装openstack 单机 openstack怎么安装_centos_10

在物理机中 Win+R 打开cmd 输入 ipconfig
查看自己物理机的ip地址 

devstack安装openstack 单机 openstack怎么安装_linux_11

然后用虚拟机ping物理机的ip地址

devstack安装openstack 单机 openstack怎么安装_IP_12

再在CMD中ping虚拟机的两个ip地址

devstack安装openstack 单机 openstack怎么安装_centos_13

devstack安装openstack 单机 openstack怎么安装_centos_14

当物理机和虚拟机可以互ping后就可以使用远程连接工具进行连接
比如XShell、SecureCRT等

2.Compute节点

网口 ifcfg-ens33:作为管理网络使用,配置IP为 192.168.100.20/24
网口 ifcfg-ens34:作为管理网络使用,配置IP为 192.168.200.20/24

配置网卡的步骤与controller节点相同
不同的是IP地址

ifcfg-ens33 为 192.168.100.20

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.100.20
PREFIX=24

devstack安装openstack 单机 openstack怎么安装_IP_15

 ifcfg-ens34 为 192.168.200.20

BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.200.20
PREFIX=24
GATEWAY=192.168.200.2   (为VMnet2——NAT里的网关)

devstack安装openstack 单机 openstack怎么安装_云计算_16

 在resolv.conf里添加如下内容(这里是让虚拟机能够进行域名解析)

# vi /etc/resolv.conf 
search localdomain
nameserver 119.29.29.29
# service network restart

devstack安装openstack 单机 openstack怎么安装_centos_17

重启网络服务并ping测试 

devstack安装openstack 单机 openstack怎么安装_linux_18

devstack安装openstack 单机 openstack怎么安装_centos_19

 参考OpenStack双节点部署-M环境部署二 ——网络配置

三、基础服务 

1.上传镜像

controller节点

双击 SecureFX 将Centos7 镜像与openstack-M版镜像上次至root目录

devstack安装openstack 单机 openstack怎么安装_openstack_20

# mkdir -p /opt/centos /opt/mitaka
(创建centos、mitaka目录)
# mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/
(将centos镜像文件挂载到mnt目录下)
# cp -rvf /mnt/* /opt/centos/
(将mnt目录下挂载的内容拷贝至/opt/centos目录)
# umount /mnt/
(拷贝完成后取消挂载)
# mount -o loop Mitaka.iso /mnt/
(将openstack镜像文件挂载到mnt目录下)
# cp -rvf /mnt/* /opt/mitaka/
# umount /mnt/
(拷贝完成后取消挂载,mnt目录下的文件将会消失)

这样关闭虚拟机后不用重新挂载,可以继续使用yum 源。

2.关闭防火墙与安全策略

Controller 和 Compute节点 

关闭防火墙

# systemctl mask firewalld.service
注销防火墙服务
# systemctl stop firewalld.service
暂停防火墙服务
# systemctl disable firewalld.service
关闭防火墙开机自启

 关闭Selinux

# vi /etc/selinux/config
修改 SELINUX=permissive
# setenforce 0 临时关闭Selinux

3.配置主机映射

Controller 和 Compute节点 

# vi /etc/hosts 在hosts文件中添加如下内容
192.168.100.10 controller
192.168.100.20 compute

修改完成后两台虚拟机互ping主机名,例如 compute节点 ping controller
能ping通说明配置正确

devstack安装openstack 单机 openstack怎么安装_云计算_21

 

devstack安装openstack 单机 openstack怎么安装_centos_22

4.配置yum源

Controller节点 

配置controller节点的yum源
注:baseurl=file://+centos文件的路径 /opt/centos
baseurl=file://+ Openstack -Mitaka文件的路径/opt/mitaka/Openstack-Mitaka
 

# mkdir /opt/repo
# mv /etc/yum.repos.d/*.repo /opt/repo/
[root@controller yum.repos.d]# vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[mitaka]
name=mitaka
baseurl=file:///opt/mitaka/Openstack-Mitaka
gpgcheck=0
enabled=1
# yum clean all (清理yum缓存)

devstack安装openstack 单机 openstack怎么安装_openstack_23

# yum list
(列出yum源,检验yum是否配置成功)

devstack安装openstack 单机 openstack怎么安装_centos_24

 如图,yum源配置成功

Controller节点安装FTP服务

# yum install -y vsftpd
# vi /etc/vsftpd/vsftpd.conf
(在vsftpd.conf内添加)
anon_root=/opt (/opt为centos、mitaka文件的路径)
# systemctl start vsftpd.service (启动vsftpd服务)
# systemctl enable vsftpd.service (设置vsftpd服务开机自启)

 Compute配置yum源

# mkdir /opt/repo
# mv /etc/yum.repos.d/*.repo /opt/repo/
(离线安装,所以yum.repos.d目录下只能有你自己配置的repo文件)
# vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[mitaka]
name=mitaka
baseurl=ftp://192.168.100.10/mitaka/Openstack-Mitaka
gpgcheck=0
enabled=1
# yum clean all
# yum list (检验yum是否配置成功)

5.安装ntp( 时间同步)服务

Controller 

# yum install -y ntp

 配置ntp.conf文件

[root@controller ~]# vi /etc/ntp.conf (server下添加)
server 127.127.1.0
fudge 127.127.1.0 stratum 10
# systemctl start ntpd.service
# systemctl enable ntpd.service
# ntpstat (查看ntp服务状态)

devstack安装openstack 单机 openstack怎么安装_openstack_25

Compute节点 

# yum install -y ntp
# ntpdate controller

devstack安装openstack 单机 openstack怎么安装_openstack_26

如图,表示ntp服务安装成功

6.安装Openstack软件包 

Controller和Compute节点

# yum install -y python-openstackclient openstack-selinux
# yum –y upgrade --skip-broken

 注:安装完成后可以重启两台虚拟机,使linux更新的内核生效

7.安装数据库

Controller节点

[root@controller ~]# yum install -y mariadb mariadb-server python2-PyMySQL

配置数据库
编辑/etc/my.cnf文件,在[mysqld]下添加如下内容

[mysqld]
bind-address=192.168.100.10 (controller节点的内网IP地址)
default-storage-engine=innodb
innodb_file_per_table
max_connection=4096 (最大连接时间4096s)
collation-server=utf8_general_ci
character-set-server=utf8 (使用UTF-8字符集)

devstack安装openstack 单机 openstack怎么安装_centos_27

# systemctl start mariadb.service
# systemctl enable mariadb.service
# mysql_secure_installation (初始化数据库并设置密码)

设置数据库密码 y

默认情况下,MariaDB安装有一个匿名用户,允许任何人使用
要登录MariaDB,无需创建用户帐户
删除匿名用户?  y

通常,root用户只能从“localhost”连接。
这确保某人无法从网络猜测根密码。
远程禁止root用户登录?  n

默认情况下,MariaDB附带一个名为“test”的数据库,任何人都可以使用访问。
这也只是为了测试,应该删除在进入生产环境之前。
删除测试数据库并访问它? y

重新加载特权表将确保到目前为止所做的所有更改将立即生效。
现在重新加载权限表? y

devstack安装openstack 单机 openstack怎么安装_云计算_28

8.安装并配置消息服务器和Memcached

Controller节点

# yum install -y rabbitmq-server
# systemctl start rabbitmq-server.service
# systemctl enable rabbitmq-server.service
创建rabbitmq用户并设置权限
创建用户:openstack;密码:123456
# rabbitmqctl add_user openstack 123456
给openstack用户授予读/写访问权限
# rabbitmqctl set_permissions openstack ".*" ".*" ".*"

 

devstack安装openstack 单机 openstack怎么安装_云计算_29

 9.安装Memcached

# yum install -y memcached python-memcached
# systemctl enable memcached.service
# systemctl start memcached.service

 

devstack安装openstack 单机 openstack怎么安装_openstack_30

参考OpenStack双节点部署-M环境部署三 ——基础服务