赞
踩
使用提供的用户名密码,登录提供的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
使用提供的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
配置controller节点可以无秘钥访问compute节点,配置完成后,尝试ssh连接compute节点的hostname进行测试。完成后提交controller节点的用户名、密码和IP地址到答题框。
- [root@controller ~]# ssh-keygen
- [root@controller ~]# ssh-copy-id root@compute
- [root@controller ~]# ssh root@compute
在控制节点和计算节点上分别安装openstack-iaas软件包。
在控制节点和计算节点上分别安装openstack-iaas软件包,根据表2配置两个节点脚本文件中的基本变量(配置脚本文件为/etc/openstack/openrc.sh)。
此处自行配置
在控制节点上使用安装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
在控制节点上安装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
在控制节点上安装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
在控制节点和计算节点上分别安装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*
在控制和计算节点上正确安装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
在控制节点上安装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
编写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
在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 #新增,注意前面有两个短横
使用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是否一致,一致即可
使用赛项提供的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
- ...
修改系统配置文件,要求将回写磁盘的时间临时调整为60秒。
Linux系统内存中会存在脏数据,一般系统默认脏数据30秒后会回写磁盘,修改系统配置文件,要求将回写磁盘的时间临时调整为60秒。完成后提交controller节点的用户名、密码和IP地址到答题框。
- [root@controller ~]# vim /etc/sysctl.conf
- vm.dirty_expire_centisecs = 6000 #新增一行,单位毫秒
-
- [root@controller ~]# sysctl -p #生效配置
在OpenStack平台中,修改相关配置文件,将子进程数量相应的配置修改成2。
在OpenStack平台中,glance-api处理请求的子进程数量默认是0,只有一个主进程,请修改相关配置文件,将子进程数量相应的配置修改成2,这样的话有一个主进程加2个子进程来并发处理请求。完成后提交控制节点的用户名、密码和IP地址到答题框。
- [root@controller ~]# vim /etc/glance/glance-api.conf
- #找到这个,去掉注释,将0改2
- workers = 2
使用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仓库
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。