1. 在openstack公有云平台上,基于cirrors.qcow2镜像,应用命令创立一个名为cirros的镜像。
 [root@controller ~]# glance image-create --name "cirros" --disk-format qcow2 --container-format bare --progress opt/openstack/images/CentOS_7.5_x86_64_XD.qcow2

2.在openstack公有云平台上,应用命令创立一个名为Fmin,ID为1,内存为1024 MB,磁盘为10 GB,vcpu数量为1的云主机类型。

 [root@controller ~]# nova flavor-create Fmin 1 1024 10 1

在openstack公有云平台上,编写模板server.yml,创立名为“m1.flavor”、 ID 为 1234、 内存为 1024MB、硬盘为 20GB、 vcpu数量为 2的云主机类型。

 [root@controller ~]# openstack orchestration template version list #查看可用于编排的模板版本 [root@controller ~]# Vi  server.yaml server.yamlheat_template_version: 2015-04-30description: resources:                 flavor:                 type: OS::Nova::Flavor             properties:                        name: "m1.flavor"                    flavorid: "1234"                    disk: 20                        ram: 1024                        vcpus: 2outputs:      flavor_info:    description: Get the information of virtual machine type        value: { get_attr: [ flavor, show ] } [root@controller ~]# heat stack-create m1_flavor_stack -f server.yaml #创立资源
  1. 在openstack公有云平台上,通过应用命令创立云主机内部网络extnet,子网extsubnet,虚拟机浮动 IP 网段为172.18.x.0/24(其中x是考位号), 网关为172.18.x.1,网络应用vlan模式;创立云主机内网intnet,子网intsubnet,虚拟机子网 IP 网段为192.168.x.0/24(其中x是考位号),网关为192.168.x.1;实现内网子网intsubnet和内部网络extnet的连通。

创立外网

 [root@controller ~]# openstack network create extnet --provider-physical-network provider --provider-network-type vlan --external 

创立子网

 [root@controller ~]# openstack subnet create extsubnet --subnet-range 172.18.25.0/24 --network extnet --gateway 172.18.25.1

查看是否创立胜利

 [root@controller ~]# neutron subnet-list

创立内网

 [root@controller ~]# openstack network create intnet --provider-network-type vxlan --provider-segment 1

创立子网

 [root@controller ~]# openstack subnet create  intsubnet  --subnet-range 192.168.25.0/24  --network intnet --gateway 192.168.25.1/24

创立路由

 [root@controller ~]# openstack router create ext-router

绑定ext-route和外网extnet,并启动snat

 [root@controller ~]# openstack router set --external-gateway extnet --enable-snat ext-route

ext-route增加子网intsubnet

 [root@controller ~]# openstack router add subnet ext-route intsubnet
  1. 在Controller节点中编写名为modvm.sh的shell脚本查看云主机VM1的内存大小,如果内存小于2G,调整云主机VM1的内存为2G。

  2. 在openstack公有云平台上,基于“cirros” 镜像、1vCPU/1G /10G 的flavor、 intsubnet的网络,绑定浮动IP,应用命令创立一台虚拟机VM1,启动VM1,并应用PC机能近程登录到VM1。

     [root@controller ~]# openstack flavor create --ram 1024 --disk 10 --vcpus 1 flavor  [root@controller ~]# onova boot --flavor flavor --image cirros --nic net-name=intnet --security-groups default VM1 [root@controller ~]#openstack floating ip create extnet --floating-ip-address 172.18.25.104    // 创立出浮动ip[root@controller ~]openstack server add floating ip VM1  172.18.25.104    // 绑定相应的浮动ip到云主机
  3. 在openstack公有云平台上,将云主机VM1保留为qcow2格局的快照并保留到controller节点/root/cloudsave目录下。
 [root@controller ~]# Mkdir /root/cloudsave [root@controller ~]# openstack server image create VM1 --name myVM1 [root@controller ~]# openstack image save --file /root/cloudsave/myVM1.qcow2 myVM1
  1. 在controller节点上新建名为Chinaskill的容器,并获取该容器的寄存门路;将 centos7_5.qcow2 镜像上传到chinaskill容器中,并设置分段寄存, 每一段大小为 10M。

    bashswift post Chinaskillswift stat Chinaskillswift upload Chinaskill -S 10485760 /opt/openstack/images/centos7_5.qcow2
  1. 在openstack公有云平台上,创立一个名为“lvm”的卷类型,创立1块卷类型为lvm的40G云盘,并附加到虚拟机VM1上。

     openstack volume type create lvm openstack volume create  --type lvm --size 10 v1 openstack volume list openstack server add volume VM1 v1
  1. 在虚拟机VM1上,应用附加的云盘,划分为4个10G的分区,创立一个raid 5,其中1个分区作为热备。

    fdisk /dev/vdb分4个分区mdadm -C -v demo -l 5 -n 3 -x 1 /dev/vdb{1,2,3,4}
  1. 在Controller节点中编写/root/openstack/deletevm.sh的shell脚本,开释虚拟机VM1,执行脚本实现实例开释。

    source /etc/keystone/admin-openrc.shopenstack server delete VM1
  2. 应用镜像 Openstack-error-1 重建云主机“all-in-one”(账号: root 明码: 000000)。重建后的云主机内有谬误的openstack 平台,其中有曾经创立好的云主机 vm-test无奈启动,请排除谬误,启动vm-test云主机。

    计划:

    1.首先到管制节点查看

    2.查看glance日志 /var/log/glance/

    3.查看/var/lib/glance/下的文件的权限750 所属主和所属者是不是glance

  3. 登录172.17.x.10/dashboard,应用centos7镜像创立三台云主机来搭建rabbitmq集群。应用一般集群模式,其中一台做磁盘节点,另外两台做内存节点,配置结束后启动rabbitmq服务。

    # 三台主机yum install -y rabbitmq-serversystemctl restart rabbitmq-serversystemctl enable rabbitmq-server#rabbitmq1启动图形界面rabbitmq-plugins enable rabbitmq_managementsystemctl restart rabbitmq-serverscp /var/lib/rabbitmq/.erlang.cookie rabbitmq2:/var/lib/rabbitmq/scp /var/lib/rabbitmq/.erlang.cookie rabbitmq3:/var/lib/rabbitmq/# 两台节点主机chown rabbitmq:rabbitmq .erlang.cookie#配置节点退出集群#rabbitmq2rabbitmqctl stop_apprabbitmqctl join_cluster --ram rabbit@rabbitmq1rabbitmqctl start_app#rabbitmq3rabbitmqctl stop_apprabbitmqctl join_cluster --ram rabbit@rabbitmq1rabbitmqctl start_app
  4. 应用提供的云平安框架组件,将 http://172.17.x.10/dashboard 中的 keystone安全策略从http优化至 https。

    yum install -y mod_sslvi /etc/openstack-dashboard/local_settingsUSE_SSL = TrueCSRF_COOKIE_SECURE = True             ##原文中有,去掉正文即可SESSION_COOKIE_SECURE = True          ##原文中有,去掉正文即可SESSION_COOKIE_HTTPONLY = Truevi /etc/httpd/conf.d/ssl.conf#将SSLProtocol all -SSLv2 -SSLv3改成SSLProtocol all -SSLv2systemctl restart httpdsystemctl restart memcached
  5. 在openstack公有云平台上,增加controller节点资源到云平台(即controller节点也作为compute节点应用)。

    批改openrc.sh,把compute节点的IP和主机名改为controller节点的IP和主机名在管制节点运行iaas-install-nova-compute.sh
  1. 从PC机上传CentOS_7.5_x86_64.qcow2文件到controller节点,并在openstack公有云平台上,应用glance相干命令上传镜像,镜像源为CentOS_7.5_x86_64.qcow2,名为Gmirror1,min _ram为2048M,min_disk为30G。

    openstack image create --disk-format qcow2 --public --min-ram 2048 --min-disk 30 --file /opt/images/CentOS_7.5_x86_64_XD.qcow2  Gmirror1
  2. 在云主机VM1上,对附加的云盘进行分区格式化后,永恒挂载到/opt目录下。在Controller节点中编写名为/root/openstack/deletevm.sh的shell脚本开释云主机VM1,执行脚本实现实例开释。

    fdisk -lmkfs -t ext4 /dev/vdbvi /etc/fstab/dev/vdb     /opt    ext4      defaults      0 0#查看挂载lsblk -f
  1. 在openstack公有云平台上,将云主机Hostrans(后面一题创立的)应用手动迁徙的形式,迁徙至另一个计算节点。

    # 查看虚拟机在哪个节点上nova show Hostrans#敞开虚拟机openstack server stop Hostrans#将compute节点迁徙scp -r /var/lib/nova/instances/5e157cc9-c25e-41e5-829b-5fb13d0a98f6/ controller:/var/lib/nova/instances/#批改数据库mysql -uroot -p000000use nova;update instances set host='controller', node='controller' where uuid='5e157cc9-c25e-41e5-829b-5fb13d0a98f6'#重启两个节点服务openstack-server restart
  1. 在openstack公有云平台上,配置swift对象存储为glance的后端存储。

    vim /etc/glance/glance-api.conf[glance_store]default_store = swift          默认为file 改为swiftstores = file, http                默认不必动swift_store_auth_version = 2        默认版本为2stores=glance.store.swift.Store,glance.store.filesystem.Store      此项肯定要加上,不然无奈上传swift_store_auth_address =  http://controller:5000/v2.0  controller的keystone认证swift_store_user = service:swift    应用swift用户swift_store_key = swift        明码swift_store_container = glance       将要被创立的容器swift_store_create_container_on_put = True    上传开swift_store_large_object_size = 5120        最大5G限度,但与glance联合后限度有效swift_store_large_object_chunk_size = 200        最大200个容器swift_enable_snet = Falsesystemctl restart openstack-glance-api
  2. 应用镜像 centos7,创立两台云主机master和slave,并别离绑定浮动IP;在这2台云主机上安装mysql数据库系统并配置为主从数据库(master为主节点、slave为从节点);并在mater云主机的数据库中创立ChinaSkilldb库,在ChinaSkilldb库中创立表testable (id int not null primary key,Teamname varchar(50), remarks varchar(255)),在表中插入记录(1,"Cloud","ChinaSkill")。