




已阅读5页,还剩69页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
开源云平台构建与实践课题报告所在班级:15软件云计算1班学生学号: 1515925610 学生姓名: 李明慧 任课老师: 单平平 学生成绩: 目录1.实验环境配置51.1 系统环境51.2 绑定host和关闭防火墙51.3 设置时间同步61.4 安装基础软件61.4.1 升级yum源61.4.2 安装openstack客户端71.4.3 安装openstack服务安全策略81.4.4 安装MariaDB81.4.5 安装RabbitMQ101.4.6 安装Memcached112安装和配置keystone组件122.1创建数据库及管理用户122.2安装并配置组件122.3配置Apache服务142.4 创建域,项目,用户和角色152.5 验证操作162.6 创建 OpenStack 客户端环境脚本172.7 使用脚本183安装和配置glance组件193.1创建数据库及管理用户193. 2 创建服务凭据,完成下列操作:193.3 安装和配置组件203.4启动镜像服务并设置开机自动启动:233.5 镜像测试234 安装和配置nova组件244.1创建数据库及管理用户244.2 执行 admin 凭据脚本254.3 创建服务凭据,并完成下列步骤:254.4 创建计算服务的 API 端点:264.5 创建 Placement 服务用户264.6 将 placement 用户以 admin 角色加入到 service 项目274.7在身份服务的服务目录中,添加 placement服务274.8 创建 Placement API 服务端点274.9 安装和配置控制节点284.10 安装和配置计算节点324.11 验证操作354.11.1在控制节点进行下列操作:354.11.2 在控制节点上发现计算节点:375 安装和配置neutron组件375.1创建数据库及管理用户375.2 安装和配置控制节点405.3 完成安装455.4 安装和配置计算节点465.5修改 VMware workstation 虚拟机和系统配置495.6 创建 provider 网络505.7 创建租户网络515.8创建路由器525.9 验证操作526 安装和配置horizion组件536.1安装和配置组件546.2完成安装556.3验证操作567 创建一个instance实例567.1 使用demo身份登录openstack567.2 点击项目-计算-实例-创建实例577.3 等待实例孵化成功587.4 点击实例名称demo_test-控制台588 安装和配置swift588.1执行 admin 凭据脚本588.2创建服务凭据,并完成下列步骤:588.3 创建对象存储服务的API598.4 安装和配置服务组件608.5 安装配置存储节点组件648.6 创建初始rings688.6.1创建账户环688.6.2 创建容器环698.6.3 创建对象环708.6.4 拷贝文件708.7 配置哈希值和默认存储策略718.8 验证操作741.实验环境配置1.1 系统环境centos7.0系统3台,主机名分别为:controller,compute,具体看图1-1角色主机名IP配置控制节点controller373G/20G计算节点compute381G/20G存储节点1swift391G/40G存储节点2Swift2401G/40G图1-1-11.2 绑定host和关闭防火墙分别在controller和compute节点执行以下操作#vi /etc/hosts图1-2-1#systemctl stop firewalld.service #systemctl disable firewalld.service #sed -i /SELINUX/s/enforcing/disabled/g /etc/selinux/config#sed -i /SELINUX/s/enforcing/disabled/g /etc/sysconfig/selinux#setenforce 0 图1-2-21.3 设置时间同步分别在controller和compute节点执行以下操作# vi /etc/chrony.conf图1-3-1启动 chronyd 服务,并设置开机自动启动。# systemctl enable chronyd.service# systemctl start chronyd.service图1-3-21.4 安装基础软件1.4.1-1.4.3分别在controller和compute节点执行1.4.1 升级yum源#yum upgrade -y图1-4-11.4.2 安装openstack客户端# yum install centos-release-openstack-ocata图1-4-2-1# yum install python-openstackclient -y图1-4-2-21.4.3 安装openstack服务安全策略# yum install openstack-selinux -y图1-4-31.4.4 安装MariaDB# yum install mariadb mariadb-server python2-PyMySQL -y图1-4-4-1# vi /etc/f.d/f(1)创建mysqld小节,设置 bind-address 配置项为管理节点的管理 IP 地址。添加其他有用的配置项,以及支持 UTF-8字符集mysqldbind-address = 37default-storage-engine = innodbinnodb_file_per_table = onmax_connections = 4096collation-server = utf8_general_cicharacter-set-server = utf8图1-4-4-2(2)启动数据库服务并设置开机自动启动# systemctl enable mariadb.service# systemctl start mariadb.service图1-4-4-3(3)执行 mysql_secure_installation,设置数据库管理员 root用户的密码。# mysql_secure_installation图1-4-4-41.4.5 安装RabbitMQ# yum install rabbitmq-server -y图1-4-4-5(1)启动消息队列服务并设置开机自动启动。# systemctl enable rabbitmq-server.service# systemctl start rabbitmq-server.service图1-4-4-6 (2)添加 openstack 用户# rabbitmqctl add_user openstack 123456123456为openstack账户的密码(3)为 openstack 用户赋予读和写访问权限。# rabbitmqctl set_permissions openstack .* .* .*图1-4-4-71.4.6 安装Memcached# yum install memcached python-memcached -y图1-4-4-8(1) 编辑/etc/sysconfig/memcached 文件,为使其他节点可以访问。编辑现有配置项:OPTIONS=-l ,:1更改为OPTIONS=-l ,:1,controller# vi /etc/sysconfig/memcached图1-4-4-9(2)启动 Memcached 服务并设置开机自动启动。# systemctl enable memcached.service# systemctl start memcached.service图1-4-4-102安装和配置keystone组件2.1创建数据库及管理用户(1)登陆mariadb数据库# mysql -u root -p123456(2) 创建 keystone 数据库MariaDB (none) CREATE DATABASE keystone;(3)授予数据库用户 keystone 访问 keystone 数据库的权限。MariaDB (none) GRANT ALL PRIVILEGES ON keystone.* TO keystonelocalhost IDENTIFIED BY 123456;MariaDB (none) GRANT ALL PRIVILEGES ON keystone.* TO keystone% IDENTIFIED BY 123456;图2-1-12.2安装并配置组件(1)安装软件包# yum install openstack-keystone httpd mod_wsgi -y图2-2-1(2)编辑/etc/keystone/keystone.conf 文件并完成下列操作:A. 在database小节,配置数据库访问:database# .connection = mysql+pymysql:/keystone:123456controller/keystoneB. 在token小节,配置使用 Fernet 技术提供令牌。token# .provider = fernet(3) 初始化身份服务数据库:# su -s /bin/sh -c keystone-manage db_sync keystone图2-2-2(4) 初始化 Fernet key 仓库:# keystone-manage fernet_setup -keystone-user keystone -keystone-group keystone# keystone-manage credential_setup -keystone-user keystone -keystone-group keystone图2-2-3(5) 引导身份服务,创建管理员。# keystone-manage bootstrap -bootstrap-password 123456 -bootstrap-admin-url http:/controller:35357/v3/ -bootstrap-internal-url http:/controller:5000/v3/ -bootstrap-public-url http:/controller:5000/v3/ -bootstrap-region-id RegionOne图2-2-42.3配置Apache服务(1) 编辑/etc/httpd/conf/httpd.conf 文件并配置 ServerName 配置项为管理节点的主机名:ServerName controller(2) 创建到文件/usr/share/keystone/wsgi-keystone.conf 的链接:# ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/图2-3-1完成安装1. 启动 Apache HTTP 服务并设置开机自动启动:# systemctl enable httpd.service# systemctl start httpd.service2. 配置管理账号# export OS_USERNAME=admin# export OS_PASSWORD=123456# export OS_PROJECT_NAME=admin# export OS_USER_DOMAIN_NAME=Default# export OS_PROJECT_DOMAIN_NAME=Default# export OS_AUTH_URL=http:/controller:35357/v3# export OS_IDENTITY_API_VERSION=3图2-3-22.4 创建域,项目,用户和角色身份服务为每一个 OpenStack 服务提供认证服务。认证服务使用一个 domain(域),projects(项目(tenants(租户),users(用户)和roles(角色)的组合。(1) 在 openstack 环境中创建一个包含其他服务唯一账号的 service 项目,创建 service 项目:# openstack project create -domain default -description Service Project service图2-4-1(2)日常(非管理员)任务一般使用一个非特权项目和用户。在本手册中,创建 demo 项目和用户:A. 创建 demo 项目:# openstack project create -domain default -description Demo Project demo图2-4-2B. 创建 demo 用户:# openstack user create -domain default -password-prompt demo图2-4-3C. 创建 user 角色:# openstack role create userD. 添加 user 角色到 demo 项目和用户:# openstack role add -project demo -user demo user图2-4-42.5 验证操作(1) 由于安全的原因,关闭临时认证令牌机制。编辑/etc/keystone/keystone-paste.ini 文件并移除pipeline:public_api, pipeline:admin_api, 和pipeline:api_v3小节的 admin_token_auth 项。# vi /etc/keystone/keystone-paste.ini图2-5-1(2) 删除临时环境变量 OS_AUTH_URL 和 OS_PASSWORD:# unset OS_AUTH_URL OS_PASSWORD(3)使用 admin 用户,请求认证令牌# openstack -os-auth-url http:/controller:35357/v3 -os-project-domain-name default -os-user-domain-name default -os-project-name admin -os-username admin token issue图2-5-2(4) 使用 demo 用户,请求认证令牌:# openstack -os-auth-url http:/controller:5000/v3 -os-project-domain-name default -os-user-domain-name default -os-project-name demo -os-username demo token issue图2-5-32.6 创建 OpenStack 客户端环境脚本为 admin 和 demo 项目和用户创建客户端环境脚本。本手册后续部分将使用这些脚本加载用户凭据。(1)编辑 admin-openrc 文件,并添加下列内容:export OS_PROJECT_DOMAIN_NAME=Defaultexport OS_USER_DOMAIN_NAME=Defaultexport OS_PROJECT_NAME=adminexport OS_USERNAME=adminexport OS_PASSWORD=123456export OS_AUTH_URL=http:/controller:35357/v3export OS_IDENTITY_API_VERSION=3export OS_IMAGE_API_VERSION=2图2-6-1(2) 编辑 demo-openrc 文件,并添加下列内容:export OS_PROJECT_DOMAIN_NAME=Defaultexport OS_USER_DOMAIN_NAME=Defaultexport OS_PROJECT_NAME=demoexport OS_USERNAME=demoexport OS_PASSWORD=123456export OS_AUTH_URL=http:/controller:5000/v3export OS_IDENTITY_API_VERSION=3export OS_IMAGE_API_VERSION=2图2-6-22.7 使用脚本(1) 加载 admin-openrc 文件用来填充身份服务中 admin 项目和用户的用户凭据到环境变量:# . admin-openrc(2) 请求认证令牌# openstack token issue图2-7-13安装和配置glance组件3.1创建数据库及管理用户(1)登陆mariadb数据库# mysql -u root -p123456(2) 创建 glance 数据库MariaDB (none) CREATE DATABASE glance;(3)授予数据库用户 glance 访问 glance 数据库的权限。MariaDB (none) GRANT ALL PRIVILEGES ON glance.* TO glancelocalhost IDENTIFIED BY 123456;MariaDB (none) GRANT ALL PRIVILEGES ON glance.* TO glance% IDENTIFIED BY 123456;图3-1-13. 2 创建服务凭据,完成下列操作:(1) 创建 glance 用户# openstack user create -domain default -password-prompt glance(2) 添加 admin 角色到 glance 用户和 service 项目# openstack role add -project service -user glance admin(3) 创建 glance 服务实体:# openstack service create -name glance -description OpenStack Image image图3-2-1(4)创建镜像服务 API 端点:# openstack endpoint create -region RegionOne image public http:/controller:9292# openstack endpoint create -region RegionOne image internal http:/controller:9292# openstack endpoint create -region RegionOne image admin http:/controller:9292图3-2-23.3 安装和配置组件(1)安装软件包# yum install openstack-glance -y图3-3-1(2) 编辑/etc/glance/glance-api.conf 文件并完成下列操作:A. 在database小节,配置数据库访问:database# .connection = mysql+pymysql:/glance:123456controller/glanceB. 在keystone_authtoken和paste_deploy小节配置身份服务访问信息:keystone_authtoken# .auth_uri = http:/controller:5000auth_url = http:/controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = glancepassword = 123456paste_deploy# .flavor = keystoneC. 在glance_store小节,配置使用本地系统存储和镜像文件存储路径:glance_store# .stores = file,httpdefault_store = filefilesystem_store_datadir = /var/lib/glance/images/(3) 编辑/etc/glance/glance-registry.conf 文件并完成下列操作:A. 在database小节,配置数据库访问:database# .connection = mysql+pymysql:/glance:123456controller/glanceB. 在keystone_authtoken和paste_deploy小节,配置身份服务访问信息:keystone_authtoken# .auth_uri = http:/controller:5000auth_url = http:/controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = glancepassword = 123456paste_deploy# .flavor = keystone替换 GLANCE_DBPASS 为认证服务中 glance 用户的密码。(4)初始化镜像服务数据库# su -s /bin/sh -c glance-manage db_sync glance图3-3-23.4启动镜像服务并设置开机自动启动:# systemctl enable openstack-glance-api.service openstack-glance-registry.service# systemctl start openstack-glance-api.service openstack-glance-registry.service图3-4-13.5 镜像测试使用 CirrOS 镜像确认镜像服务是否安装正常。CirrOS 是一个小型Linux 镜像,可以用来测试你的 OpenStack 环境。(1) 执行 admin 凭据脚本,以便以 admin 身份执行后续命令:# . admin-openrc(2)下载镜像文件# wget /0.3.5/cirros-0.3.5-x86_64-disk.img图3-5-1(3) 上传镜像文件到镜像服务,使用 QCOW2 磁盘格式,bare 容器格式,添加公共可见选项,是所有项目可以访问该镜像:# openstack image create cirros -file cirros-0.3.5-x86_64-disk.img -disk-format qcow2 -container-format bare -public图3-5-2(4) 确认镜像已经上传并验证属性:# openstack image list图3-5-34 安装和配置nova组件4.1创建数据库及管理用户(1)登陆mariadb数据库# mysql -u root -p123456(2)创建 nova_api,nova 和 nova_cell0 数据库:MariaDB (none) CREATE DATABASE nova_api;MariaDB (none) CREATE DATABASE nova;MariaDB (none) CREATE DATABASE nova_cell0;图4-1-1(3) 创建数据库用户 nova,并授予数据库用户 nova 访问 nova_api和 nova 数据库的权限。MariaDB (none) GRANT ALL PRIVILEGES ON nova_api.* TO novalocalhost IDENTIFIED BY 123456;MariaDB (none) GRANT ALL PRIVILEGES ON nova_api.* TO nova% IDENTIFIED BY 123456;MariaDB (none) GRANT ALL PRIVILEGES ON nova.* TO novalocalhost IDENTIFIED BY 123456;MariaDB (none)GRANT ALL PRIVILEGES ON nova.* TO nova% IDENTIFIED BY 123456;MariaDB (none) GRANT ALL PRIVILEGES ON nova_cell0.* TO novalocalhost IDENTIFIED BY 123456;MariaDB (none) GRANT ALL PRIVILEGES ON nova_cell0.* TO nova% IDENTIFIED BY 123456;图4-1-24.2 执行 admin 凭据脚本# . admin-openrc4.3 创建服务凭据,并完成下列步骤:(1) 创建 nova 用户# openstack user create -domain default -password-prompt nova(2)添加 admin 角色到 nova 用户和 service 项目# openstack role add -project service -user nova admin(3)创建 nova 服务实体:# openstack service create -name nova -description OpenStack Compute compute图4-3-14.4 创建计算服务的 API 端点:# openstack endpoint create -region RegionOne compute public http:/controller:8774/v2.1# openstack endpoint create -region RegionOne compute internal http:/controller:8774/v2.1# openstack endpoint create -region RegionOne compute admin http:/controller:8774/v2.1图4-4-14.5 创建 Placement 服务用户# openstack user create -domain default -password-prompt placement4.6 将 placement 用户以 admin 角色加入到 service 项目# openstack role add -project service -user placement admin图4-6-14.7在身份服务的服务目录中,添加 placement服务# openstack service create -name placement -description Placement API placement图4-7-14.8 创建 Placement API 服务端点# openstack endpoint create -region RegionOne placement public http:/controller:8778# openstack endpoint create -region RegionOne placement internal http:/controller:8778# openstack endpoint create -region RegionOne placement admin http:/controller:8778图48-14.9 安装和配置控制节点(1)安装软件包yum install openstack-nova-api openstack-nova-conductor openstack-nova-console openstack-nova-novncproxy openstack-nova-scheduler openstack-nova-placement-api -y图4-9-1(2) 编辑/etc/nova/nova.conf 文件并完成下列操作:A. 在DEFAULT小节,只启用 compute 和 metadata 的 API。DEFAULT# .enabled_apis = osapi_compute,metadataB. 在api_database和database小节,配置数据库访问:api_database# .connection = mysql+pymysql:/nova:123456controller/nova_apidatabase# .connection = mysql+pymysql:/nova:123456controller/nova替换 NOVA_DBPASS 为你的计算服务数据库用户 nova 的密码。C. 在DEFAULT小节配置 RabbitMQ 消息队列访问:DEFAULT# .transport_url = rabbit:/openstack:123456controller替换 RABBIT_PASS 为 RabbitMQ 用户 openstack 的密码。D. 在api和keystone_authtoken小节配置身份服务访问信息:api# .auth_strategy = keystonekeystone_authtoken# .auth_uri = http:/controller:5000auth_url = http:/controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = 123456替换 NOVA_PASS 为身份服务中用户 nova 的密码。E. 在DEFAULT小节,配置 my_ip 配置项为管理节点的管理接口 IP地址。DEFAULT# .my_ip = 37F. 在DEFAULT小节,启用支持 neutron 网络服务:DEFAULT# .use_neutron = Truefirewall_driver = nova.virt.firewall.NoopFirewallDriverG. 在vnc小节,配置 vnc 代理,使用管理节点的管理接口 IP 地址:vncenabled = true# .vncserver_listen = $my_ipvncserver_proxyclient_address = $my_ipnovncproxy_base_url = http:/controller:6080/vnc_auto.htmlH. 在glance小节,配置镜像服务 API 的位置:glance# .api_servers = http:/controller:9292I. 在oslo_concurrency小节,配置锁路径:oslo_concurrency# .lock_path = /var/lib/nova/tmpJ. 在placement小节,配置 placement API 信息:placement# .os_region_name = RegionOneproject_domain_name = Defaultproject_name = serviceauth_type = passworduser_domain_name = Defaultauth_url = http:/controller:35357/v3username = placementpassword = 123456替换 PLACEMENT_PASS 为身份服务中用户 placement 的密码。K. 由于软件包 bug,必须将下列配置添加到文件/etc/httpd/conf.d/00-nova-placement-api.conf 中,以启用对 Placement API的访问。= 2.4Require all grantedIfVersion Order allow,denyAllow from allL. 重启 httpd 服务:# systemctl restart httpd图4-9-2(3) 初始化 nova_api 数据库:# su -s /bin/sh -c nova-manage api_db sync nova(4) 注册 cell0 数据库# su -s /bin/sh -c nova-manage cell_v2 map_cell0 nova(5) 创建 cell1 cell# su -s /bin/sh -c nova-manage cell_v2 create_cell -name=cell1 -verbose nova(6) 初始化 nova 数据库# su -s /bin/sh -c nova-manage db sync nova(7) 验证 nova cell0 和 cell1 已经注册# nova-manage cell_v2 list_cells图4-9-3(8) 启动计算服务并设置开机自动运行:# systemctl enable openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service# systemctl start openstack-nova-api.service openstack-nova-consoleauth.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service4.10 安装和配置计算节点(1)安装软件包# yum install openstack-nova-compute -y图4-10-1(2) 编辑/etc/nova/nova.conf 文件并完成下列操作:A. 在DEFAULT小节,只启用 compute 和 metadata 的 API。DEFAULT# .enabled_apis = osapi_compute,metadataB. 在DEFAULT小节配置 RabbitMQ 消息队列访问:DEFAULT# .transport_url = rabbit:/openstack:123456controllerC. 在api和keystone_authtoken小节配置身份服务访问信息:api# .auth_strategy = keystonekeystone_authtoken# .auth_uri = http:/controller:5000auth_url = http:/controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = 123456D. 在DEFAULT小节,配置 my_ip 配置项为计算节点的管理接口 IP地址。DEFAULT# .my_ip = 38E. 在DEFAULT小节,启用支持 neutron 网络服务:DEFAULT# .use_neutron = Truefirewall_driver = nova.virt.firewall.NoopFirewallDriverF. 在vnc小节,配置 vnc 代理,使用管理节点的管理接口 IP 地址:vncenabled = true# .vncserver_listen = $my_ipvncserver_proxyclient_address = $my_ipnovncproxy_base_url = http:/controller:6080/vnc_auto.htmlG. 在glance小节,配置镜像服务 API 的位置:glance# .api_servers = http:/controller:9292H. 在oslo_concurrency小节,配置锁路径:oslo_concurrency# .lock_path = /var/lib/nova/tmpI. 在placement小节,配置 placement API 信息:placement# .os_region_name = RegionOneproject_domain_name = Defaultproject_name = serviceauth_type = passworduser_domain_name = Defaultauth_url = http:/controller:35357/v3username = placementpassword = 123456J. 探测你的计算节点是否支持硬件虚拟机化:# egrep -c
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辐射健康考试题及答案解析
- 新疆基础常识试题及答案
- 生活污水处理厂建设项目技术方案
- 水库扩建工程社会稳定风险评估报告
- 粮油仓储建设项目经济效益和社会效益分析报告
- 开发区污水处理厂扩容提质项目建设工程方案
- 下载基础写作试题及答案
- 内外科基础试题及答案
- 铜制连接件生产项目初步设计
- 城市快速路建设工程投资计划书
- 建筑工程临水临电施工方案
- 标识牌的制作与安装方案
- 2024安全风险分级管控管理制度
- 2024年西安交通大学中国民族钢琴艺术鉴赏智慧树知到期末考试答案章节答案(自用更新版)
- 机器损坏赔偿协议书的模板
- 林下经济的开发与利用
- 强制性条文监理新版细则
- 2024年共青团入团积极分子考试题库(附答案)
- 质量管理五大工具之一SPC
- (正式版)JBT 14587-2024 胶体铅酸蓄电池 技术规范
- 医疗健康知识科普活动总结
评论
0/150
提交评论