云计算-私有云-私有云服务搭建
私有云
一、私有云服务搭建(10)
IP 地址设置,主机名设置,磁盘分区,文件系统挂载,web、ftp、dns、ntp 等常用linux服务器安装与配置。
OpenStack云平台搭建基本变量进行配置, 安装部署数据库、Keystone 服务、Glance 服务、Nova 服务、Neutron 服务、Dashboad 服务、Cinder 服务、Swift 服务、Heat 服务、Ceph 服务、Ceilometer、manila 和 Zun 服务等 Openstack 相关组件,完成私有云平台的搭建部署
1.集群主机环境配置(1分)
使用提供的用户名密码,登录提供的OpenStack私有云平台,在当前租户下,使用CentOS7.9镜像,创建两台云主机,云主机类型使用4vCPU/12G/100G_50G类型。当前租户下默认存在一张网卡,自行创建第二张网卡并连接至controller和compute节点(第二张网卡的网段为10.10.X.0/24,X为工位号,不需要创建路由)。自行检查安全组策略,以确保网络正常通信与ssh连接,然后按以下要求配置服务器:
①设置控制节点主机名为controller,设置计算节点主机名为compute;
②修改hosts文件将IP地址映射为主机名;
③使用提供的http服务地址,分别设置controller节点和compute节点的yum源文件http.repo;
④配置controller节点可以无秘钥访问compute节点。
(1)controller
# 关闭防火墙systemctl stop firewalldsetenforce 0# 修改主机名hostnamectl set-hostname controllerbash# 添加域名解析cat >> /etc/hosts << EOF192.168.100.100 controller192.168.100.120 computeEOF# 下载centos镜像cp -rfv /etc/keystone/CentOS-7-x86_64-DVD-2009.iso .# 下载iaas镜像# 获取centos镜像内容mkdir /opt/centosmount CentOS-7-x86_64-DVD-2009.iso /mntcp -rvf /mnt/* /opt/centosumount /mnt# 获取iaas镜像内容mkdir /opt/iaasmount chinaskills_cloud_iaas_v2.0.1.iso /mntcp -rvf /mnt/* /opt/iaasumount /mnt# 制作镜像源mkdir /mediamv /etc/yum.repos.d/* /mediavi /etc/yum.repos.d/local.repo[centos]name=\"centos\"baseurl=file:///opt/centos/gpgcheck=0enabled=1[iaas]name=\"iaas\"baseurl=file:///opt/iaas/iaas-repo/gpgcheck=0enabled=1yum clean all && yum repolist# 安装ftp服务,配置yum共享yum -y install vsftpdecho \"anon_root=/opt\" >> /etc/vsftpd/vsftpd.confsystemctl restart vsftpd systemctl enable vsftpd# 配置免密登陆ssh-keygenssh-copy-id compute
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
- 33.
- 34.
- 35.
- 36.
- 37.
- 38.
- 39.
- 40.
- 41.
- 42.
- 43.
- 44.
- 45.
- 46.
- 47.
- 48.
- 49.
- 50.
- 51.
- 52.
- 53.
- 54.
- 55.
- 56.
(2)compute
# 关闭防火墙systemctl stop firewalldsetenforce 0# 修改主机名hostnamectl set-hostname computebash# 添加域名解析cat >> /etc/hosts << EOF192.168.100.100 controller192.168.100.120 computeEOF# 制作镜像源mkdir /mediamv /etc/yum.repos.d/* /mediavi /etc/yum.repos.d/ftp.repo[centos]name=\"centos\"baseurl=ftp://controller/centos/gpgcheck=0enabled=1[iaas]name=\"iaas\"baseurl=ftp://controller/iaas/iaas-repo/gpgcheck=0enabled=1yum clean all && yum repolist
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
2.私有云服务搭建(1分)
在控制节点和计算节点上分别安装openstack-iaas软件包,根据表2配置两个节点脚本文件中的基本变量(配置脚本文件为/etc/openstack/openrc.sh)。
(1)controller
# 下载软件包yum -y install openstack-iaas# 修改opencr.sh脚本vi /etc/openstack/openrc.sh# 开始部署iaas-pre-host.shbash
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
(2)compute
# 磁盘分区fdisk /dev/vdbnp+20Gnp+20Gnp+5Gw# 下载软件包yum -y install openstack-iaas# 修改opencr.sh脚本vi /etc/openstack/openrc.sh# 开始部署iaas-pre-host.shbash
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
3.数据库及消息服务安装与使用(1分)
在控制节点上使用安装Mariadb、RabbitMQ等服务。并进行相关操作。
在controller节点上使用iaas-install-mysql.sh 脚本安装Mariadb、Memcached、RabbitMQ等服务。安装服务完毕后,修改/etc/my.cnf文件,完成下列要求:
①设置数据库支持大小写;
②设置数据库缓存innodb表的索引,数据,插入数据时的缓冲为4G;
③设置数据库的log buffer为64MB;
④设置数据库的redo log大小为256MB;
⑤设置数据库的redo log文件组为2。
⑥修改Memcached的相关配置,将内存占用大小设置为512MB,调整最大连接数参数为2048;
⑦调整Memcached的数据摘要算法(hash)为md5;
(1)controller
# 使用iaas-install-mysql.sh 脚本安装Mariadb、Memcached、RabbitMQ等服务iaas-install-mysql.sh# 修改/etc/my.cnf文件cp /etc/my.cnf /etc/my.cnf.bakvi /etc/my.cnf[mysqld]# 设置数据库支持大小写lower_case_table_names=1# 设置数据库缓存innodb表的索引,数据,插入数据时的缓冲为4Ginnodb_buffer_pool_size=4G# 设置数据库的log buffer为64MBinnodb_log_buffer_size=64M# 设置数据库的redo log大小为256MBinnodb_log_file_size=256M# 设置数据库的redo log文件组为2innodb_log_files_in_group=2# 修改memcached文件cp /etc/sysconfig/memcached /etc/sysconfig/memcached.bakvi /etc/sysconfig/memcached# 调整最大连接数参数为2048MAXCONN=\"2048\"# 将内存占用大小设置为512MBCACHESIZE=\"512\"# 调整 Memcached 的数据摘要算法(hash)为 md5hash_algorithm=md5# 重启服务systemctl restart mariadb memcached
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
4.Keystone服务安装与使用(1分)
在控制节点上安装Keystone服务并创建用户。
在controller节点上使用iaas-install-keystone.sh脚本安装Keystone服务。
然后创建OpenStack域210Demo,其中包含Engineering与Production项目,在域210Demo中创建组Devops,其中需包含以下用户:
①Robert用户是Engineering项目用户(member)与管理员(admin),email地址为:Robert@lab.example.com。
②George用户是Engineering项目用户(member),email地址为:George@lab.example.com。
③William用户是Production项目用户(member)与管理员(admin),email地址为:William@lab.example.com。
④John用户是Production项目用户(member),email地址为:John@lab.example.com 。
(1)controller
# 安装keystone组件iaas-install-keystone.sh# 模拟管理员source /etc/keystone/admin-openrc.sh# 创建域、项目、组openstack domain create 210Demoopenstack group create devops --domain 210Demoopenstack project create Engineering --domain 210Demoopenstack project create Production --domain 210Demo# 创建用户openstack user create Robert --domain 210Demo --project Engineering --email Robert@lab.example.com --password 000000openstack user create George --domain 210Demo --project Engineering --email George@lab.example.com --password 000000openstack user create William --domain 210Demo --project Production --email William@lab.example.com --password 000000openstack user create John --domain 210Demo --project Production --email John@lab.example.com --password 000000# 将用户添加到组中openstack group add user Devops Robert George William John# 创建角色openstack role create memberopenstack role create admin# 为用户添加角色openstack role add --project Engineering --user Robert memberopenstack role add --project Engineering --user Robert adminopenstack role add --project Engineering --user George memberopenstack role add --project Production --user William memberopenstack role add --project Production --user William adminopenstack role add --project Production --user John member
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
- 22.
- 23.
- 24.
- 25.
- 26.
- 27.
- 28.
- 29.
- 30.
- 31.
- 32.
5.Glance安装与使用(1分)
在控制节点上安装Glance 服务。上传镜像至平台,并设置镜像启动的要求参数。
在controller节点上使用iaas-install-glance.sh脚本安装glance服务。然后将cirros-0.5.2-x86_64-disk.img镜像上传到OpenStack平台中,镜像名称为cirros-0.5.2。完成后提交控制节点的用户名、密码和IP地址到答题框。
(1)controller
# 安装glanceiaas-install-glance.sh# 获取镜像# cp -rfv /opt/iaas/images/cirros-0.3.4-x86_64-disk.img .# 上传镜像(因为没有cirros-0.5.2镜像,示例用cirros-0.3.4代替)glance image-create --name cirros-0.3.4 --disk-format qcow2 --container-format bare --progress < cirros-0.3.4-x86_64-disk.img
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
6.Nova安装(1分)
在控制节点和计算节点上分别安装Nova服务。安装完成后,完成Nova相关配置。
在controller节点和compute节点上分别使用iaas-install-placement.sh脚本、iaas-install-nova -controller.sh脚本、iaas-install-nova-compute.sh脚本安装Nova服务。在OpenStack中,修改相关配置文件,修改调度器规则采用缓存调度器,缓存主机信息,提升调度时间。配置完成后提交controller点的用户名、密码和IP地址到答题框。
(1)controller
# 安装novaiaas-install-placement.shiaas-install-nova-controller.sh# 修改调度器规则采用缓存调度器,缓存主机信息,提升调度时间vi /etc/nova/nova.confdriver=caching_scheduler# 重启systemctl restart openstack-nova*
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
(2)compute
# 安装novaiaas-install-nova-compute.sh
- 1.
- 2.
7.Neutron安装(1分)
在控制和计算节点上正确安装Neutron服务。
使用提供的脚本iaas-install-neutron-controller.sh和iaas-install-neutron-compute.sh,在controller和compute节点上安装neutron服务。完成后提交控制节点的用户名、密码和IP地址到答题框。
(1)controller
# 安装neutroniaas-install-neutron-controller.sh
- 1.
- 2.
(2)compute
# 安装neutroniaas-install-neutron-compute.sh
- 1.
- 2.
8.Dashboard安装(1分)
在控制节点上安装Dashboard服务。安装完成后,将Dashboard中的 Django数据修改为存储在文件中。
在controller节点上使用iaas-install-dashboad.sh脚本安装Dashboard服务。安装完成后,修改相关配置文件,完成下列两个操作:
①使得登录Dashboard平台的时候不需要输入域名;
②将Dashboard中的Django数据修改为存储在文件中。
(1)controller
# 安装neutroniaas-install-dashboard.sh# 使得登录Dashboard平台的时候不需要输入域名echo \"OPENSTACK_KEYSTONE_MULTIDOMAIN_SUPPORT = False\" >> /etc/openstack-dashboard/local_settings# 将Dashboard中的Django数据修改为存储在文件中echo \"SESSION_ENGINE = \'django.contrib.sessions.backends.file\'\" >> /etc/openstack-dashboard/local_settings# 重启服务systemctl restart httpd memcached
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
9.Swift安装(1分)
在控制节点和计算节点上分别安装Swift服务。安装完成后,将cirros镜像进行分片存储。
在控制节点和计算节点上分别使用iaas-install-swift-controller.sh和iaas-install-swift-compute.sh脚本安装Swift服务。安装完成后,使用命令创建一个名叫examcontainer的容器,将cirros-0.3.4-x86_64-disk.img镜像上传到examcontainer容器中,并设置分段存放,每一段大小为10M。完成后提交控制节点的用户名、密码和IP地址到答题框。
(1)controller
# 安装swiftiaas-install-swift-controller.sh# 创建examcontainer容器swift post examcontainer# 将cirros-0.3.4-x86_64-disk.img镜像上传到examcontainer容器中,设置分段存放,每一段大小为10Mswift upload examcontainer -S 10M cirros-0.3.4-x86_64-disk.img
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
(2)compute
# 安装swiftiaas-install-swift-compute.sh
- 1.
- 2.
10.Cinder安装与创建硬盘(1分)
在控制节点和计算节点分别安装Cinder服务,请在计算节点,对块存储进行扩容操作。
在控制节点和计算节点分别使用iaas-install-cinder-controller.sh、iaas-install-cinder-compute.sh脚本安装Cinder服务,请在计算节点,对块存储进行扩容操作,即在计算节点再分出一个5G的分区,加入到cinder块存储的后端存储中去。完成后提交计算节点的用户名、密码和IP地址到答题框。
(1)controller
# 安装cinderiaas-install-cinder-controller.sh
- 1.
- 2.
(2)comput
# 安装cinderiaas-install-cinder-compute.sh# 再分出一个5G的分区fdisk /dev/vdbnp+5Gw# 加入到cinder块存储的后端存储中pvcreate /dev/vdb4vgextend cinder-volumes /dev/vdb4vgs
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
安装完成后,使用浏览器访问OpenStack云平台,访问地址为: http://192.168.100.110/dashboard,domain为demo,用户名为admin,密码为000000。
本文由博客一文多发平台 OpenWrite 发布!