因为博主参加了云计算比赛,整理了一部分笔记,分享一下顺便备忘,记在记事本和纸上可读性不高。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
先写到这里,我去吃晚饭。。饿了
可以最近也在研究这个,感谢整理了
可以最近也在研究这个,感谢整理了
请问 iaas-all 镜像文件有吗 @(委屈)
考察的知识点看起来还是覆盖得比较全面的.
是的,想拿到名词还是要努力的 @(阴险)
大佬,xiandian-iaas-all 的镜像有吗,想自己研究一下 @(乖)