2020 云计算省赛总结,springboot 教学视频
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.200.10
PREFIX=24
配置主机名:
hostnamectl set-hostname controller
按 ctrl+d 退出 重新登陆
(2)compute 节点
配置网络:
enp8s0: 192.168.100.20
DEVICE=enp8s0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.100.20
PREFIX=24
GATEWAY=192.168.100.1
enp9s0: 192.168.200.20
DEVICE=enp9s0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.200.20
PREFIX=24
配置主机名:
hostnamectl set-hostname compute
按 ctrl+d 退出 重新登陆
#Controller 和 compute 节点
(1)yum 源备份
#rm -rf /etc/yum.repos.d/*
(2)创建 repo 文件
【controller】
在/etc/yum.repos.d 创建 centos.repo 源文件
vi /etc/yum.repos.d/local.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
【compute】
在/etc/yum.repos.d 创建 centos.repo 源文件
vi /etc/yum.repos.d/local.repo
[root@compute ~]# vi /etc/yum.repos.d/local.repo
[centos]
name=centos
baseurl=ftp://controller/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://controller/iaas/iaas-repo
gpgcheck=0
enabled=1
主机名映射
[root@controller ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.10 controller
192.168.100.20 compute
[root@compute ~]# vi /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.10 controller
192.168.100.20 compute
(3)挂载 iso 文件
【挂载 CentOS-7-x86_64-DVD-1804.iso】
[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1804.iso /mnt/
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# mkdir /opt/iaas
[root@controller ~]# cp -rvf /mnt/* /opt/centos/
[root@controller ~]# umount /mnt/
【挂载 XianDian-IaaS-v2.4.iso】
[root@controller ~]# mount -o loop chinaskills_cloud_iaas.iso /mnt/
mount: /dev/loop0 is write-protected, mounting read-only
[root@controller ~]# cp -rvf /mnt/* /opt/iaas
(4)搭建 ftp 服务器,开启并设置自启
[root@controller ~]# yum install vsftpd -y
[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
添加 anon_root=/opt/
保存退出
[root@controller ~]# systemctl start vsftpd
[root@controller ~]# systemctl enable vsftpd
(5)配置防火墙和 Selinux
【controller/compute】
编辑 selinux 文件
vi /etc/selinux/config
SELINUX=permissive
[root@controller ~]# setenforce 0
关闭防火墙并设置开机不自启
systemctl stop firewalld.service
systemctl disable firewalld.service
(6)清除缓存,验证 yum 源
【controller/compute】
yum clean all
yum list
controller 和 compute 节点
yum install iaas-xiandian -y
编辑文件/etc/xiandian/openrc.sh,此文件是安装过程中的各项参数,根据每项参数上一行的说明及服务器实际情况进行配置。
Vim 模式删除所有内容:%d
##--------------------system Config--------------------##
##Controller Server Manager IP. example:x.x.x.x
HOST_IP=192.168.100.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.100.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.100.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.100.10
##External Network Interface. example:eth1
INTERFACE_NAME=enp8s0
##External Network The Physical Adapter. example:provider
Physical_NAME=provider
##First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101
minvlan=2
##Last Vlan ID in VLAN RANGE for VLAN Network. example:200
maxvlan=300
##--------------------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=md126p4
##--------------------Swift Config---------------------##
##Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000
##The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=md126p5
##The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=192.168.100.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
scp /etc/xiandian/openrc.sh root@compute://etc/xiandian/
The authenticity of host 'compute (192.168.100.20)' can't be established.
ECDSA key fingerprint is SHA256:RShHiJfjbyvHe3iH59hzhlPJAA2GdgjbtyvrgvbBiQ4.
ECDSA key fingerprint is MD5:a1:50:ff:a2:d0:6a:5b:2d:f0:ee:07:d5:f4:12:d3:71.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'compute,192.168.100.20' (ECDSA) to the list of known hosts.
root@compute's password:
openrc.sh 100% 3881 2.5MB/s 00:00
Compute 节点修改 tunnel IP
以下脚本按顺序执行!
Controller:
iaas-pre-host.sh
reboot
iaas-install-mysql.sh
iaas-install-keystone.sh
iaas-install-glance.sh
iaas-install-nova-controller.sh
iaas-install-neutron-controller.sh
iaas-install-dashboard.sh
iaas-install-cinder-controller.sh
iaas-install-swift-controller.sh
iaas-install-nova-compute.sh(修改配置之后运行)
Compute:
iaas-pre-host.sh
reboot
iaas-install-nova-compute.sh
iaas-install-neutron-compute.sh
iaas-install-cinder-compute.sh
iaas-install-swift-compute.sh
流程:
(1)管理员->资源管理->云主机类型->创建云主机类型
(2)管理员->网络->网络->创建网络
(2)项目->网络->安全组->管理规则->添加规则(ICMP、TCP、UDP)
(3)项目->资源管理->云主机->创建云主机
1 创建云主机类型
![](https://static001.geekbang.org/infoq/d8/d8653deef67f548081abeb03836bfa36.png)
2 创建云主机网络
选择 vlan 模式,网络要和外网网卡一个网段,段 ID 要选择外网网卡所在网段
![](https://static001.geekbang.org/infoq/1b/1b8b329220d67aa629676742da030666.png)
![](https://static001.geekbang.org/infoq/c8/c82827bf0f895de5c14edb5c72909abb.png)
![](https://static001.geekbang.org/infoq/a9/a9d300cf3c6ae772b105a097bcbcb7cd.png)
2.1 绑定固定网络
![](https://static001.geekbang.org/infoq/44/4407bce917ad5e39c5adba44225068ca.png)
3 修改安全组
![](https://static001.geekbang.org/infoq/ca/cad552710360faf277a4bc903cdf34e1.png)
4 上传镜像
[root@controller ~]# source /etc/keystone/admin-openrc.sh
[root@controller ~]# glance image-create --name "CentOS7.5" --disk-format qcow2 --container-format bare --progress < /opt/iaas/images/CentOS_7.5_x86_64_XD.qcow2
[=============================>] 100%
+------------------+--------------------------------------+
…
5 创建云主机
![](https://static001.geekbang.org/infoq/e7/e74278fbdeacf1bc177df3641f9321de.png)
6 测试连接
![](https://static001.geekbang.org/infoq/41/41edf29fd38e3221a65490dd2d6b69e1.png)
![](https://static001.geekbang.org/infoq/00/006661c8c5184d6f7d9456be8b2ee7e0.png)
1 创建云主机类型
使用命令创建一个名为 test ,ID 为 6 ,内存为 2048MB ,磁盘为 10GB ,vcpu 数量为 2 的云主机类型。
nova flavor-create test 6 2048 10 2
+----+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |
+----+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
| 6 | test | 2048 | 10 | 0 | | 2 | 1.0 | True | - |
+----+------+-----------+------+-----------+------+-------+-------------+-----------+-------------
2 创建云主机网络
思路:查看云平台创建好的网络,查看它的详细信息,用命令创建的时候,指定参数即可!
[root@controller ~]# neutron net-create --router:external --provider:network_type vlan --provider:physical_network provider --provider:segmentation_id 200 ext
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| created_at | 2020-12-01T00:22:18Z |
| description | |
| id | 37edbae1-9478-472e-a681-8587fbb464fb |
| ipv4_address_scope | |
| ipv6_address_scope | |
| is_default | False |
| mtu | 1500 |
| name | ext |
| port_security_enabled | True |
| project_id | 213eb58e471448cf969fd925382bc08d |
| provider:network_type | vlan |
| provider:physical_network | provider |
| provider:segmentation_id | 200 |
| revision_number | 5 |
| router:external | True |
| shared | False |
| status | ACTIVE |
| subnets | |
| tags | |
| tenant_id | 213eb58e471448cf969fd925382bc08d |
| updated
_at | 2020-12-01T00:22:19Z |
+---------------------------+--------------------------------------+
创建子网
[root@controller ~]# neutron subnet-create ext 192.168.200.0/24 --name sub_ext --gateway 192.168.200.1
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Created a new subnet:
+-------------------+------------------------------------------------------+
| Field | Value |
+-------------------+------------------------------------------------------+
| allocation_pools | {"start": "192.168.200.2", "end": "192.168.200.254"} |
| cidr | 192.168.200.0/24 |
| created_at | 2020-12-01T00:28:39Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 192.168.100.1 |
| host_routes | |
| id | 0be6f045-08b2-459f-a989-b58863b1a29d |
| ip_version | 4 |
| ipv6_address_mode | |
| ipv6_ra_mode | |
| name | sub_ext |
| network_id | 37edbae1-9478-472e-a681-8587fbb464fb |
| project_id | 213eb58e471448cf969fd925382bc08d |
| revision_number | 0 |
| service_types | |
| subnetpool_id | |
| tags | |
| tenant_id | 213eb58e471448cf969fd925382bc08d |
| updated_at | 2020-12-01T00:28:39Z |
+-------------------+------------------------------------------------------+
3 创建云主机
[root@controller ~]# glance image-list
+--------------------------------------+-----------+
| ID | Name |
+--------------------------------------+-----------+
| db8a716d-0a2e-49eb-8892-681e7b6be41d | CentOS7.5 |
+--------------------------------------+-----------+
[root@controller ~]# neutron net-list
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
+--------------------------------------+------+----------------------------------+-------------------------------------------------------+
| id | name | tenant_id | subnets |
+--------------------------------------+------+----------------------------------+-------------------------------------------------------+
| 37edbae1-9478-472e-a681-8587fbb464fb | ext | 213eb58e471448cf969fd925382bc08d | 0be6f045-08b2-459f-a989-b58863b1a29d 192.168.200.0/24 |
+--------------------------------------+------+----------------------------------+-------------------------------------------------------+
[root@controller ~]# nova flavor-list
+--------------------------------------+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | Description |
+--------------------------------------+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
| 6 | test | 2048 | 10 | 0 | | 2 | 1.0 | True | -
+--------------------------------------+------+-----------+------+-----------+------+-------+-------------+-----------+-------------+
[root@controller ~]# nova boot --flavor c5af1899-5ca2-4b5f-bf5e-b03d6e049f28 --image db8a716d-0a2e-49eb-8892-681e7b6be41d --nic net-id=37edbae1-9478-472e-a681-8587fbb464fb pc-cai
+--------------------------------------+--------------------------------------------------+
| Property | Value |
+--------------------------------------+--------------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | |
| OS-EXT-SRV-ATTR:host | - |
| OS-EXT-SRV-ATTR:hostname | pc-cai |
| OS-EXT-SRV-ATTR:hypervisor_hostname | - |
| OS-EXT-SRV-ATTR:instance_name | |
| OS-EXT-SRV-ATTR:kernel_id | |
| OS-EXT-SRV-ATTR:launch_index | 0 |
| OS-EXT-SRV-ATTR:ramdisk_id | |
| OS-EXT-SRV-ATTR:reservation_id | r-q8pfr6gu |
| OS-EXT-SRV-ATTR:root_device_name | - |
| OS-EXT-SRV-ATTR:user_data | - |
| OS-EXT-STS:power_state | 0 |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | - |
| OS-SRV-USG:terminated_at | - |
| accessIPv4 | |
| accessIPv6 | |
| adminPass | kmuX4hyXnv6N |
| config_drive | |
| created | 2020-12-01T00:38:47Z |
| description | - |
| flavor:disk | 50 |
| flavor:ephemeral | 0 |
| flavor:extra_specs | {} |
| flavor:original_name | BBB |
| flavor:ram | 4200 |
| flavor:swap | 0 |
| flavor:vcpus | 4 |
| hostId | |
| host_status | |
| id | 24192942-af87-444a-8145-f0cca1fc6880 |
| image | CentOS7.5 (db8a716d-0a2e-49eb-8892-681e7b6be41d) |
| key_name | - |
| locked | False |
| metadata | {} |
| name | pc-cai |
| os-extended-volumes:volumes_attached | [] |
| progress | 0 |
| security_groups | default |
| status | BUILD |
| tags | [] |
| tenant_id | 213eb58e471448cf969fd925382bc08d |
| updated | 2020-12-01T00:38:47Z |
| user_id | ea1193f0ce094069bbbbe22399c30929 |
+--------------------------------------+--------------------------------------------------+
4 创建云硬盘
建一个 2G 的硬盘名字为 haha
[root@controller ~]# cinder create --name haha 2
+--------------------------------+--------------------------------------+
| Property | Value |
+--------------------------------+--------------------------------------+
| attachments | [] |
| availability_zone | nova |
| bootable | false |
| consistencygroup_id | None |
| created_at | 2020-12-01T00:48:15.000000 |
| description | None |
| encrypted | False |
| id | 0439bafc-2d9a-473c-8f38-e1ace00808a3 |
| metadata | {} |
| migration_status | None |
| multiattach | False |
| name | haha |
| os-vol-host-attr:host | None |
| os-vol-mig-status-attr:migstat | None |
| os-vol-mig-status-attr:name_id | None |
| os-vol-tenant-attr:tenant_id | 213eb58e471448cf969fd925382bc08d |
| replication_status | None |
| size | 2 |
| snapshot_id | None |
| source_volid | None |
| status | creating |
| updated_at | None |
评论