2023-2024云计算省赛样题整理2

  私有云部分

1、私有云服务搭建

1.1 基础环境配置(0.2分)

使用提供的用户名密码,登录提供的OpenStack私有云平台,在当前租户下,使用CentOS7.9镜像,创建两台云主机,云主机类型使用4vCPU/12G/100G_50G类型。当前租户下默认存在一张网卡,自行创建第二张网卡并连接至controller和compute节点(第二张网卡的网段为10.10.X.0/24,X为工位号,不需要创建路由)。自行检查安全组策略,以确保网络正常通信与ssh连接,然后按以下要求配置服务器:

(1)设置控制节点主机名为controller,设置计算节点主机名为compute;

(2)修改hosts文件将IP地址映射为主机名;

完成后提交控制节点的用户名、密码和IP地址到答题框。

此处两个节点都需要修改(IP自行配置)!!!

[root@controller ~]# hostnamectl set-hostname controller
[root@compute ~]# hostnamectl set-hostname compute
vi /etc/selinux/config
  SELINUX=disable						# enable修改成disable
vi /etc/hosts
  控制节点IP controller
  计算节点IP compute

检查有没有防火墙跟iptables,有的话需要关闭,没有不用理会
systemctl stop firewalld
systemctl disable firewalld
iptables -F
iptables -X
iptables -Z
service iptables save

1.2 Yum源配置(0.2分)

使用提供的http服务地址,在http服务下,存在centos7.9和iaas的网络yum源,使用该http源作为安装iaas平台的网络源。分别设置controller节点和compute节点的yum源文件http.repo。完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller ~]# mv /etc/yum.repos.d/* /media
[root@controller ~]# vi /etc/yum.repos.d/http.repo
[centos]
name=centos
baseurl=http://IP/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=http://IP/iaas/iaas-repo
gpgcheck=0
enabled=1
[root@controller ~]# scp /etc/yum.repos.d/http.repo root@compute:/etc/yum.repos.d/http.repo

1.3 配置无秘钥ssh(0.2分)

配置controller节点可以无秘钥访问compute节点,配置完成后,尝试ssh连接compute节点的hostname进行测试。完成后提交controller节点的用户名、密码和IP地址到答题框。

[root@controller ~]# ssh-keygen
[root@controller ~]# ssh-copy-id root@compute
[root@controller ~]# ssh root@compute

1.4 基础安装(0.2分)

在控制节点和计算节点上分别安装openstack-iaas软件包。

在控制节点和计算节点上分别安装openstack-iaas软件包,根据表2配置两个节点脚本文件中的基本变量(配置脚本文件为/etc/openstack/openrc.sh)。

此处自行配置

1.5 数据库安装与调优(1分)

在控制节点上使用安装Mariadb、RabbitMQ等服务。并进行相关操作。

在controller节点上使用iaas-install-mysql.sh 脚本安装Mariadb、Memcached、RabbitMQ等服务。安装服务完毕后,修改/etc/my.cnf文件,完成下列要求:

1.设置数据库支持大小写;

2.设置数据库缓存innodb表的索引,数据,插入数据时的缓冲为4G;

3.设置数据库的log buffer为64MB;

4.设置数据库的redo log大小为256MB;

5.设置数据库的redo log文件组为2。

6.修改Memcached的相关配置,将内存占用大小设置为512MB,调整最大连接数参数为2048;

7.调整Memcached的数据摘要算法(hash)为md5;

完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller /]# source /etc/openstack/openrc.sh 
[root@controller /]# iaas-install-mysql.sh 
[root@controller /]# mysql -uroot -p000000
show variables like 'innodb%';			# 查询所需字段
[root@controller /]# vi /etc/my.cnf
# 在[mysqld]字段下添加以下内容
lower_case_table_names = 1
innodb_buffer_pool_size = 4G
innodb_log_buffer_size = 64MB
innodb_log_file_size = 256MB
innodb_log_files_in_group = 2
[root@controller /]# vim /etc/sysconfig/memcached
MAXCONN="2048"  #修改
CACHESIZE="512"  #修改
hash_algorithm=md5  #增加
[root@controller /]# systemctl restart mysqld
[root@controller /]# systemctl restart memcached.service 

1.6 Keystone服务安装与使用(1分)

在控制节点上安装Keystone服务并创建用户。

在controller节点上使用iaas-install-keystone.sh脚本安装Keystone服务。

然后创建OpenStack域210Demo,其中包含Engineering与Production项目,在域210Demo中创建组Devops,其中需包含以下用户:

1.Robert用户是Engineering项目的用户(member)与管理员(admin),email地址为:Robert@lab.example.com

2.George用户是Engineering项目的用户(member),email地址为:George@lab.example.com

3.William用户是Production项目的用户(member)与管理员(admin),email地址为:William@lab.example.com

4.John用户是Production项目的用户(member),email地址为:John@lab.example.com。

完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller /]# iaas-install-keystone.sh
[root@controller /]# source /etc/keystone/admin-openrc.sh
[root@controller /]# openstack domain create 210Demo
[root@controller /]# openstack project create Engineering --domain 210Demo
[root@controller /]# openstack project create Production --domain 210Demo
[root@controller /]# openstack group create Devops --domain 210Demo

[root@controller /]# openstack user create Robert --domain 210Demo --project Engineering --email Robert@lab.example.com
[root@controller /]# openstack user create George --domain 210Demo --project Engineering --email Robert@lab.example.com
[root@controller /]# openstack user create William --domain 210Demo --project Production --email William@lab.example.com
[root@controller /]# openstack user create John --domain 210Demo --project Production --email John@lab.example.com

[root@controller /]# openstack role add member --user Robert --project Engineering
[root@controller /]# openstack role add admin --user Robert --project Engineering
[root@controller /]# openstack role add member --user George --project Engineering
[root@controller /]# openstack role add member --user William --project Production
[root@controller /]# openstack role add admin --user William --project Production
[root@controller /]# openstack role add member --user John --project Production

1.7 Glance安装与使用(1分)

在控制节点上安装Glance 服务。上传镜像至平台,并设置镜像启动的要求参数。

在controller节点上使用iaas-install-glance.sh脚本安装glance服务。然后使用提供的coreos_production_pxe.vmlinuz镜像(该镜像为Ironic Deploy镜像,是一个AWS内核格式的镜像,在OpenStack Ironic裸金属服务时需要用到)上传到OpenStack平台中,命名为deploy-vmlinuz。完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller /]# iaas-install-glance.sh 
[root@controller /]# glance image-create --name deploy-vmlinuz --disk-format qcow2 --container-format bare --file /root/images/coreos_production_pxe.vmlinuz
[root@controller /]# openstack image list

1.8 Nova安装与优化(1分)

在控制节点和计算节点上分别安装Nova服务。安装完成后,完成Nova相关配置。

在controller节点和compute节点上分别使用iaas-install-placement.sh脚本、iaas-install-nova -controller.sh脚本、iaas-install-nova-compute.sh脚本安装Nova服务。在OpenStack中,修改相关配置文件,修改调度器规则采用缓存调度器,缓存主机信息,提升调度时间。配置完成后提交controller点的用户名、密码和IP地址到答题框。

[root@controller /]# iaas-install-placement.sh 
[root@controller /]# iaas-install-nova-controller

[root@compute ~]# iaas-install-nova-compute.sh
[root@controller /]# vim /etc/nova/nova.conf 
driver=simple_scheduler		# 配置文件中有这个字段,查找后添加即可
[root@controller /]# systemctl restart openstack-nova*

1.9 Neutron安装(0.5分)

在控制和计算节点上正确安装Neutron服务。

使用提供的脚本iaas-install-neutron-controller.sh和iaas-install-neutron-compute.sh,在controller和compute节点上安装neutron服务。完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller /]# iaas-install-neutron-controller.sh
[root@compute ~]# iaas-install-neutron-compute.sh 

1.10 Dashboard安装(0.5分)

在控制节点上安装Dashboard服务。安装完成后,将Dashboard中的 Django数据修改为存储在文件中。

在controller节点上使用iaas-install-dashboad.sh脚本安装Dashboard服务。安装完成后,修改相关配置文件,完成下列两个操作:

1.使得登录Dashboard平台的时候不需要输入域名;

2.将Dashboard中的Django数据修改为存储在文件中。

完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller ~]# iaas-install-dashboard.sh
[root@controller ~]# vim /etc/openstack-dashboard/local_settings
SESSION_ENGINE = 'django.contrib.sessions.backends.file'		# 最后改为file
OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = False					# Ture改为False
[root@controller ~]# systemctl restart httpd memcached.service 

2、私有云服务运维

2.1 Heat编排-创建用户(3分)

编写Heat模板create_user.yaml,创建名为heat-user的用户。

使用自己搭建的OpenStack私有云平台,使用heat编写摸板(heat_template_version: 2016-04-08)创建名为”chinaskills”的domain,在此domain下创建名为beijing_group的租户,在此租户下创建名为cloud的用户,将此文件命名及保存在/root/user_create.yml,完成后提交controller点的用户名、密码和IP地址到答题框。(竞赛系统会执行yaml文件,请确保执行的环境)

[root@controller ~]# vim /root/user_create.yml
heat_template_version: 2016-04-08
resources:
  chinaskills:
    type: OS::Keystone::Domain
    properties:
      name: "chinaskills"
  beijing_group:
    type: OS::Keystone::Project
    properties:
      name: "beijing_group"
      domain: { get_resource: chinaskills }
  cloud:
    type: OS::Keystone::User
    properties:
      name: "cloud"
      domain: { get_resource: chinaskills }
      default_project: { get_resource: beijing_group }

[root@controller ~]# openstack stack create -t /root/user_create.yml

2.2 KVM优化(3分)

在OpenStack平台上修改相关配置文件,启用-device virtio-net-pci in kvm。

在自行搭建的OpenStack私有云平台或赛项提供的all-in-one平台上,修改相关配置文件,启用-device virtio-net-pci in kvm,配置完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller ~]# vim /etc/nova/nova.conf
--libvirt_use_virtio_for_bridges=true  #新增,注意前面有两个短横

2.3 NFS对接Glance后端存储(3分)

使用OpenStack私有云平台,创建一台云主机,安装NFS服务,然后对接Glance后端存储。

使用赛项提供的OpenStack私有云平台,创建一台云主机(镜像使用CentOS7.9,flavor使用带临时磁盘50G的),配置该主机为nfs的server端,将该云主机中的50G磁盘通过/mnt/test目录进行共享(目录不存在可自行创建)。然后配置controller节点为nfs的client端,要求将/mnt/test目录作为glance后端存储的挂载目录。配置完成后提交controller控制节点的用户名、密码和IP地址到答题框。

[nfs]
确认有安装这两个包
[root@nfs-server ~]# rpm -qa | grep rpcbind
rpcbind-0.2.0-49.el7.x86_64
[root@nfs-server ~]# rpm -qa | grep nfs-utils
nfs-utils-1.3.0-0.68.el7.x86_64

[root@nfs-server ~]# mkdir /mnt/test
[root@nfs-server ~]# vi /etc/exports
/mnt/test *(rw,no_root_squash)
保存退出

[root@nfs-server ~]# exportfs -r  #生效配置
[root@nfs-server ~]# systemctl start rpcbind && systemctl start nfs
[root@nfs-server ~]# showmount -e 10.26.21.24  #nfs端ip

[controller]
确认有安装nfs
[root@controller ~]# rpm -qa | grep nfs-utils
nfs-utils-1.3.0-0.68.el7.x86_64
[root@controller ~]# mount -t nfs 10.26.21.24:/mnt/test /var/lib/glance/images/
[root@controller ~]# df -h  #查看挂载状态
[root@controller ~]# cd /var/lib/glance/images
[root@controller ~]# chown glance:glance images/

[root@controller ~]# glance image-create --name cirros --disk-format qcow2 --container-format bare --file cirros-0.3.4-x86_64-disk.img  #上传测试镜像
[root@controller ~]# ll /var/lib/glance/images/
total 12980
-rw-r----- 1 glance glance 13287936 Jan  2 12:41 981b12bd-1090-4122-8787-5085ae6fc8f4

[nfs]
[root@nfs-server ~]# ll /mnt/test
total 12980
-rw-r-----. 1 161 161 13287936 Jan  2 12:41 981b12bd-1090-4122-8787-5085ae6fc8f4
#查看两个镜像id是否一致,一致即可

2.4 Redis主从(3分)

使用赛项提供的OpenStack私有云平台,创建两台云主机,配置为redis的主从架构。

使用赛项提供的OpenStack私有云平台,申请两台CentOS7.9系统的云主机,使用提供的http源,在两个节点安装redis服务并启动,配置redis的访问需要密码,密码设置为123456。然后将这两个redis节点配置为redis的主从架构。配置完成后提交redis主节点的用户名、密码和IP地址到答题框。

[主/从]
vim /etc/redis.conf  #两个节点都要完成
bind 0.0.0.0  #将127.0.0.1改成0.0.0.0
requirpass 123456  #新增

[从:10.26.17.49]
在上面配置的基础上从库继续新增两行
slaveof 10.26.21.47 6379  #主库ip
masterauth 123456  #主库密码

[root@slave ~]# redis-server redis.conf &  #加载redis配置文件并后台运行
[root@slave ~]# redis-cli -h 10.26.17.49
10.26.17.49:6379> auth 123456
10.26.17.49:6379> info replication
# Replication
role:slave
master_host:10.26.24.47
...

[主:10.26.24.47]
[root@master ~]# redis-server redis.conf &  #加载redis配置文件并后台运行
[root@master ~]# redis-cli -h 10.26.21.47
10.26.21.47:6379> auth 123456
10.26.21.47:6379> info replication
# Replication
role:master
connected_slaves:1
...

2.5 Linux系统调优-脏数据回写(3分)

修改系统配置文件,要求将回写磁盘的时间临时调整为60秒。

Linux系统内存中会存在脏数据,一般系统默认脏数据30秒后会回写磁盘,修改系统配置文件,要求将回写磁盘的时间临时调整为60秒。完成后提交controller节点的用户名、密码和IP地址到答题框。

[root@controller ~]# vim /etc/sysctl.conf
vm.dirty_expire_centisecs = 6000  #新增一行,单位毫秒

[root@controller ~]# sysctl -p  #生效配置

2.6 Glance调优(3分)

在OpenStack平台中,修改相关配置文件,将子进程数量相应的配置修改成2。

在OpenStack平台中,glance-api处理请求的子进程数量默认是0,只有一个主进程,请修改相关配置文件,将子进程数量相应的配置修改成2,这样的话有一个主进程加2个子进程来并发处理请求。完成后提交控制节点的用户名、密码和IP地址到答题框。

[root@controller ~]# vim /etc/glance/glance-api.conf
#找到这个,去掉注释,将0改2
workers = 2

容器云部分

容器云服务搭建

4.1 部署容器云平台

使用OpenStack私有云平台创建两台云主机,云主机类型使用4vCPU/12G/100G类型,分别作为Kubernetes集群的Master节点和node节点,然后完成Kubernetes集群的部署,并完成Istio服务网格、KubeVirt虚拟化和Harbor镜像仓库的部署。

完成后提交Master节点的用户名、密码和IP到答题框。

[root@localhost ~]# mount -o loop chinaskills_cloud_paas_v2.0.2.iso /mnt/  #挂载
[root@localhost ~]# cp -rfv /mnt/* /opt/ 
[root@localhost ~]# umount /mnt/

[root@localhost ~]# mv /opt/kubeeasy /usr/bin/kubeeasy  #转移二进制命令文件

[root@localhost ~]# kubeeasy install depend \   #安装依赖包
--host 10.24.2.10,10.24.2.11 \ 
--user root \ 
--password 000000 \ 
--offline-file /opt/dependencies/base-rpms.tar.gz

[root@localhost ~]# kubeeasy check ssh \   #连通性测试
--host 10.24.2.10,10.24.2.11 \ 
--user root \ 
--password 000000

[root@localhost ~]# kubeeasy create ssh-keygen \   #配置免密钥
--master 10.24.2.10 \ 
--worker 10.24.2.11 \ 
--user root --password 000000

[root@localhost ~]# kubeeasy install kubernetes \   #安装kubernetes集群
--master 10.24.2.10 \ 
--worker 10.24.2.11 \ 
--user root \ 
--password 000000 \ 
--version 1.22.1 \ 
--offline-file /opt/kubernetes.tar.gz

[root@k8s-master-node1 ~]# kubectl cluster-info  #查看集群状态
Kubernetes control plane is running at https://apiserver.cluster.local:6443 
CoreDNS is running at 
https://apiserver.cluster.local:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy 
To further debug and diagnose cluster problems, use 'kubectl cluster-info dump'.

[root@k8s-master-node1 ~]# kubeeasy add --virt kubevirt  #安装kubevirt集群

[root@k8s-master-node1 ~]# kubeeasy add --istio istio  #安装istio服务网格环境

[root@k8s-master-node1 ~]# kubeeasy add --registry harbor  #安装harbor仓库

  • 61
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值