compute脚本1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/bin/bash
# 节点说明
# controller 192.168.200.10 且root目录下有CentOS-7-x86_64-DVD-1804.iso、chinaskills_cloud_iaas_v2.0.3.iso
# controller 192.168.200.20
hostnamectl set-hostname compute
# 确保 controller 和 compute 都保持开启
echo '192.168.200.10 controller' >> /etc/hosts
echo '192.168.200.20 compute' >> /etc/hosts
echo "映射文件已配置"

# 停止并禁用 firewalld
systemctl stop firewalld
systemctl disable firewalld
echo "防火墙关闭完成"

# 将 SELinux 设置为宽松模式
setenforce 0
# 修改 SELINUX 设置为 permissive
sed -i 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config
echo "SELinux已禁止"

# 配置yum源
# 删除原来的yum源
rm -rf /etc/yum.repos.d/*
cat <<EOF > /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=ftp://controller/centos
gpgcheck=0
enabled=1
[iaas]
name=centos
baseurl=ftp://controller/iaas/iaas-repo
gpgcheck=0
enabled=1
EOF
echo "YUM 源配置成功"

# 分盘操作
DEVICE="/dev/sdb"

echo -e "o\nn\np\n1\n\n+10G\nn\np\n2\n\n+10G\nn\np\n3\n\n+10G\nw" | fdisk $DEVICE

partprobe $DEVICE

echo "分区操作完成"
lsblk

echo "必须等Controller YUM 源配置成功 && 开始安装脚本后,再"
read -p "按下回车继续..."
yum install -y openstack-iaas


# 删除指定文件的每一行
sed -i 's/^.//' /etc/openstack/openrc.sh
# 添加配置
# 快速替换密码
sed -i 's/PASS=/PASS=000000/g' /etc/openstack/openrc.sh
# 填充
sed -i 's/^HOST_IP=.*/HOST_IP=192.168.200.10/' /etc/openstack/openrc.sh
sed -i 's/^HOST_NAME=.*/HOST_NAME=controller/' /etc/openstack/openrc.sh
# 填充
sed -i 's/^HOST_IP_NODE=.*/HOST_IP_NODE=192.168.200.20/' /etc/openstack/openrc.sh
sed -i 's/^HOST_PASS_NODE=.*/HOST_PASS_NODE=000000/' /etc/openstack/openrc.sh
sed -i 's/^HOST_NAME_NODE=.*/HOST_NAME_NODE=compute/' /etc/openstack/openrc.sh
# 填充
sed -i 's/^network_segment_IP=.*/network_segment_IP=192.168.100.0\/24/' /etc/openstack/openrc.sh
sed -i 's/^RABBIT_USER=.*/RABBIT_USER=openstack/' /etc/openstack/openrc.sh
sed -i 's/^DOMAIN_NAME=.*/DOMAIN_NAME=demo/' /etc/openstack/openrc.sh
sed -i 's/^METADATA_SECRET=.*/METADATA_SECRET=000000/' /etc/openstack/openrc.sh
sed -i 's/^INTERFACE_NAME=.*/INTERFACE_NAME=eth1/' /etc/openstack/openrc.sh
sed -i 's/^Physical_NAME=.*/Physical_NAME=provider/' /etc/openstack/openrc.sh


sed -i 's/^minvlan=.*/minvlan=101/' /etc/openstack/openrc.sh
sed -i 's/^maxvlan=.*/maxvlan=200/' /etc/openstack/openrc.sh
sed -i 's/^BLOCK_DISK=.*/BLOCK_DISK=sdb1/' /etc/openstack/openrc.sh
sed -i 's/^OBJECT_DISK=.*/OBJECT_DISK=sdb2/' /etc/openstack/openrc.sh
sed -i 's/^STORAGE_LOCAL_NET_IP=.*/STORAGE_LOCAL_NET_IP=192.168.200.20/' /etc/openstack/openrc.sh
sed -i 's/^SHARE_DISK=.*/SHARE_DISK=sdb3/' /etc/openstack/openrc.sh
echo "openrc.sh配置完毕"


iaas-pre-host.sh
echo "重连后执行 bash ComputeToOpenstack2.sh "

compute脚本2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
echo "执行安装"
yum install openstack-ceilometer-compute -y
yum install lvm2 device-mapper-persistent-data openstack-cinder targetcli python-keystone -y
yum -y install openstack-manila-share python2-PyMySQL libtalloc python-manilaclient MySQL-python
yum -y install lvm2 nfs-utils nfs4-acl-tools portmap targetcli
yum install -y openstack-neutron-linuxbridge ebtables ipset
yum install openstack-nova-compute -y
yum install xfsprogs rsync openstack-swift-account openstack-swift-container openstack-swift-object -y
yum install -y yum-utils device-mapper-persistent-data lvm2
yum makecache fast
yum install docker-ce python-pip git kuryr-libnetwork openstack-zun-compute -y

echo "必须等Controller节点全部安装后"
read -p "按下回车继续..."

# 执行脚本
iaas-install-nova-compute.sh &&
iaas-install-neutron-compute.sh &&
iaas-install-swift-compute.sh &&
iaas-install-cinder-compute.sh

# 检查脚本执行状态
if [ $? -eq 0 ]; then
echo "Compute 所有安装脚本成功执行"
else
echo "有安装脚本执行失败"
fi

for i in {1..5}
do
echo "可以进行调优了!"
done

controller脚本1

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#!/bin/bash
# 节点说明
# controller 192.168.200.10 且root目录下有CentOS-7-x86_64-DVD-2009.iso、chinaskills_cloud_iaas_v2.0.3.iso
# controller 192.168.200.20
hostnamectl set-hostname controller
# 确保 controller 和 compute 都保持开启
echo '192.168.200.10 controller' >> /etc/hosts
echo '192.168.200.20 compute' >> /etc/hosts
echo "映射文件已配置"

# 停止并禁用 firewalld
systemctl stop firewalld
systemctl disable firewalld
echo "防火墙关闭完成"

# 将 SELinux 设置为宽松模式
setenforce 0
# 修改 SELINUX 设置为 permissive
sed -i 's/^SELINUX=.*/SELINUX=permissive/' /etc/selinux/config
echo "SELinux已禁止"

# 配置yum源
# 删除原来的yum源
rm -rf /etc/yum.repos.d/*
mkdir /opt/{centos,iaas}
mount CentOS-7-x86_64-DVD-2009.iso /mnt/
echo "复制centos"
cp -rf /mnt/* /opt/centos/
umount /mnt/
mount chinaskills_cloud_iaas_v2.0.3.iso /mnt/
echo "复制iaas"
cp -rf /mnt/* /opt/iaas/
umount /mnt/
cat <<EOF > /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[iaas]
name=centos
baseurl=file:///opt/iaas/iaas-repo
gpgcheck=0
enabled=1
EOF
echo "YUM 源配置成功"

# 配置vsftpd服务器
yum install -y vsftpd openstack-iaas
echo "anon_root=/opt/" >> /etc/vsftpd/vsftpd.conf
systemctl restart vsftpd
systemctl enable vsftpd
echo "vsftpd服务配置完毕 && openstack已安装"

# 删除指定文件的每一行
sed -i 's/^.//' /etc/openstack/openrc.sh
# 添加配置
# 快速替换密码
sed -i 's/PASS=/PASS=000000/g' /etc/openstack/openrc.sh
# 填充
sed -i 's/^HOST_IP=.*/HOST_IP=192.168.200.10/' /etc/openstack/openrc.sh
sed -i 's/^HOST_NAME=.*/HOST_NAME=controller/' /etc/openstack/openrc.sh
# 填充
sed -i 's/^HOST_IP_NODE=.*/HOST_IP_NODE=192.168.200.20/' /etc/openstack/openrc.sh
sed -i 's/^HOST_PASS_NODE=.*/HOST_PASS_NODE=000000/' /etc/openstack/openrc.sh
sed -i 's/^HOST_NAME_NODE=.*/HOST_NAME_NODE=compute/' /etc/openstack/openrc.sh
# 填充
sed -i 's/^network_segment_IP=.*/network_segment_IP=192.168.100.0\/24/' /etc/openstack/openrc.sh
sed -i 's/^RABBIT_USER=.*/RABBIT_USER=openstack/' /etc/openstack/openrc.sh
sed -i 's/^DOMAIN_NAME=.*/DOMAIN_NAME=demo/' /etc/openstack/openrc.sh
sed -i 's/^METADATA_SECRET=.*/METADATA_SECRET=000000/' /etc/openstack/openrc.sh
sed -i 's/^INTERFACE_NAME=.*/INTERFACE_NAME=eth1/' /etc/openstack/openrc.sh
sed -i 's/^Physical_NAME=.*/Physical_NAME=provider/' /etc/openstack/openrc.sh
sed -i 's/^minvlan=.*/minvlan=101/' /etc/openstack/openrc.sh
sed -i 's/^maxvlan=.*/maxvlan=200/' /etc/openstack/openrc.sh
sed -i 's/^BLOCK_DISK=.*/BLOCK_DISK=sdb1/' /etc/openstack/openrc.sh
sed -i 's/^OBJECT_DISK=.*/OBJECT_DISK=sdb2/' /etc/openstack/openrc.sh
sed -i 's/^STORAGE_LOCAL_NET_IP=.*/STORAGE_LOCAL_NET_IP=192.168.200.20/' /etc/openstack/openrc.sh
sed -i 's/^SHARE_DISK=.*/SHARE_DISK=sdb3/' /etc/openstack/openrc.sh
echo "openrc.sh配置完毕"

iaas-pre-host.sh
echo "重连后执行 bash ControllerToOpenstack2.sh "

controller脚本2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 执行各个安装脚本
iaas-install-mysql.sh &&
iaas-install-keystone.sh &&
source /etc/keystone/admin-openrc.sh &&
iaas-install-glance.sh &&
iaas-install-placement.sh &&
iaas-install-nova-controller.sh &&
iaas-install-neutron-controller.sh &&
iaas-install-dashboard.sh &&
iaas-install-swift-controller.sh &&
iaas-install-cinder-controller.sh
# 检查脚本执行状态
if [ $? -eq 0 ]; then
echo "Controller 所有安装脚本成功执行"
else
echo "有安装脚本执行失败"
fi

for i in {1..5}
do
echo "可以进行调优了!"
done

echo "source /etc/keystone/admin-openrc.sh" >> ~/.bashrc