安装openstack服务安装

本文涉及的产品
对象存储 OSS,20GB 3个月
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介:

所有openstack服务的安装指南链接:https://docs.openstack.org/pike/install/

最小化部署,需要按照下面指定的顺序安装以下服务:

 Identity service – keystone installation for Pike

 Image service – glance installation for Pike

 Compute service – nova installation for Pike

 Networking service – neutron installation for Pike

在安装了最小部署服务之后,我们建议安装以下组件:

 Dashboard – horizon installation for Pike

 Block Storage service – cinder installation for Pike

Keystone安装指南

  OpenStack认证管理服务提供一个单点集成身份验证、授权和服务目录服务。其他OpenStack服务使用认证服务作为一个通用统一的API。此外,服务提供用户的信息,但不包括在OpenStack(LDAP服务)可以集成到一个现有的基础设施。为了从认证服务中受益,其他OpenStack服务需要与身份认证服务协同工作。当一个OpenStack服务从用户那里接收一个请求,它检查与身份认证服务用户是否被授权请求。身份服务包含这些组件:

Server

      一个集中的服务器使用RESTful接口提供身份验证和授权服务。

Drivers

      驱动程序或服务后端集成到集中式服务器。他们是用于访问的身份信息存储库中的外部OpenStack,并且可能已经存在在OpenStack部署的基础设施(例如,SQL数据库或LDAP服务器)

Modules

      中间件模块运行在OpenStack组件的地址空间使用身份认证服务。这些模块拦截服务请求,提取用户凭证,并将它们发送到中央服务器进行授权。中间件模块和OpenStack组件之间的集成使用Python Web Server Gateway Interface

1、安装前要先创建一个数据库keystone

1
[root@controller /] # mysql -u root -p

创建数据库

1
2
MariaDB [(none)]> create database keystone;
Query OK, 1 row affected (0.00 sec)

keystone用户赋予ALL权限,对keystone数据库

1
2
MariaDB [(none)]> grant all privileges on keystone.* to  'keystone' @ 'localhost'  identified by  '123456' ;
Query OK, 0 rows affected (0.00 sec)

1、安装数据包

1
[root@controller /] # yum install openstack-keystone httpd mod_wsgi -y

1、编辑配置文件/etc/keystone/keystone.conf

wKiom1nCdniRfqNNAAALbYl5uTE181.png-wh_50

[token]设置

[token]

# ...

wKiom1nCdpjCnKKWAAAXWQ2zrtU283.png-wh_50

1、生成认证服务的数据库,要以keystone用户身份来执行

1
[root@controller /] # su -s /bin/sh -c "keystone-manage db_sync" keystone

1、初始化fernet

1
2
[root@controller /] # keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone
[root@controller /] #  keystone-manage credential_setup --keystone-user keystone --keystone-group keystone

1、引导身份验证服务

1
root@controller ~] # 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/

1、配置apache服务

设置主配置文件/etc/httpd/conf/httpd.conf,将ServerName设定为controller节点名

1
[root@controller ~] # vim /etc/httpd/conf/httpd.conf

wKiom1nCd4WjLlh3AAAa7i1XoD4657.png-wh_50

创建/usr/share/keystone/wsgi-keystone.conf的链接文件

1
[root@controller ~] # ln -s /usr/share/keystone/wsgi-keystone.conf /etc/httpd/conf.d/

设置apache开机启动并立刻启动

1
2
[root@controller conf.d] # systemctl enable httpd.service
[root@controller conf.d] # systemctl start httpd.service

 配置管理员账号的令牌文件:

1
2
3
4
5
6
7
8
root@controller ~] # cat admin_keystone 
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

执行这个令牌文件:

1
[root@controller ~] # source admin_keystone

检查操作:

   在安装其他服务之前验证身份服务的操作是否正确,在控制器节点上执行这些命令。

1、出于安全考虑,禁用临时身份验证令牌机制:

编辑/etc/keystone/keystone-paste.ini 配置文件,在[pipeline:public_api], [pipeline:admin_api], [pipeline:api_v3]中移除admin_token_auth

wKioL1nCfYGzhEJ6AABMpZk5dGA410.png-wh_50

1、取消OS_AUTH_URL OS_PASSWORD环境变量

1
[root@controller ~] # unset OS_AUTH_URL OS_PASSWORD

1、作为admin账号去请求一个认证令牌

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

wKioL1nCfdvyyfVwAAB_RrEVgk4295.png-wh_50

glance安装

openstack image服务可用于发现、注册及检索虚拟机镜像(image),它提供了一个RESTfulAPI,能够让用户查询VM镜像的元数据及通过http请求获取映像。VM镜像文件可以存储在各种存储中,如普通的文件系统、对象存储系统(openstack object storage),S3存储等。

openstack镜像服务是IaaS架构的中心,它接受来自终端用户或OpenStack计算组件的磁盘或服务器映像的API请求和元数据定义。它还支持在各种存储库类型(包括OpenStack对象存储)中存储磁盘或服务器映像。

image service由以下几个组件构成:

glance-api:接受镜像查找、检索和存储的API调用

glance-registry:存储、处理及检索镜像文件的元数据,元数据包含大小及类型等;

database:存储镜像元数据,您可以根据您的喜好选择数据库。大多数部署使用MySQLSQLite

Storage repository for image filesimage service支持多种类型的映像文件存储机制,包括使用普通的文件系统、对象存储、RADOS块设备、HTTP。注意,一些存储库只支持只读使用。

Metadata definition service:一种针对厂商、管理、服务和用户的通用API,以便让其可以定义自己的元数据。

controller节点配置。

准备工作:

1、需要创建一个数据库,存储凭据和API endpoints

1
2
MariaDB [(none)]> create database glance;
Query OK, 1 row affected (0.00 sec)
1
2
MariaDB [(none)]> grant all privileges on glance.* to  'glance' @ 'localhost'  identified by  '123456' ;
Query OK, 0 rows affected (0.00 sec)
1
2
MariaDB [(none)]> grant all privileges on glance.* to  'glance' @ '%'  identified by  '123456' ;
Query OK, 0 rows affected (0.00 sec)

2、执行admin环境以便创建用户

1
[root@controller ~] # source admin_keystone

2、创建服务凭证,完成以下步骤:

   创建glance用户

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

wKioL1nCfo_hLQ-uAABKoIgvoRA107.png-wh_50

添加用户glanceadmin角色和service项目

1
[root@controller ~] # openstack project create --domain default --description "Service Project" service

wKioL1nCfrqzxsQhAABmGGAPuuA596.png-wh_50

1
[root@controller ~] # openstack project list

wKioL1nCfs6giXo_AABTFH7u6Xg593.png-wh_50

1
[root@controller ~] # openstack role add --project service --user glance admin

该命令没有任何输出

   创建glance服务项

1
[root@controller ~] # openstack service create --name glance  --description "OpenStack Image" image

wKiom1nCfzLzdBEjAAAsXMw6UkM799.png-wh_50

2、创建镜像服务的API endpoints:

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

wKioL1nCfxSx7madAABbEvls4y4065.png-wh_50

安装并配置glance

1、安装包

1
[root@controller /] #  yum install openstack-glance -y

1、编辑/etc/glance/glance-api.conf并完成以下配置

1
[root@controller /] # vim /etc/glance/glance-api.conf

wKioL1nCfzuQgh60AAAfkTKRtNQ464.png-wh_50

[keystone_authtoken][paste_deploy]部分配置如下,以便身份验证访问

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 = 123456

wKiom1nCf4fAQK2KAAAj52EkyWM586.png-wh_50

[paste_deploy]

# ...

flavor = keystone

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

[glance_store]

stores = file,http

default_store = file

filesystem_store_datadir = /var/lib/glance/images/

wKiom1nCf6rx6xgNAAAZMuH5zGE991.png-wh_50

1、编辑/etc/glance/glance-registry.conf配置文件完成以下配置:

      [database]部分配置数据库的访问

connection = mysql+pymysql://glance:123456@controller/glance

[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

wKiom1nCf8zj6RK8AAAi9St8ECI577.png-wh_50

[paste_deploy]

flavor = keystone

4产生glance服务数据库

1
[root@controller /] # su -s /bin/sh -c "glance-manage db_sync" glance

wKiom1nCf-LjnbHbAAETtZNboXw966.png-wh_50

1、启动服务并设置开机启动

1
2
[root@controller /] #  systemctl enable openstack-glance-api.service   openstack-glance-registry.service
[root@controller /] # systemctl start openstack-glance-api.service   openstack-glance-registry.service

检查操作:

1需要admin凭证在命令行下操作:

1
[root@controller /] # source admin-openrc

1、下载源镜像

1
[root@controller /] #  wget http://download.cirros-cloud.net/0.3.5/cirros-0.3.5-x86_64-disk.img

1、上传镜像到镜像服务

1
{root@controller ~] # openstack image create "cirros"   --file cirros-0.3.5-x86_64-disk.img   --disk-format qcow2 --container-format bare   --public

wKiom1nCgKvwFLQXAADDojtvaNs984.png-wh_50

1、确认镜像上传并验证属性

1
[root@controller ~] # openstack image list

wKioL1nCgM_QAdB2AABaF22uDgc005.png-wh_50

wKioL1nCgQHj9SwXAABRkYJAfJc414.png-wh_50



     本文转自柴鑫旺 51CTO博客,原文链接:http://blog.51cto.com/chaixinwang/1967323,如需转载请自行联系原作者







相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
7月前
|
IDE Linux KVM
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
云计算|OpenStack|社区版OpenStack---基本概念科普(kvm的驱动类别和安装)
291 0
|
7月前
|
存储 消息中间件 数据库
云计算|OpenStack|社区版OpenStack安装部署文档(八--- 存储服务cinder的安装部署---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(八--- 存储服务cinder的安装部署---Rocky版)
313 0
|
7月前
|
运维 数据可视化 Linux
云计算|OpenStack|社区版OpenStack安装部署文档(七--- 仪表盘服务dashboard的安装部署---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(七--- 仪表盘服务dashboard的安装部署---Rocky版)
174 0
|
7月前
|
云计算 数据安全/隐私保护 虚拟化
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十一--- 如何获取镜像---Rocky版)
212 0
|
4月前
|
安全 API 网络安全
OpenStack的 网络服务(Neutron)
【8月更文挑战第23天】
363 10
|
4月前
|
存储 网络协议 Linux
如何安装OpenStack?
【8月更文挑战第21天】
636 1
|
3月前
|
存储 消息中间件 算法
深入解析OpenStack Cinder:块存储服务详解
本文介绍了OpenStack及其块存储服务Cinder。OpenStack是一个开源云计算管理平台,提供基础设施即服务(IaaS),核心服务包括计算、网络、存储等。Cinder主要用于为虚拟机提供持久性块存储,具备多种功能,如卷操作、备份、快照及与实例的交互等。此外,还详细介绍了Cinder的工作流程、命令行操作及不同存储插件的使用。
558 8
|
7月前
|
云计算
云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)
296 0
|
7月前
|
弹性计算 Linux 网络安全
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
云计算|OpenStack|社区版OpenStack安装部署文档(九--- 创建一个虚拟机实例---Rocky版)
101 0
|
7月前
|
存储 云计算 虚拟化
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
云计算|OpenStack|使用VMware安装华为云的R006版CNA和VRM---初步使用(二)
338 0