分享

openstack【juno】入门 【swift篇】二十二:对象存储安装配置【控制节点】

pig2 发表于 2015-2-17 19:22:35 [显示全部楼层] 只看大图 回帖奖励 阅读模式 关闭右栏 3 72786
本帖最后由 pig2 于 2017-4-12 10:35 编辑
问题导读


1.swift包含哪些组件?
2.如果创建swift账户?
3.swift能否单独使用?
4.如果下载swift文件?





openstack【juno】入门 【cinder篇】二十一:安装配置块存储节点(cinder)

简介:
openstack  swift是一个多租户对象存储系统。它的高扩展性,以最小的成本管理大量的非结构化数据。
它包括下面组件:

代理服务器【Proxy servers (swift-proxy-server)】

接受openstack对象存储api和raw HTTP 请求上传文件,修改元数据,和创建容器。它也存储文件和通过浏览器查看列表。为提高性能,通常使用可选的高速缓存


账户服务器【Account servers (swift-account-server)】
管理对象存储账户

容器服务器【Container servers (swift-container-server)】
在swift中,管理容器或则文件的映射


对象服务器【Object servers (swift-object-server)

管理实际对象,比如在存储节点的文件

Various periodic 进程
在大数量存储执行内部任务,replication 服务,确保集群一致性和高可用性。其它周期进程包括

WSGI 中间件

处理身份验证,通常是OpenStack身份。

部署向导

这一节描述怎么安装和配置代理服务,处理账户,container,对象服务操作请求,在存储节点上。为了简单起见,在控制节点上安装和配置代理服务。
尽管如此你可以在连接到存储节点的其它节点上安装代理服务。额外的,你可以安装配置代理服务到其它多节点,提高性能和冗余。更多信息查看


准备

代理服务依赖认证授权机制,比如身份认证服务。尽管如此,不像其他服务,它也提供内部认证机制,没有openstack其它服务也能进行操作。为了简单起见,这里使用认证服务。在配置对象服务之前,你必须创建认证服务和API endpoints.

注意:
对象存储服务在控制节点不使用SQL 数据库

1.创建身份认证服务,完成下面步骤

生效环境变量
  1. source admin-openrc.sh
复制代码
内容如下:
  1. export OS_TENANT_NAME=admin
  2. export OS_USERNAME=admin
  3. export OS_PASSWORD=ADMIN_PASS
  4. export OS_AUTH_URL=http://controller:35357/v2.0
复制代码
1.png


a.创建一个swift 用户

  1. keystone user-create --name swift --pass SWIFT_PASS
复制代码
2.png

b.授予admin角色

  1. keystone user-role-add --user swift --tenant service --role admin
复制代码
执行命令后,这里没有输出内容

c.创建swift 服务实例

  1. keystone service-create --name swift --type object-store \
  2.   --description "OpenStack Object Storage"
复制代码
3.png


2.创建对象服务API endpoints:

  1. keystone endpoint-create \
  2.   --service-id $(keystone service-list | awk '/ object-store / {print $2}') \
  3.   --publicurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' \
  4.   --internalurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' \
  5.   --adminurl http://controller:8080 \
  6.   --region regionOne
复制代码
4.png


安装配置控制节点组件

1.安装
  1. apt-get install swift swift-proxy python-swiftclient python-keystoneclient \
  2.   python-keystonemiddleware memcached
复制代码
注意:完成openstack环境及openstack其它包

2.创建/etc/swift 目录

  1. mkdir /etc/swift
复制代码


3.从对象存储服务源库获取代理服务配置文件

进入目录/etc/swift
  1. cd /etc/swift
复制代码



,执行下面命令



  1. curl -o /etc/swift/proxy-server.conf \
  2.   https://raw.githubusercontent.com/openstack/swift/stable/juno/etc/proxy-server.conf-sample
复制代码
网盘直接下载地址
链接: https://pan.baidu.com/s/1mika3Fi 密码: 5xsq
############################
如果curl不存在,则直接安装后,在执行命令,安装如下
  1. apt-get install curl
复制代码


############################

4.编辑文件 /etc/swift/proxy-server.conf,完成下面内容

  1. sudo nano  /etc/swift/proxy-server.conf
复制代码



a.在 [DEFAULT]部分,配置绑定的端口,用户和配置目录
  1. [DEFAULT]
  2. ...
  3. bind_port = 8080
  4. user = swift
  5. swift_dir = /etc/swift
复制代码
5.png


b.在 [pipeline:main] 部分,启用appropriate modules

  1. [pipeline:main]
  2. pipeline = authtoken cache healthcheck keystoneauth proxy-logging proxy-server
复制代码
6.png
注意:
更多信息在其他模块启用附加功能,查看部署向导


c.在[app:proxy-server]部分,启用账户管理

  1. [app:proxy-server]
  2. ...
  3. allow_account_management = true
  4. account_autocreate = true
复制代码




d.在[filter:keystoneauth] 部分,配置操作的角色

  1. [filter:keystoneauth]
  2. use = egg:swift#keystoneauth
  3. ...
  4. operator_roles = admin,_member_
复制代码
注意:
你可能需要取消这部分注释,你会看到【[filter:keystoneauth]】被注释掉了,所以需要取消掉
7.png

e.在[filter:authtoken]部分,配置身份认证访问
  1. [filter:authtoken]
  2. paste.filter_factory = keystonemiddleware.auth_token:filter_factory
  3. ...
  4. auth_uri = http://controller:5000/v2.0
  5. identity_uri = http://controller:35357
  6. admin_tenant_name = service
  7. admin_user = swift
  8. admin_password = SWIFT_PASS
  9. delay_auth_decision = true
复制代码
8.png
注意:
1.你可能需要取消掉注释掉这部分【为了保证正确性,这里直接添加】
2.注释掉其他auth_host, auth_port, 和 auth_protocol,以免配置被覆盖

f.在 [filter:cache]部分,配置memcached 位置
  1. [filter:cache]
  2. ...
  3. memcache_servers = 127.0.0.1:11211
复制代码









相关内容:

openstack【juno】入门 【准备篇】零:整体介绍

openstack【juno】入门 【准备篇】一: Ubuntu14.04远程连接(ssh安装)

openstack【juno】入门 【准备篇】二::NTP安装

openstack【juno】入门 【准备篇】三:mysql(MariaDB)安装

openstack【juno】入门 【准备篇】四::RabbitMQ 安装

openstack【juno】入门 【keystone篇】五::Keystone部署及介绍

openstack【juno】入门 【keystone篇】六::Keystone使用及遇到问题解决办法

openstack【juno】入门 【keystone篇】七:创建 service entity 和 API endpoint

openstack【juno】入门 【keystone篇】八:新手操作篇(验证操作篇)

openstack【juno】入门 【keystone篇】九:创建openstack客户端环境变量脚本

openstack【juno】入门 【glance 篇】十:glance初步介绍

openstack【juno】入门 【glance 篇】十一:glance安装配置

openstack【juno】入门 【glance 篇】十二:glance安装配置验证及相关操作

openstack【juno】入门 【nova 篇】十三(1):nova简单介绍

openstack【juno】入门 【nova 篇】十三(2):安装配置计算服务

openstack【juno】入门 【网络篇】十四:neutron介绍

openstack【juno】入门 【网络篇】十五:neutron安装部署(控制节点)

openstack【juno】入门 【网络篇】十六:neutron安装部署(网络节点)

openstack【juno】入门 【网络篇】十七:neutron安装部署(计算节点)

openstack【juno】入门 【网络篇】十八:创建实例化网络

openstack【juno】入门 【dashboard篇】十九:添加dashboard

openstack【juno】入门 【cinder篇】二十:cinder介绍及安装配置【控制节点】

openstack【juno】入门 【cinder篇】二十一:安装配置块存储节点(cinder)

openstack【juno】入门 【swift篇】二十二:对象存储安装配置【控制节点】

openstack【juno】入门 【swift篇】二十三:安装配置swift节点

openstack【juno】入门 【swift篇】二十四:创建初始rings

openstack【juno】入门 【swift篇】二十五:验证安装(控制节点)

openstack【juno】入门 【实例篇】二十六:创建实例(neutron)

openstack【juno】入门 【总结篇】二十七:openstack排除故障及常见问题记录

openstack【juno】入门 【总结篇】二十八:keystone及网络总结





已有(3)人评论

跳转到指定楼层
zengliang025 发表于 2015-2-18 11:02:31
赞一个,不错!
回复

使用道具 举报

archimonde123 发表于 2017-4-12 09:23:52
curl -o /etc/swift/proxy-server.conf \
  https://raw.githubusercontent.co ... -server.conf-sample
复制代码
网盘直接下载地址
https://yunpan.cn/crjHJXDn46kFi  访问密码 d8d3
############################
如果curl不存在,则直接安装后,在执行命令,安装如下

这个网盘链接失效,哪还有啊?
回复

使用道具 举报

pig2 发表于 2017-4-12 10:35:12
archimonde123 发表于 2017-4-12 09:23
curl -o /etc/swift/proxy-server.conf \
  https://raw.githubusercontent.com/openstack/swift/stable/j ...

链接: https://pan.baidu.com/s/1mika3Fi 密码: 5xsq
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条