(iaas)脚本搭建先电云计算Openstack平台

搭建前准备

  • 两台虚拟机(两台必须是双网卡)
    controller节点
    image
    compute节点
    image
    注意:compute节点有两个硬盘

开始搭建

IP地址

  • controller

第一张网卡的IP地址:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO=static
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="0951ab22-eaf6-428c-9720-ff6f39900225"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=192.168.10.10
GATEWAY=192.168.10.254
MASK=24
DNS1=192.168.10.254

第二张网卡的IP地址:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens34
UUID=c837d6d1-6b32-4667-8cf7-75b8487d1f1b
DEVICE=ens34
ONBOOT=yes
IPADDR=192.168.20.10
GATEWAY=192.168.20.1
MASK=24
DNS1=192.168.20.1
  • compute节点
    第一张网卡:
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=bccced2e-8003-410b-9ccf-119a0d9db522
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.10.20
GATEAWY=192.168.10.254
MASK=24
DNS1=192.168.10.254

第二张网卡地址:

TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="static"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens34"
UUID="84bc67f3-cfe1-446d-9ba4-05ab605453e6"
DEVICE="ens34"
ONBOOT="yes"
IPADDR=192.168.20.20
MASK=24
GATEWAY=192.168.20.1
DNS1=192.168.20.1

修改配置文件后重启网卡并测试连通性

[root@localhost ~]# systemctl restart network
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:06:0f:7f brd ff:ff:ff:ff:ff:ff
    inet 192.168.10.10/24 brd 192.168.10.255 scope global noprefixroute ens33
       valid_lft forever preferred_lft forever
    inet6 fe80::20c:29ff:fe06:f7f/64 scope link 
       valid_lft forever preferred_lft forever
3: ens34: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 00:0c:29:06:0f:89 brd ff:ff:ff:ff:ff:ff
    inet 192.168.20.10/24 brd 192.168.20.255 scope global noprefixroute ens34
       valid_lft forever preferred_lft forever
    inet6 fe80::f0ed:5634:9a3a:3f1c/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
[root@localhost ~]# ping 192.168.10.20
PING 192.168.10.20 (192.168.10.20) 56(84) bytes of data.
64 bytes from 192.168.10.20: icmp_seq=1 ttl=64 time=0.967 ms
64 bytes from 192.168.10.20: icmp_seq=2 ttl=64 time=0.848 ms
64 bytes from 192.168.10.20: icmp_seq=3 ttl=64 time=0.821 ms
^Z
[1]+  已停止               ping 192.168.10.20

修改主机名和hosts文件

controller节点:

[root@localhost ~]# hostnamectl set-hostname controller
[root@localhost ~]# logout

重新登陆:

[root@controller ~]# hostnamectl 
   Static hostname: controller
         Icon name: computer-vm
           Chassis: vm
        Machine ID: 249565f9342649eaa7769cb3f6a777b0
           Boot ID: 1abfe609fd834e82b3e1eab14137ab56
    Virtualization: vmware
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-957.el7.x86_64
      Architecture: x86-64
[root@controller ~]# vi /etc/hosts

修改hosts文件如下:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.10.10 controller
192.168.20.10 compute

compute节点同上
测试主机名连通性:

[root@compute ~]# ping controller
PING controller (192.168.10.10) 56(84) bytes of data.
64 bytes from controller (192.168.10.10): icmp_seq=1 ttl=64 time=0.258 ms
64 bytes from controller (192.168.10.10): icmp_seq=2 ttl=64 time=0.737 ms
64 bytes from controller (192.168.10.10): icmp_seq=3 ttl=64 time=0.404 ms
^Z
[1]+  已停止               ping controller

搭建本地 yum 源与 FTP yum源

controller节点下

  1. 挂载Centos7镜像与iaas镜像
    image

在opt下创建centos文件夹

[root@controller ~]# mkdir /opt/centos -p

将centos镜像挂载mnt下并将所有文件复制到/opt/centos/下

[root@controller ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@controller ~]# cp /mnt/* /opt/centos/ -rf
[root@controller ~]# ls /opt/centos/
CentOS_BuildTag  EFI  EULA  GPL  images  isolinux  LiveOS  Packages  repodata  RPM-GPG-KEY-CentOS-7  RPM-GPG-KEY-CentOS-Testing-7  TRANS.TBL

将iaas镜像挂载并复制到/opt/下

[root@controller ~]# umount /dev/cdrom 
[root@controller ~]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@controller ~]# ls /mnt/
iaas-repo  images
[root@controller ~]# cp /mnt/* /opt/ -rf
[root@controller ~]# ls /opt/
centos  iaas-repo  images

删除 /etc/yum.repo/ 下的默认yum源文件
新建一个ftp.repo文件

[root@controller ~]# rm /etc/yum.repos.d/* -rfv
已删除"/etc/yum.repos.d/CentOS-Base.repo"
已删除"/etc/yum.repos.d/CentOS-CR.repo"
已删除"/etc/yum.repos.d/CentOS-Debuginfo.repo"
已删除"/etc/yum.repos.d/CentOS-fasttrack.repo"
已删除"/etc/yum.repos.d/CentOS-Media.repo"
已删除"/etc/yum.repos.d/CentOS-Sources.repo"
已删除"/etc/yum.repos.d/CentOS-Vault.repo"
[root@controller ~]# touch /etc/yum.repos.d/ftp.repo
[root@controller ~]# ls /etc/yum.repos.d/

编辑ftp.repo文件

[centos]
name=centos
gpgcheck=0
enabled=1
baseurl=file:///opt/centos/

[iaas]
name=iaas
gpgcheck=0
enabled=1
baseurl=file:///opt/iaas-repo/

检查yum源配置

[root@controller ~]# yum list |more
已加载插件:fastestmirror
Determining fastest mirrors
已安装的软件包
GeoIP.x86_64                                1.5.0-13.el7               @anaconda
NetworkManager.x86_64                       1:1.12.0-6.el7             @anaconda
NetworkManager-libnm.x86_64                 1:1.12.0-6.el7             @anaconda
NetworkManager-team.x86_64                  1:1.12.0-6.el7             @anaconda
NetworkManager-tui.x86_64                   1:1.12.0-6.el7             @anaconda
acl.x86_64                                  2.2.51-14.el7              @anaconda
aic94xx-firmware.noarch                     30-6.el7                   @anaconda
alsa-firmware.noarch                        1.0.28-2.el7               @anaconda
alsa-lib.x86_64                             1.1.6-2.el7                @anaconda
alsa-tools-firmware.x86_64                  1.1.0-1.el7                @anaconda
audit.x86_64                                2.8.4-4.el7                @anaconda
audit-libs.x86_64                           2.8.4-4.el7                @anaconda
authconfig.x86_64                           6.2.8-30.el7               @anaconda
basesystem.noarch                           10.0-7.el7.centos          @anaconda
bash.x86_64                                 4.2.46-31.el7              @anaconda
bind-libs-lite.x86_64                       32:9.9.4-72.el7            @anaconda
bind-license.noarch                         32:9.9.4-72.el7            @anaconda
binutils.x86_64                             2.27-34.base.el7           @anaconda
biosdevname.x86_64                          0.7.3-1.el7                @anaconda
btrfs-progs.x86_64                          4.9.1-1.el7                @anaconda
bzip2-libs.x86_64                           1.0.6-13.el7               @anaconda
ca-certificates.noarch                      2018.2.22-70.0.el7_5       @anaconda
centos-logos.noarch                         70.0.6-3.el7.centos        @anaconda
centos-release.x86_64                       7-6.1810.2.el7.centos      @anaconda
chkconfig.x86_64                            1.7.4-1.el7                @anaconda
chrony.x86_64                               3.2-2.el7                  @anaconda
coreutils.x86_64                            8.22-23.el7                @anaconda
cpio.x86_64                                 2.11-27.el7                @anaconda
cracklib.x86_64                             2.9.0-11.el7               @anaconda
cracklib-dicts.x86_64                       2.9.0-11.el7               @anaconda
cronie.x86_64                               1.4.11-19.el7              @anaconda
cronie-anacron.x86_64                       1.4.11-19.el7              @anaconda
crontabs.noarch                             1.11-6.20121102git.el7     @anaconda
cryptsetup-libs.x86_64                      2.0.3-3.el7                @anaconda
curl.x86_64                                 7.29.0-51.el7              @anaconda
--More--

本地yum源搭建完成,下载vsftpd服务:

[root@controller ~]# yum install vsftpd -y
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 vsftpd.x86_64.0.3.0.2-25.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

=================================================================================================================================================================================================================
 Package                                          架构                                             版本                                                   源                                                大小
=================================================================================================================================================================================================================
正在安装:
 vsftpd                                           x86_64                                           3.0.2-25.el7                                           centos                                           171 k

事务概要
=================================================================================================================================================================================================================
安装  1 软件包

总下载量:171 k
安装大小:353 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : vsftpd-3.0.2-25.el7.x86_64                                                                                                                                                                   1/1 
  验证中      : vsftpd-3.0.2-25.el7.x86_64                                                                                                                                                                   1/1 

已安装:
  vsftpd.x86_64 0:3.0.2-25.el7

完毕!
[root@controller ~]# 

修改 /etc/vsftpd/vsftpd.conf

[root@controller ~]# vi /etc/vsftpd/vsftpd.conf 

在最后一行添加

anon_root=/opt/

重启ftp服务并设置自启动

[root@controller ~]# systemctl start vsftpd
[root@controller ~]# systemctl enable vsftpd
Created symlink from /etc/systemd/system/multi-user.target.wants/vsftpd.service to /usr/lib/systemd/system/vsftpd.service.

查看ftp服务状态

[root@controller ~]# systemctl status vsftpd
● vsftpd.service - Vsftpd ftp daemon
   Loaded: loaded (/usr/lib/systemd/system/vsftpd.service; enabled; vendor preset: disabled)
   Active: active (running) since 五 2022-05-13 17:42:12 CST; 1min 28s ago
 Main PID: 9831 (vsftpd)
   CGroup: /system.slice/vsftpd.service
           └─9831 /usr/sbin/vsftpd /etc/vsftpd/vsftpd.conf

5月 13 17:42:12 controller systemd[1]: Starting Vsftpd ftp daemon...
5月 13 17:42:12 controller systemd[1]: Started Vsftpd ftp daemon.

ftp服务已运行
接下来关闭防火墙并修改selinux
关闭防火墙并关闭自启

[root@controller ~]# systemctl stop firewalld
[root@controller ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

修改 /etc/selinux/config 文件

SELINUX=permissive
[root@controller ~]# setenforce 0

测试ftp服务器
image

compute节点下

删除 /etc/yum.repo/ 下的配置文件

[root@compute ~]# rm /etc/yum.repos.d/* -rfv
已删除"/etc/yum.repos.d/CentOS-Base.repo"
已删除"/etc/yum.repos.d/CentOS-CR.repo"
已删除"/etc/yum.repos.d/CentOS-Debuginfo.repo"
已删除"/etc/yum.repos.d/CentOS-fasttrack.repo"
已删除"/etc/yum.repos.d/CentOS-Media.repo"
已删除"/etc/yum.repos.d/CentOS-Sources.repo"
已删除"/etc/yum.repos.d/CentOS-Vault.repo"

创建并编辑ftp.repo文件

[root@compute ~]# touch /etc/yum.repos.d/ftp.repo
[root@compute ~]# vi /etc/yum.repos.d/ftp.repo 

ftp.repo 类容如下

[centos]
name=centos
gpgcheck=0
enabled=1
baseurl=ftp://controller/centos/

[iaas]
name=iaas
gpgcheck=0
enabled=1
baseurl=ftp://controller/iaas-repo/

测试:

[root@compute ~]# yum list |more
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
已安装的软件包
GeoIP.x86_64                                1.5.0-13.el7               @anaconda
NetworkManager.x86_64                       1:1.12.0-6.el7             @anaconda
NetworkManager-libnm.x86_64                 1:1.12.0-6.el7             @anaconda
NetworkManager-team.x86_64                  1:1.12.0-6.el7             @anaconda
NetworkManager-tui.x86_64                   1:1.12.0-6.el7             @anaconda
acl.x86_64                                  2.2.51-14.el7              @anaconda
aic94xx-firmware.noarch                     30-6.el7                   @anaconda
alsa-firmware.noarch                        1.0.28-2.el7               @anaconda
alsa-lib.x86_64                             1.1.6-2.el7                @anaconda
alsa-tools-firmware.x86_64                  1.1.0-1.el7                @anaconda
audit.x86_64                                2.8.4-4.el7                @anaconda
audit-libs.x86_64                           2.8.4-4.el7                @anaconda
authconfig.x86_64                           6.2.8-30.el7               @anaconda
basesystem.noarch                           10.0-7.el7.centos          @anaconda
bash.x86_64                                 4.2.46-31.el7              @anaconda
bind-libs-lite.x86_64                       32:9.9.4-72.el7            @anaconda
bind-license.noarch                         32:9.9.4-72.el7            @anaconda
binutils.x86_64                             2.27-34.base.el7           @anaconda
biosdevname.x86_64                          0.7.3-1.el7                @anaconda
btrfs-progs.x86_64                          4.9.1-1.el7                @anaconda
bzip2-libs.x86_64                           1.0.6-13.el7               @anaconda


测试成功
yum源配置完成

chrony服务

controller 节点

修改/etc/chrony.conf配置文件

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server controller iburst

# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
allow 192.168.10.0/24

# Serve time even if not synchronized to a time source.
local stratum 10

# Specify file containing keys for NTP authentication.
#keyfile /etc/chrony.keys

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

重启chrony服务并查看

[root@controller ~]# systemctl restart chronyd
[root@controller ~]# chronyc
chrony version 3.2
Copyright (C) 1997-2003, 2007, 2009-2017 Richard P. Curnow and others
chrony comes with ABSOLUTELY NO WARRANTY.  This is free software, and
you are welcome to redistribute it under certain conditions.  See the
GNU General Public License version 2 for details.

chronyc> sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* controller                   10   6     7     1    +86ns[-6456ns] +/-   15us
chronyc> 


配置完成

compute

修改/etc/chrony.conf配置文件

# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (http://www.pool.ntp.org/join.html).
server controller iburst

# Record the rate at which the system clock gains/losses time.
driftfile /var/lib/chrony/drift

# Allow the system clock to be stepped in the first three updates
# if its offset is larger than 1 second.
makestep 1.0 3

# Enable kernel synchronization of the real-time clock (RTC).
rtcsync

# Enable hardware timestamping on all interfaces that support it.
#hwtimestamp *

# Increase the minimum number of selectable sources required to adjust
# the system clock.
#minsources 2

# Allow NTP client access from local network.
allow 192.168.10.0/24

# Serve time even if not synchronized to a time source.
#local stratum 10

# Specify file containing keys for NTP authentication.
#keyfile /etc/chrony.keys

# Specify directory for log files.
logdir /var/log/chrony

# Select which information is logged.
#log measurements statistics tracking

重启chrony服务并查看

[root@compute ~]# vi /etc/chrony.conf 
[root@compute ~]# vi /etc/chrony.conf 
[root@compute ~]# systemctl restart chronyd
[root@compute ~]# chronyc
chrony version 3.2
Copyright (C) 1997-2003, 2007, 2009-2017 Richard P. Curnow and others
chrony comes with ABSOLUTELY NO WARRANTY.  This is free software, and
you are welcome to redistribute it under certain conditions.  See the
GNU General Public License version 2 for details.

chronyc> sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* controller                   11   6     7     2  -3295ns[ -237ms] +/- 1708us

compute节点磁盘分区

使用fdisk对磁盘进行分区

[root@compute ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0xa255637d 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-209715199,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-209715199,默认为 209715199):+100G
值超出范围。
Last 扇区, +扇区 or +size{K,M,G} (2048-209715199,默认为 209715199):+40G
分区 1 已设置为 Linux 类型,大小设为 40 GiB

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): p
分区号 (2-4,默认 2):
起始 扇区 (83888128-209715199,默认为 83888128):
将使用默认值 83888128
Last 扇区, +扇区 or +size{K,M,G} (83888128-209715199,默认为 209715199):+40G
分区 2 已设置为 Linux 类型,大小设为 40 GiB

命令(输入 m 获取帮助):P

磁盘 /dev/sdb:107.4 GB, 107374182400 字节,209715200 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0xa255637d

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    83888127    41943040   83  Linux
/dev/sdb2        83888128   167774207    41943040   83  Linux

命令(输入 m 获取帮助):W
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@compute ~]# 

查看分区:

[root@compute ~]# lsblk 
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0  100G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   99G  0 part 
  ├─centos-root 253:0    0   50G  0 lvm  /
  ├─centos-swap 253:1    0  3.9G  0 lvm  [SWAP]
  └─centos-home 253:2    0 45.1G  0 lvm  /home
sdb               8:16   0  100G  0 disk 
├─sdb1            8:17   0   40G  0 part 
└─sdb2            8:18   0   40G  0 part 
sr0              11:0    1 1024M  0 rom  

运行脚本

运行前准备

controller

下载脚本:

[root@controller ~]# yum install iaas-* -y
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
正在解决依赖关系
--> 正在检查事务
---> 软件包 iaas-xiandian.x86_64.0.2.4-2 将被 安装
--> 解决依赖关系完成

依赖关系解决

=================================================================================================================================================================================================================
 Package                                                 架构                                             版本                                              源                                              大小
=================================================================================================================================================================================================================
正在安装:
 iaas-xiandian                                           x86_64                                           2.4-2                                             iaas                                            19 k

事务概要
=================================================================================================================================================================================================================
安装  1 软件包

总下载量:19 k
安装大小:81 k
Downloading packages:
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : iaas-xiandian-2.4-2.x86_64                                                                                                                                                                   1/1 
  验证中      : iaas-xiandian-2.4-2.x86_64                                                                                                                                                                   1/1 

已安装:
  iaas-xiandian.x86_64 0:2.4-2                                                                                                                                                                                   

完毕!

填写脚本:
vi /etc/xiandian/openrc.sh

#--------------------system Config--------------------##
#Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.10.10

#Controller HOST Password. example:000000
HOST_PASS=000000

#Controller Server hostname. example:controller
HOST_NAME=controller

#Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=192.168.10.20

#Compute HOST Password. example:000000
HOST_PASS_NODE=000000

#Compute Node hostname. example:compute
HOST_NAME_NODE=compute

#--------------------Chrony Config-------------------##
#Controller network segment IP.  example:x.x.0.0/16(x.x.x.0/24)
network_segment_IP=192.168.10.0/24

#--------------------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

#Tunnel Network Interface. example:x.x.x.x
INTERFACE_IP=192.168.10.10

#External Network Interface. example:eth1
INTERFACE_NAME=ens34

#External Network The Physical Adapter. example:provider
Physical_NAME=provider

#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=sdb1

#--------------------Swift Config---------------------##
#Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000

#The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=sdb2

#The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=192.168.10.20

#--------------------Heat Config----------------------##
#Password for Mysql heat user. exmaple:000000
HEAT_DBPASS=000000

#Password for Keystore heat user. exmaple:000000
HEAT_PASS=000000

#--------------------Zun Config-----------------------##
#Password for Mysql Zun user. exmaple:000000
ZUN_DBPASS=000000

#Password for Keystore Zun user. exmaple:000000
ZUN_PASS=000000

#Password for Mysql Kuryr user. exmaple:000000
KURYR_DBPASS=000000

#Password for Keystore Kuryr user. exmaple:000000
KURYR_PASS=000000

#--------------------Ceilometer Config----------------##
#Password for Gnocchi 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

#--------------------Barbican Config----------------##
#Password for Mysql Barbican user. exmaple:000000
BARBICAN_DBPASS=000000

#Password for Keystore Barbican user. exmaple:000000
BARBICAN_PASS=000000

compute

与上方一致

INTERFACE_IP=192.168.10.10

运行脚本

iaas-pre-host.sh

controller与compute都要运行

iaas-pre-host.sh

image
安装完后重启虚拟机

iaas-install-mysql.sh

在controller节点运行iaas-install-mysql.sh脚本

iaas-install-mysql.sh

image

iaas-install-keystone.sh

在controller节点运行iaas-install-keystone.sh

iaas-install-keystone.sh

image

iaas-install-glance.sh

在controller节点运行 iaas-install-glance.sh

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

image

nova

在compute与controller分别运行iaas-install-nova-compute.sh与iaas-install-nova-controller.sh脚本
controller
image
compute
image

Neutron

在compute与controller分别运行iaas-install-neutron-compute.sh与iaas-install-neutron-controller.sh脚本
controller
image
compute
image

iaas-install-dashboad.sh

在controller 运行 iaas-install-dashboad.sh脚本
image

Cinder

在compute与controller分别运行iaas-install-cinder-compute.sh与iaas-install-cinder-controller.sh脚本
controller
image
compute
image

测试

image
登录成功:
image

搭建完成

posted on 2022-05-14 10:57  阿金_阿金  阅读(1607)  评论(6编辑  收藏  举报