热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

OpenStack-M版(Mitaka)搭建基于(Centos7.2)+++十、Openstack对象存储服务(swift)上

十、Openstack对象存储服务(swift)上配置:我在计算节点添加了两块硬盘(sdb,sdc)用来当存储用,在我这搭建中计算节点也就是存储节点了,原因电脑无法拉动更多

十、Openstack对象存储服务(swift)上


配置:我在计算节点添加了两块硬盘(sdb,sdc)用来当存储用,在我这搭建中计算节点也就是存储节点了,原因电脑无法拉动更多虚拟几所以咯。。。

简单介绍:

swift主要有四个组件:swift-proxy-serverswift-account-serverswift-container-serverswift-object-server

swift-proxy-server(代理服务):对外提供对象服务 API

swift-account-server(账户服务):提供账户元数据和统计信息,并维护所含容器列表的服务,管理由对象存储定义的账户

swift-container-server(容器服务):提供容器元数据和统计信息,并维护所含对象列表的服务

swift-object-server(对象服务):提供对象元数据和内容服务,每个对象的内容会以文件的形式存储在文件系统中,元数据会作为文件属性来存储,建议采用支持扩展属性的 XFS 文件系统



控制节点上

swift不需要数据库我们直接创建服务


1.创建swift用户

需要管理员权限

. admin-openrc

openstack user create --domain default --password-prompt swift

[root@controller ~]# . admin-openrc 
[root@controller ~]# openstack user create --domain default --password-prompt swift
User Password:
Repeat User Password:
+-----------+----------------------------------+
| Field     | Value                            |
+-----------+----------------------------------+
| domain_id | b24b3093654b4ba4be706fe675a03b2d |
| enabled   | True                             |
| id        | 90f27d7d1fb644babb1f35f6a7919866 |
| name      | swift                            |
+-----------+----------------------------------+

2.添加 admin 角色到swift 用户和 service 项目上

openstack role add --project service --user swift admin

[root@controller ~]# openstack role add --project service --user swift admin
此操作无返回


3.创建swift服务实体

openstack service create --name swift --description "OpenStack Object Storage" object-store

[root@controller ~]# openstack service create --name swift \
>   --description "OpenStack Object Storage" object-store
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Object Storage         |
| enabled     | True                             |
| id          | 1fbb8b2624694fc780291896d2f210a7 |
| name        | swift                            |
| type        | object-store                     |
+-------------+----------------------------------+

4.创建镜像服务的 API 端点

openstack endpoint create --region RegionOne object-store public http://controller:8080/v1/AUTH_% \  (括号前面是有\ 的)(tenant_id \ )s

openstack endpoint create --region RegionOne object-store internal http://controller:8080/v1/AUTH_% \ (tenant_id \ )s

openstack endpoint create --region RegionOne object-store admin http://controller:8080/v1

[root@controller ~]# openstack endpoint create --region RegionOne \
>   object-store public http://controller:8080/v1/AUTH_%(tenant_id)s
+--------------+----------------------------------------------+
| Field        | Value                                        |
+--------------+----------------------------------------------+
| enabled      | True                                         |
| id           | bc95965d7d084ca68e07e7259bb78385             |
| interface    | public                                       |
| region       | RegionOne                                    |
| region_id    | RegionOne                                    |
| service_id   | 1fbb8b2624694fc780291896d2f210a7             |
| service_name | swift                                        |
| service_type | object-store                                 |
| url          | http://controller:8080/v1/AUTH_%(tenant_id)s |
+--------------+----------------------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne \
>   object-store internal http://controller:8080/v1/AUTH_%(tenant_id)s
+--------------+----------------------------------------------+
| Field        | Value                                        |
+--------------+----------------------------------------------+
| enabled      | True                                         |
| id           | 83e47740125d42bea679097908bff9fa             |
| interface    | internal                                     |
| region       | RegionOne                                    |
| region_id    | RegionOne                                    |
| service_id   | 1fbb8b2624694fc780291896d2f210a7             |
| service_name | swift                                        |
| service_type | object-store                                 |
| url          | http://controller:8080/v1/AUTH_%(tenant_id)s |
+--------------+----------------------------------------------+
[root@controller ~]# openstack endpoint create --region RegionOne \
>   object-store admin http://controller:8080/v1
+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | b75d6e318ae5481fbb602551a2e2278f |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | 1fbb8b2624694fc780291896d2f210a7 |
| service_name | swift                            |
| service_type | object-store                     |
| url          | http://controller:8080/v1        |
+--------------+----------------------------------+

5.安装软件包

yum install openstack-swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached


从对象存储的仓库源中获取代理服务的配置文件(需要联网,否则自己浏览器打开自己粘贴创建文件)

curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample

[root@controller ~]# curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100 41023  100 41023    0     0  27880      0  0:00:01  0:00:01 --:--:-- 27887

6.修改配置文件 /etc/swift/proxy-server.conf

vi /etc/swift/proxy-server.conf

[DEFAULT]
bind_port = 8080绑定端口
user = swift用户
swift_dir = /etc/swift目录

将原句注释直接复制粘贴(很长这是一句不要回车,不要改顺序,不然会报错8080)

[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server


启动自动账户创建

[app:proxy-server]
use = egg:swift#proxy
account_autocreate = True

配置操作员角色
这个配置是注释了的可以直接包括头[filter:keystoneauth]添加在配置最下面(不放心的去自己搜索看看)

[filter:keystoneauth]
use = egg:swift#keystoneauth
operator_roles = admin,user

配置认证服务访问
这个配置也是注释了的可以直接包括头[filter:authtoken]添加在配置最下面(不放心的去自己搜索看看)

[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
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 = swift
password = 123456(创建用户时你为swift设置的密码)
delay_auth_decision = True

配置 memcached 的位置

[filter:cache]
use = egg:swift#memcache
memcache_servers = controller:11211


推荐阅读
  •  参考自:https:linux.cnarticle-6719-1.html一、安装  首先通过xshell5先登陆来到字符界面(xshell通过SSH连接请参见之前随笔)  先下载redis, ... [详细]
  • Centos7.6安装Gitlab教程及注意事项
    本文介绍了在Centos7.6系统下安装Gitlab的详细教程,并提供了一些注意事项。教程包括查看系统版本、安装必要的软件包、配置防火墙等步骤。同时,还强调了使用阿里云服务器时的特殊配置需求,以及建议至少4GB的可用RAM来运行GitLab。 ... [详细]
  • Linux下安装grafana并且添加influxdb监控的方法
    这篇文章主要介绍了Linux下安装grafana并且添加influxdb监控的方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值, ... [详细]
  • CEPH LIO iSCSI Gateway及其使用参考文档
    本文介绍了CEPH LIO iSCSI Gateway以及使用该网关的参考文档,包括Ceph Block Device、CEPH ISCSI GATEWAY、USING AN ISCSI GATEWAY等。同时提供了多个参考链接,详细介绍了CEPH LIO iSCSI Gateway的配置和使用方法。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  • centos7如何利用yum安装mysql 8.0.12
    这篇文章将为大家详细讲解有关centos7如何利用yum安装mysql8.0.12,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有 ... [详细]
  • 基于CentOS7的服务器环境搭建(LAMP环境)一、安装MySQL组件  1.由于在CentOS7中,默认yum安装库中不含有mysql,我们可以下载mysql的分支Mari ... [详细]
  • 首先安装VM,VM破解版和激活版的百度有很多,随意下载一个下载CentOS7地址1:https:mirrors.btte.netcentos7isosx86_64地址2:http: ... [详细]
  • 什么是API接口?给大家举例说明
    Api接口也就是所谓的应用程序接口,api接口的全称是ApplicationProgramInterface,通过API接口可以实现计算机软件之间的相互 ... [详细]
  • 一安装配置1.配置文件mongod.cfg(路径:D:\data\config\mongod.cfg)如下:    systemLog:destination ... [详细]
  • centos 编译安装 php 5.5,CentOS 5.5上编译安装 PHP 5.3.6
    编译并安装#make&&makeinstall安装结果摘要,里面有几个主要的安装路径变量libtool:install:warning:remembertorunli ... [详细]
  • asp.net core 应用docke部署到centos7
    前言前期准备win10(不要安装hyper-V)VMware-Workstation-Pro15.0Xshell6(非必需)VS2019以上环境请自行安装都是默认安装没什么可说的不 ... [详细]
  • 怎么在Centos7环境中安装Docker
    这期内容当中小编将会给大家带来有关怎么在Centos7环境中安装Docker,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有 ... [详细]
  • 1、oracle官网下载jdk8https:www.oracle.comjavatechnologiesjavasejavase-jdk8-downloads.html2、楼主用的 ... [详细]
  • centos7+cdh5.10.0搭建
    一、选择环境:1.说明本次部署使用台机器,3台用于搭建CDH集群,1台为内部源。内部源机器是可以连接公网的,可以提前部署好内部源,本次部署涉及到的服务器的hosts配置如下:192.168 ... [详细]
author-avatar
荒野中得生存
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有