MENU

Catalog

    云计算比赛iaas部分题目笔记整理(长更文章)

    November 17, 2019 • Read: 18768 •

    因为博主参加了云计算比赛,整理了一部分笔记,分享一下顺便备忘,记在记事本和纸上可读性不高。192.168.100.10 为控制节点机器,192.168.100.20 为计算节点机器。系统使用 centos7.x server 版。

    题目与解题命令:

    第一部分:IaaS 云计算基础架构平台(15 分)

    任务一、IaaS 云平台搭建(15 分)

    修改云平台 IaaS 各节点的系统配置,按以下步骤搭建云平台,并完成相应的答题。

    1. 操作系统环境配置(1 分)

    按以下要求设置主机名、防火墙及 SELinux:
    (1)设置控制节点主机名为 controller,计算节点主机名为 compute;
    (2)关闭控制节点和计算节点的防火墙,设置开机不启动;
    (3)设置控制节点和计算节点的 SELinux 为 Permissive 模式;
    (4)退出 SecureCRT,重新通过 ssh 连接各节点服务器;
    使用命令查询控制节点和计算节点的主机名、防火墙是否处于关闭状态及 SELinux 的状态。以文本形式依次将命令行及查询信息提交到答题框。

    解:
    1.
    192.168.100.10

    • #hostnamectl set-hostname controller

    192.168.100.20

    • #hostnamectl set-hostname compute

    2.
    192.168.100.10

    • #systemctl stop firewalld
    • #systemctl disable firewalld

    192.168.100.20

    • #systemctl stop firewalld
    • #systemctl disable firewalld

    3.
    192.168.100.10

    • #setenforce 0

    192.168.100.20

    • #setenforce 0

    4. 直接 CTRL D 退出登录并回车重新登陆
    5. 使用命令查询控制节点与计算节点的主机名、防火墙是否处于关闭状态及 SELinux 的状态
    192.168.100.10 (查询控制节点与计算节点的主机名

    • #hostname

    192.168.100.20 (查询控制节点与计算节点的主机名

    • #hostname

    192.168.100.10 (防火墙是否处于关闭状态

    • #systemctl status firewalld

    192.168.100.20 (防火墙是否处于关闭状态

    • #systemctl status firewalld

    192.168.100.10 (SELinux 的状态

    • #getenforce

    192.168.100.20 (SELinux 的状态

    • #getenforce

    2. 上传镜像源并挂载(1 分)
    通过 SecureFX 上传两个镜像文件 CentOS-7-x86_64-DVD-1511.iso 和 XianDian-IaaS-v2.2.iso 到控制节点的 opt 目录下;在 opt 目录下创建两个子目录 centos 和 iaas,并将镜像文件对应挂载到上述两个目录下;使用 df 命令查看挂载的信息(需显示挂载的文件系统类型)。依次将操作命令及执行结果以文本形式提交到答题框。

    解:192.168.100.10 内完成

    • #mkdir /opt/{centos,iaas} //创建挂载镜像的目录
    • #mount -o loop CentOS-7-x86_64-DVD-1511.iso /opt/centos/ //将centos镜像挂载到/opt/centos目录
    • #mount -o loop XianDian-IaaS-v2.2.iso /opt/iaas/ //将xiandian镜像挂载到/opt/iaas目录
    • #df -Th //查看挂载信息

    3. 配置本地以及远程 yum 源(1 分)

    • 配置控制节点本地yum源文件local.repo,搭建ftp服务并配置根目录为指向存放yum源的路径;配置计算节点yum源文件ftp.repo,使用控制节点ftp服务作为yum源,其中节点的地址以主机名表示;使用cat命令查看控制节点和计算节点的yum源全路径配置文件。依次将操作命令及返回结果以文本形式提交到答题框。

    解:
    192.168.100.10:

    • #cd /etc/yum.repos.d
    • #rm -rf *
    • #vi local.repo

    在 local.repo 内输入内容:

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

    保存退出后输入:

    • #yum clean all
    • #yum list
    • #yum install -y vsftpd
    • #vi /etc/vsftpd/vsftpd.conf

    添加:

    • anon_root=/opt/

    重启并启用 ftp 服务:

    • #systemctl restart vsftpd
    • #systemctl enable vsftpd

    192.168.100.20:

    • #cd /etc/yum.repos.d
    • #rm -rf *
    • #vi ftp.repo

    输入:

    • [centos]
    • name=centos
    • gpgcheck=0
    • enabled=1
    • baseurl=ftp://192.168.100.10/centos
    • [iaas]
    • name=iaas
    • gpgcheck=0
    • enabled=1
    • baseurl=ftp://192.168.100.10/iaas/iaas-repo

    使用 cat 命令查看控制节点和计算节点的 yum 源全路径配置文件。
    192.168.100.10

    • #cat /etc/yum.repos.d/local.repo

    192.168.100.20

    • #cat /etc/yum.repos.d/ftp.repo

    4. 环境变量配置(1 分)

    • 在控制节点和计算节点分别安装iaas-xiandian软件包,首先完成脚本文件中基本变量的配置,然后根据表2完成脚本文件openrc.sh。以文本形式提交脚本文件的内容到答题框中

    解;
    192.168.100.10

    • #yum install -y iaas-xiandian
    • #vi /etc/xiandian/openrc.sh

    然后根据表中内容修改即可,篇幅有限,故省略。

    5. 数据库安装(2 分)
    使用脚本安装数据库服务并查看脚本运行时间,使用 root 用户登录数据库,查看 mysql 的默认存储引擎信息、mysql 支持的存储引擎有哪些。依次将操作命令和查询结果以文本形式提交到答题框。

    • #time iaas-install-mysql.sh
    • #mysql -uroot -p000000
    • #show variables like '%storage_engine%';

    6.keystone 安装
    使用脚本安装 keystone 服务,创建用户 testuser,密码为 xiandian,将 testuser 用户分配给 admin 项目,赋予用户 admin 的权限。

    • #source /etc/keystone/admin-openrc.sh
    • #openstack user create --domain demo --password xiandian testuser
    • #openstack role add --project admin --user testuser admin

    7.glance 安装
    使用脚本安装 glance 服务,首先使用 glance 相关命令上传镜像,镜像源为 Centos_6.5_x86_64_XD.qcow2,名为 testone;其次使用 open stack 命令修改这个镜像名为 examimage;最后使用 openstack 命令查看镜像列表;

    • #iaas-install-glance.sh
    • #glance image-create --name "testone" --disk-format qcow2 --container-format bare --progress </opt/iaas/images
    • #openstack image set testone --name examimage
    • #openstack image list

    8.nova 管理
    使用脚本安装 nova 服务,通过 nova 的相关命令创建名为 exam,ID 为 1234,内存为 1024M,硬盘为 20G,虚拟内核数量为 2 的云主机类型,查看 exam 的详细信息;

    192.168.100.10:

    • #iaas-install-nova-controller.sh

    192.168.100.20:

    • #iaas-install-nova-compute.sh

    192.168.100.10:

    • #nova flavor-create exam 1234 1024 20 2
    • #nova flavor-show 1234

    9. 网络创建
    使用脚本安装 neutron 服务,并配置为 GRE 网络;
    1. 创建云主机外部网络为 ext-net,子网为 ext-subnet,虚拟机浮动 IP 网段为 192.168.200.0/24,网关为 192.168.200.1;
    2. 创建云主机隧道网络 int-net1,子网为 int-subnet1,虚拟机子网 IP 网段为 10.0.0.0/24,网关为 10.0.0.1;
    3. 创建云主机隧道网络 int-net2,子网为 int-subnet2,虚拟机子网 IP 网段为 10.0.1.0/24,网关为 10.0.1.1;
    4. 添加名为 ext-router 的路由器,配置路由接口地址,完成隧道网络 int-net1 和外部网络 ext-net 的联通
    使用 ovs-vswitchd 相关命令查询控制节点网桥 br-ex 的端口列表信息,依次将操作命令和返回结果以文本形式提交到答题框;

    1-4 部需要在 iaas 的图形化界面进行操作,所以不进行解答

    • #ovs-vsctl list-ports br-ex

    10.dashboard 配置
    使用脚本安装 dashboard 服务,使用 curl 命令查询 http://192.168.100.10/dashboard/auth/login/

    • #iaas-install-dashboard.sh
    • #curl http://192.168.100.10/dashboard/auth/login

    IaaS 运维

    按以下配置在云平台中创建云主机:
    1. 名称:iaas_all
    2. 镜像文件:iaas-all
    3. 云主机类型 m1.large
    4. 网络 1:int-net1,绑定浮动 IP;
    5. 网络 2:int-net2

    1.MongoDB 管理
    登陆 iaas all 主机,登陆 mongodb 数据库。
    1. 新建一个名为 xiandian 的数据库;
    2. 使用 for 循环,向数据库 xiandian 下的集合 student 插入 100 条数据:"_id":i;"name":"xiaoming","age":"21", 其中循环变量使用 i;
    3. 使用命令统计集合 student 中的数据条数;
    4. 使用命令查询集合 student 中_id 小于 33,忽略前 15 个数据,并按照_id 降序排列的结果:

    • #mongodb
    • >use xiandian
    • >db
    • >for(var i=1;i<=100;i++)db.student.insert({"_id":i,"name":"xiaoming","age":"21"})
    • >db.student.find().count()
    • >db.student.find({"_id":{$lte:33}}).skip(15).sort({"_id":-1})

    2.nova 管理
    登陆 192.168.100.10/dashboard 界面,创建一个名字为 migration,flavor 使用 m1.medium,镜像使用 centos7 的云主机。查看该云主机的详细信息,并将该云主机冷迁移到另一个计算节点(controller 节点即是控制节点也是计算节点,compute 节点为计算节点,若原来在 compute 节点,则迁移到 controller,反之亦然。云主机原来所在的节点我们称之为源节点,迁移过去的节点称之为目标节点。)最后将迁移的云主机启动并查看是否迁移了。
    192.168.100.20:

    • #cd /var/lib/nova/instances/
    • #ll
    • #scp -r 云主机ID 192.168.100.10:/var/lib/nova/instances/

    192.168.100.10:

    • #cd /var/lib/nova/instances/
    • #ll
    • #chown -R nova:nova 云主机ID
    • #ll
    • #mysql -uroot -p000000
    • >show databases;
    • >use nova;
    • >update instances set host ='controller',node='controller' where uuid='云主机ID';
    • >quit
    • #systemctl restart openstack-nova-compute
    • #nova start 云主机ID
    • #nova list
    • #nova show 云主机ID

    先写到这里,我去吃晚饭。。饿了

    Last Modified: January 11, 2020
    Leave a Comment

    32 Comments
    1. 可以最近也在研究这个,感谢整理了

    2. 可以最近也在研究这个,感谢整理了

    3. ghost ghost

      请问 iaas-all 镜像文件有吗 @(委屈)

    4. 考察的知识点看起来还是覆盖得比较全面的.

      1. @夏目是的,想拿到名词还是要努力的 @(阴险)

    5. nana nana

      大佬,xiandian-iaas-all 的镜像有吗,想自己研究一下 @(乖)