本帖最后由 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.创建身份认证服务,完成下面步骤
生效环境变量
复制代码 内容如下:
- export OS_TENANT_NAME=admin
- export OS_USERNAME=admin
- export OS_PASSWORD=ADMIN_PASS
- export OS_AUTH_URL=http://controller:35357/v2.0
复制代码
a.创建一个swift 用户
- keystone user-create --name swift --pass SWIFT_PASS
复制代码
b.授予admin角色
- keystone user-role-add --user swift --tenant service --role admin
复制代码
执行命令后,这里没有输出内容
c.创建swift 服务实例
- keystone service-create --name swift --type object-store \
- --description "OpenStack Object Storage"
复制代码
2.创建对象服务API endpoints:
- keystone endpoint-create \
- --service-id $(keystone service-list | awk '/ object-store / {print $2}') \
- --publicurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' \
- --internalurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' \
- --adminurl http://controller:8080 \
- --region regionOne
复制代码
安装配置控制节点组件
1.安装
- apt-get install swift swift-proxy python-swiftclient python-keystoneclient \
- python-keystonemiddleware memcached
复制代码
注意:完成openstack环境及openstack其它包
2.创建/etc/swift 目录
复制代码
3.从对象存储服务源库获取代理服务配置文件
进入目录/etc/swift
复制代码
,执行下面命令
- curl -o /etc/swift/proxy-server.conf \
- https://raw.githubusercontent.com/openstack/swift/stable/juno/etc/proxy-server.conf-sample
复制代码
网盘直接下载地址
链接: https://pan.baidu.com/s/1mika3Fi 密码: 5xsq
############################
如果curl不存在,则直接安装后,在执行命令,安装如下
复制代码
############################
4.编辑文件 /etc/swift/proxy-server.conf,完成下面内容
- sudo nano /etc/swift/proxy-server.conf
复制代码
a.在 [DEFAULT]部分,配置绑定的端口,用户和配置目录
- [DEFAULT]
- ...
- bind_port = 8080
- user = swift
- swift_dir = /etc/swift
复制代码
b.在 [pipeline:main] 部分,启用appropriate modules
- [pipeline:main]
- pipeline = authtoken cache healthcheck keystoneauth proxy-logging proxy-server
复制代码
注意:
更多信息在其他模块启用附加功能,查看部署向导
c.在[app:proxy-server]部分,启用账户管理
- [app:proxy-server]
- ...
- allow_account_management = true
- account_autocreate = true
复制代码
d.在[filter:keystoneauth] 部分,配置操作的角色
- [filter:keystoneauth]
- use = egg:swift#keystoneauth
- ...
- operator_roles = admin,_member_
复制代码
注意:
你可能需要取消这部分注释,你会看到【[filter:keystoneauth]】被注释掉了,所以需要取消掉
e.在[filter:authtoken]部分,配置身份认证访问
- [filter:authtoken]
- paste.filter_factory = keystonemiddleware.auth_token:filter_factory
- ...
- auth_uri = http://controller:5000/v2.0
- identity_uri = http://controller:35357
- admin_tenant_name = service
- admin_user = swift
- admin_password = SWIFT_PASS
- delay_auth_decision = true
复制代码
注意:
1.你可能需要取消掉注释掉这部分【为了保证正确性,这里直接添加】
2.注释掉其他auth_host, auth_port, 和 auth_protocol,以免配置被覆盖
f.在 [filter:cache]部分,配置memcached 位置
- [filter:cache]
- ...
- 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及网络总结
|