先电openstack云计算比赛个人记录

2019-04-13 12:21发布

云计算openstack搭建及运维

1.参赛内容简介

  1. 本人才疏学浅,如有错误,还望各位不吝赐教,谢谢
  2. 参赛试题基本都差不多,基本包括以下几个方面
  • openstack环境搭建
  • openstack运维
  • docker
  • 大数据运维
  • 安卓开发
  1. 样题下载(注意:样题答案并不保证正确,还请自行研究)
    百度云盘 密码:q72e
    (镜像文件还请自行网上寻找)

2.环境搭建

预先准备

  1. 安装操作系统CentOS7,安装时注意留一部分空白分区
  2. 按题要求设置控制节点以及计算节点主机名
# hostnamectl set-hostname controller
  1. 划分分区
#compute节点 [root@compute] # parted /dev/md126 (parted) mkpart swift 500G 600G //创建swift分区,从500G到600G [root@compute] # mkfs.xfs /dev/md126p5 //格式化分区
  1. 配置网卡
  • 题目一般要求两张网卡
控制节点 网卡1 :192.168.100.10 网卡2 :192.168.200.10 计算节点 网卡1 : 192.168.100.20 网卡2 :192.168.200.20
  • 方法为打开网卡配置文件vi /etc/sysconfig/network-scripts/ifcfg-XXX
  • 修改以下参数
ONBOOT=yes NM_CONTROLLED=no BOOTPROTO=static IPADDR=192.168.100.10 PREFIX=24 GATEWAY=192.168.100.1
  1. 配置本地yum源
  • 上传提供的镜像文件,挂载(只需要在controller节点做)
#挂载CentOS系统iso文件 [root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/ [root@controller ~]# mkdir /opt/centos //创建/opt/centos文件夹 [root@controller ~]# cp -rvf /mnt/* /opt/centos/ //复制镜像内容到创建的文件夹 [root@controller ~]# umount /mnt/ //卸载iso镜像 #挂载提供的iaas基础iso文件 [root@controller ~]# mount -o loop XianDian-IaaS-v2.1.iso /mnt/ [root@controller ~]# cp -rvf /mnt/* /opt/ [root@controller ~]# umount /mnt/
  • 修改yum源配置
    备份原来的yum源
mv /etc/yum.repos.d/* /root
  • 新建repo文件并按以下内容输入
#vi /etc/yum.repo.d/openstack.repo //创建并打开openstack.repo文件 #控制节点的文件内容 [centos] name=centos baseurl=file:///opt/centos gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=file:///opt/iaas-repo gpgcheck=0 enabled=1 #计算节点的文件内容 [centos] name=centos baseurl=ftp://192.168.100.10/centos gpgcheck=0 enabled=1 [iaas] name=iaas baseurl=ftp://192.168.100.10/iaas-repo gpgcheck=0 enabled=1
  • 执行以下命令
#yum clean all #yum update
  1. controller节点安装ftp
[root@controller ~]# yum install vsftpd –y
  • 修改配置文件
    • 打开[root@controller ~]# vi /etc/vsftpd/vsftpd.conf
    • 任意位置添加anon_root=/opt/,保存退出
  • 重启ftp并加入开机自启
[root@controller ~]# systemctl start vsftpd [root@controller ~]# systemctl enable vsftpd
  1. 关闭防火墙(所有节点执行)
# systemctl stop firewalld # systemctl disable firewalld
  1. 计算节点更新yum源
# yum clean all # yum update
  1. 所有节点安装先电提供的作弊 脚本包
# yum install iaas-xiandian -y
  1. 编辑配置文件/etc/xiandian/openrc.sh
  • 这里贴一个编辑好的例子,一般情况,题目都会对一些参数有要求,请按照题目要求填写
HOST_IP=192.168.100.10 HOST_NAME=controller HOST_IP_NODE=192.168.100.20 HOST_NAME_NODE=compute RABBIT_USER=openstack RABBIT_PASS=000000 DB_PASS=000000 DOMAIN_NAME=demo(按题目要求写) ADMIN_PASS=000000 DEMO_PASS=000000 KEYSTONE_DBPASS=000000 GLANCE_DBPASS=000000 GLANCE_PASS=000000 NOVA_DBPASS=000000 NOVA_PASS=000000 NEUTRON_DBPASS=000000 NEUTRON_PASS=000000 METADATA_SECRET=000000 INTERFACE_NAME=enp9s0(外网网卡名) CINDER_DBPASS=000000 CINDER_PASS=000000 TROVE_DBPASS=000000 TROVE_PASS=000000 BLOCK_DISK=md126p4(空白分区名) SWIFT_PASS=000000 OBJECT_DISK=md126p5(空白分区名) STORAGE_LOCAL_NET_IP=192.168.100.20 HEAT_DBPASS=000000 HEAT_PASS=000000 CEILOMETER_DBPASS=000000 CEILOMETER_PASS=000000 AODH_DBPASS=000000 AODH_PASS=000000
  1. 所有节点执行预部署脚本
# iaas-pre-host.sh
  1. 修改ntp时间同步配置
  • controller节点
    删除默认server配置,加入以下配置
server 127.127.1.0 fudge 127.127.1.0 stratum 10
  • controller节点重启ntp服务并加入开机自启
[root@controller ~]# systemctl start ntpd [root@controller ~]# systemctl enable ntpd
  • compute节点执行以下命令
[root@compute ~]# ntpdate controller [root@compute ~]# chkconfig ntpdate on
  1. 重启所有节点服务器
#reboot

安装openstack组件

  1. compute节点时间同步controller节点(重要)
#至少执行两次以下命令,因为第一次有时候偏差较大 [root@compute ~]# ntpdate controller
  1. controller节点安装mysql
[root@controller ~]# iaas-install-mysql.sh
  1. controller节点安装keystone认证服务
[root@controller ~]# iaas-install-keystone.sh
  1. controller节点安装glance镜像服务
[root@controller ~]# iaas-install-glance.sh 5.上传镜像(此步骤也可在Dashboard安装完以后,web页面操作) #加载配置文件 [root@controller ~]# source /etc/keystone/admin-openrc.sh #创建镜像 [root@controller ~]# glance image-create --name "CentOS7.0" --disk-format qcow2 --container-format bare --progress < /opt/images/centos_7-x86_64_xiandian.qcow2
  1. 所有节点安装Nova计算服务
#controller [root@controller ~]# iaas-install-nova-controller.sh #compute [root@compute ~]# iaas-install-nova-compute.sh
  1. 所有节点安装neutron网络服务
#controller [root@controller ~]# iaas-install-neutron-controller.sh #compute [root@compute ~]# iaas-install-neutron-compute.sh
  1. 根据题目要求,选择指定网络进行安装
#我们以gre网络为例,其余只需要执行对应脚本即可 #controller [root@controller ~]# iaas-install-neutron-controller-gre.sh #compute [root@compute ~]# iaas-install-neutron-compute-gre.sh
  1. controller节点安装Dashboard控制面板服务
[root@controller ~]# iaas-install-neutron-dashboard.sh
  1. 浏览器访问controller节点ip,登录
  • 创建网络和云主机,相关参数按题目填写即可 (1)管理员 → 网络 → 创建网络(ext-net) → 创建子网(ext-subnet) (2)项目 → 网络 → 路由 → 新建路由 → 添加网关和内网接口 (3)项目 → 计算 → 访问安全 → 管理规则 → 添加规则(ICMP、TCP、UDP) (4)项目 → 计算 → 云主机 → 创建云主机 → 绑定浮动IP

3.iaas云平台运维

此题只需知道相关查询命令,即可轻松过关。 大致流程:
  • 提前上传本题提供的镜像
  • 按题目要求使用镜像创建好云主机
  • 运行云主机
  • 使用ssh命令行软件连接云主机
  • 执行相关查询

4.Docker容器部署

以下内容命令相关操作大多与前文类似,其余为可视化操作,故简略说明其主要步骤
  1. 使用相关镜像按要求配置创建虚拟机(Registry、Server、Client),并开机
  2. 上传PaaS镜像中的Docker到controller,挂载并放进ftp
  3. 配置所有虚拟机节点的yum源,使用ftp指向controller
[centos] name=centos baseurl=ftp://192.168.100.10/centos gpgcheck=0 enabled=1 [docker] name=docker baseurl=ftp://192.168.100.10/docker gpgcheck=0 enabled=1
  1. 上传PaaS镜像中的Docker_images和install.sh到Server节点
  2. 执行chmod +x install.sh赋予权限,执行./install.sh
  3. 完毕以后,使用浏览器访问Server节点ip,即可看到Rancher面板
  4. 设置登录账号,添加主机
  5. 按题目要求安装某个Docker软件即可

5.Docker容器运维

本题为docker常用命令的考察,例如查询所有容器列表(#docekr ps -a)、查询镜像列表(#docker images)等等,只需要连接到Server云主机进行相关操作即可

6.大数据+安卓

因缺失文件,所以没有进行相关研究。