Openstack安装部署_rhel7,【面试总结】

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注软件测试)
img

正文

provider = fernet                             //在[token]部分,配置Fernet UUID令牌的提供者。

4、初始化身份认证服务的数据库:
[root@server1 ~]# su -s /bin/sh -c “keystone-manage db_sync” keystone

5、初始化Fernet keys:

[root@server1 ~]# keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

配置 Apache HTTP 服务器

1、编辑/etc/httpd/conf/httpd.conf 文件,配置ServerName 选项为控制节点:
[root@server1 ~]# vim /etc/httpd/conf/httpd.conf
ServerName controller

2、用下面的内容创建文件 /etc/httpd/conf.d/wsgi-keystone.conf。

[root@server1 ~]# vim /etc/httpd/conf.d/wsgi-keystone.conf
Listen 5000
Listen 35357

<VirtualHost *:5000>
WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
WSGIProcessGroup keystone-public
WSGIScriptAlias / /usr/bin/keystone-wsgi-public
WSGIApplicationGroup %{GLOBAL}
WSGIPassAuthorization On
ErrorLogFormat “%{cu}t %M”
ErrorLog /var/log/httpd/keystone-error.log
CustomLog /var/log/httpd/keystone-access.log combined

<Directory /usr/bin>
Require all granted

<VirtualHost *:35357>
WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
WSGIProcessGroup keystone-admin
WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
WSGIApplicationGroup %{GLOBAL}
WSGIPassAuthorization On
ErrorLogFormat “%{cu}t %M”
ErrorLog /var/log/httpd/keystone-error.log
CustomLog /var/log/httpd/keystone-access.log combined

<Directory /usr/bin>
Require all granted

启动 Apache HTTP 服务:

[root@server1 ~]# systemctl enable httpd.service
[root@server1 ~]# systemctl start httpd.service

创建服务实体和API端点

1、配置认证令牌:

[root@server1 ~]# export OS_TOKEN=29c27f7d00a35bc3380a

2、配置端点URL:
[root@server1 ~]# export OS_URL=http://controller:35357/v3

3、配置认证 API 版本:
[root@server1 ~]# export OS_IDENTITY_API_VERSION=3

创建服务实体和API端点

1、在你的Openstack环境中,认证服务管理服务目录。服务使用这个目录来决定您的环境中可用的服务。

创建服务实体和身份认证服务:

[root@server1 ~]# openstack service create --name keystone --description “OpenStack Identity” identity

创建认证服务的 API 端点:
[root@server1 ~]# openstack endpoint create --region RegionOne identity public http://controller:5000/v3
[root@server1 ~]# openstack endpoint create --region RegionOne identity admin http://controller:35357/v3

创建域、项目、用户和角色

1.创建域default
[root@server1 ~]# openstack domain create --description “Default Domain” default
2.在你的环境中,为进行管理操作,创建管理的项目、用户和角色:

创建 admin 项目
[root@server1 ~]# openstack project create --domain default --description “Admin Project” admin
创建 admin 用户
[root@server1 ~]# openstack user create --domain default --password-prompt admin
创建 admin 角色
[root@server1 ~]# openstack role create admin

添加admin 角色到 admin 项目和用户上:

[root@server1 ~]# $ openstack role add --project admin --user admin admin          //这个命令执行后没有输出。

3.本指南使用一个你添加到你的环境中每个服务包含独有用户的service 项目。创建service项目:

[root@server1 ~]# openstack project create --domain default  --description “Service Project” service

4.常规(非管理)任务应该使用无特权的项目和用户。作为例子,本指南创建 demo 项目和用户。

创建demo 项目:

[root@server1 ~]# penstack project create --domain default --description “Demo Project” demo

//当为这个项目创建额外用户时,不要重复这一步。

创建demo 用户:

[root@server1 ~]#  openstack user create --domain default --password-prompt demo

创建 user 角色:

[root@server1 ~]#  openstack role create user

添加 user角色到 demo 项目和用户:

[root@server1 ~]# openstack role add --project demo --user demo user

//你可以重复此过程来创建额外的项目和用户。

验证操作

//在控制节点上执行这些命令。

1.重置OS\_TOKENOS\_URL 环境变量:
unset OS_TOKEN OS_URL

2.作为 admin 用户,请求认证令牌:

[root@server1 ~]# 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           //这个命令使用admin用户的密码。

3.作为demo 用户,请求认证令牌:

[root@server1 ~]# 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

//这个命令使用demo 用户的密码和API端口5000,这样只会允许对身份认证服务API的常规(非管理)访问。

创建 OpenStack 客户端环境脚本

创建脚本

1.编辑文件 admin-openrc 并添加如下内容:
[root@server1 ~]# vim admin-openrc                           //将 ADMIN_PASS 为在认证服务中为 admin 用户选择的密码,我的为westos

export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=westos
export OS_AUTH_URL=http://controller:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

2.编辑文件 demo-openrc 并添加如下内容:

[root@server1 ~]# vim demo-openrc                  //将 DEMO_PASS 为在认证服务中为 demo 用户选择的密码,我这里也是westos

export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=demo
export OS_USERNAME=demo
export OS_PASSWORD=westos
export OS_AUTH_URL=http://controller:5000/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

使用脚本

1.加载admin-openrc文件来身份认证服务的环境变量位置和admin项目和用户证书:

[root@server1 ~]# . admin-openrc

2.请求认证令牌:

[root@server1 ~]# openstack token issue

镜像服务

OpenStack镜像服务包括以下组件:

glance-api   :接收镜像API的调用,诸如镜像发现、恢复、存储。

glance-registry   :存储、处理和恢复镜像的元数据,元数据包括项诸如大小和类型。

数据库  :存放镜像元数据,用户是可以依据个人喜好选择数据库的,多数的部署使用MySQL或SQLite。

镜像文件的存储仓库:支持多种类型的仓库,它们有普通文件系统、对象存储、RADOS块设备、HTTP、以及亚马逊S3。记住,其中一些仓库仅支持只读方式使用。

元数据定义服务:通用的API,是用于为厂商,管理员,服务,以及用户自定义元数据。这种元数据可用于不同的资源,例如镜像,工件,卷,配额以及集合。一个定义包括了新属性的键,描述,约束以及可以与之关联的资源的类型。

安装和配置

安装和配置镜像服务之前,你必须创建创建一个数据库、服务凭证和API端点。

1.完成下面的步骤以创建数据库:

用数据库连接客户端以 root 用户连接到数据库服务器:

[root@server1 ~]# mysql -u root -p

创建 glance 数据库:

glance数据库授予恰当的权限:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO ‘glance’@‘localhost’ IDENTIFIED BY ‘glance’;
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON glance.* TO ‘glance’@‘%’ IDENTIFIED BY ‘glance’;

退出数据库客户端。

2.获得 admin 凭证来获取只有管理员能执行的命令的访问权限:

[root@server1 ~]# . admin-openrc

3.要创建服务证书,完成这些步骤:

创建 glance 用户:

[root@server1 ~]# openstack user create --domain default --password-prompt glance

添加 admin 角色到 glance 用户和 service 项目上。

[root@server1 ~]# openstack role add --project service --user glance admin              //这个命令执行后没有输出。

创建glance服务实体:

[root@server1 ~]# openstack service create --name glance --description “OpenStack Image” image

创建镜像服务的 API 端点:

[root@server1 ~]# openstack endpoint create --region RegionOne image public http://controller:9292

[root@server1 ~]# openstack endpoint create --region RegionOne image internal http://controller:9292

[root@server1 ~]# openstack endpoint create --region RegionOne  image admin http://controller:9292

安全并配置组件

1.安装软件包:

[root@server1 ~]# yum install openstack-glance

2.编辑文件 /etc/glance/glance-api.conf 并完成如下动作:

[root@server1 ~]# vim /etc/glance/glance-api.conf

在 [database] 部分,配置数据库访问:

[database]
connection = mysql+pymysql://glance:glance@controller/glance

在 [keystone_authtoken] 和 [paste_deploy] 部分,配置认证服务访问:

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance

[paste_deploy]
flavor = keystone

//GLANCE_PASS 为认证服务中 glance 用户选择的密码。

//在 [keystone_authtoken] 中注释或者删除其他选项。

在 [glance_store] 部分,配置本地文件系统存储和镜像文件位置

[glance_store]
stores = file,http
default_store = file
filesystem_store_datadir = /var/lib/glance/images/

3.编辑文件 []( )/etc/glance/glance-registry.conf并完成如下动作:

[root@server1 ~]# vim /etc/glance/glance-registry.conf

在 [database] 部分,配置数据库访问:

[database]
connection = mysql+pymysql://glance:glance@controller/glance

在 [keystone_authtoken] 和 [paste_deploy] 部分,配置认证服务访问:

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = glance
password = glance

[paste_deploy]
flavor = keystone

//密码为镜像服务选择的密码。

4.写入镜像服务数据库

[root@server1 ~]# su -s /bin/sh -c “glance-manage db_sync” glance

查看 glance 数据库是否有数据已经同步:

[root@server1 ~]# mysql -uroot -p

MariaDB [(none)]> use glance;

MariaDB [glance]> show tables;

完成安装

启动镜像服务:

[root@server1 ~]# systemctl enable openstack-glance-api.service openstack-glance-registry.service

[root@server1 ~]# systemctl start openstack-glance-api.service openstack-glance-registry.service

验证操作

在控制节点上执行这些命令

1.获得 admin 凭证来获取只有管理员能执行的命令的访问权限:

[root@server1 ~]# . admin-openrc
[root@server1 ~]# wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img
-bash: wget: command not found                          //没有此命令

如果您的发行版里没有包含wget,请安装它
[root@server1 ~]# yum install -y wget          //进行下载

2.下载源镜像:

[root@server1 ~]# wget http://download.cirros-cloud.net/0.3.4/cirros-0.3.4-x86_64-disk.img

该过程下载有点慢

3.使用 QCOW2 磁盘格式, bare 容器格式上传镜像到镜像服务并设置公共可见,这样所有的项目都可以访问它:

[root@server1 ~]# openstack image create “cirros” --file cirros-0.3.4-x86_64-disk.img --disk-format qcow2 --container-format bare --public

4.确认镜像的上传并验证属性:

[root@server1 ~]# openstack image list

计算服务概览

OpenStack计算服务由下列组件所构成:

nova-api 服务

nova-api-metadata 服务

[]( )nova-compute服务

[]( )nova-scheduler服务

[]( )nova-conductor模块

[]( )nova-cert模块

nova-network worker 守护进程

nova-consoleauth 守护进程

nova-novncproxy 守护进程

nova-spicehtml5proxy 守护进程

nova-xvpvncproxy 守护进程

nova-cert 守护进程

[]( )nova客户端

队列

SQL数据库

安装并配置控制节点

这个部分将描述如何在控制节点上安装和配置 Compute 服务

1.为了创建数据库,必须完成这些步骤:

用数据库连接客户端以 root 用户连接到数据库服务器:

[root@server1 ~]# mysql -u root -p

创建 nova_api 和 nova 数据库:

MariaDB [(none)]> CREATE DATABASE nova_api;

MariaDB [(none)]> CREATE DATABASE nova;

对数据库进行正确的授权:

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova’@‘localhost’
-> IDENTIFIED BY ‘nova’;

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova’@‘%’
-> IDENTIFIED BY ‘nova’;

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@‘localhost’
-> IDENTIFIED BY ‘nova’;

MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@‘%’
-> IDENTIFIED BY ‘nova’;

退出数据库客户端。

2.获得 admin 凭证来获取只有管理员能执行的命令的访问权限:

[root@server1 ~]# . admin-openrc

3.要创建服务证书,完成这些步骤:

创建 nova 用户:

[root@server1 ~]# openstack user create --domain default --password-prompt nova

给 nova 用户添加 admin 角色:

[root@server1 ~]# $ openstack role add --project service --user nova admin

创建 nova 服务实体:

[root@server1 ~]# openstack service create --name nova --description “OpenStack Compute” compute

4.创建 Compute 服务 API 端点 :

[root@server1 ~]# openstack endpoint create --region RegionOne compute public http://controller:8774/v2.1/%(tenant_id)s

[root@server1 ~]# openstack endpoint create --region RegionOne compute internal http://controller:8774/v2.1/%(tenant_id)s

[root@server1 ~]# openstack endpoint create --region RegionOne compute admin http://controller:8774/v2.1/%(tenant_id)s

安全并配置组件

1.安装软件包:

[root@server1 ~]# yum install openstack-nova-api openstack-nova-conductor   openstack-nova-console openstack-nova-novncproxy   openstack-nova-scheduler

2.编辑/etc/nova/nova.conf文件并完成下面的操作:

[root@server1 ~]# vim /etc/nova/nova.conf

[DEFAULT]部分,只启用计算和元数据API:

[DEFAULT]
enabled_apis = osapi_compute,metadata

[api\_database][database]部分,配置数据库的连接:

api_database]
connection = mysql+pymysql://nova:nova@controller/nova_api

[database]
connection = mysql+pymysql://nova:nova@controller/nova

在 “[DEFAULT]” 和 “[oslo_messaging_rabbit]”部分,配置 “RabbitMQ” 消息队列访问:

[DEFAULT]

rpc_backend = rabbit


[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = openstack

[DEFAULT]

auth_strategy = keystone

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
mg.cn/20181130225942248.png)
[oslo_messaging_rabbit]
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = openstack

[DEFAULT]

auth_strategy = keystone

[keystone_authtoken]
auth_uri = http://controller:5000
auth_url = http://controller:35357
memcached_servers = controller:11211
auth_type = password
project_domain_name = default
user_domain_name = default

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-D01667PR-1713148681159)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 27
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值