Deploy swift on CentOS6.4 (grizzly)

本文详细介绍如何在Linux环境下安装并配置OpenStack Swift对象存储服务,包括安装必要组件、配置文件调整、创建及平衡存储环等关键步骤。

1、yum install openstack-swift openstack-swift-proxy openstack-swift-account openstack-swift-container openstack-swift-object memcached xfsprogs

2、vi /etc/swift/swift.conf

swift_hash_path_suffix = swifthashrandomstring

3、setup the XFS volume

fdisk /dev/sdb  (set up a single partition) // 简单起见,只用一个分区

echo "/dev/sdb2 /srv/node/sdb2 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0" >> /etc/fstab

mkdir -p /srv/node/

chown -R swift:swift /srv/node

4、vi /etc/rsyncd.conf 

关于xinent.d 的启动和配置,请自己搜索文章去参考。

uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = E3-xeon

[account]
max connections = 2
path = /srv/
read only = false
lock file = /var/lock/account.lock

[container]
max connections = 2
path = /srv/
read only = false
lock file = /var/lock/container.lock

[object]
max connections = 2
path = /srv/
read only = false
lock file = /var/lock/object.lock

5、 vi /etc/swift/account-server.conf

[DEFAULT]
bind_ip = E3-xeon
workers = 2
mount_chec
k = false //这行很重要,要不然会出错
[pipeline:main]
pipeline = account-server

[app:account-server]
use = egg:swift#account

[account-replicator]
[account-auditor]
[account-reaper
a]       

6、vi /etc/swift/container-server.conf

[DEFAULT]
bind_ip = E3-xeon
workers = 2
mount_check = false
[pipeline:main]
pipeline = container-server
[app:container-server]
use = egg:swift#container
[container-replicator]
[container-updater]
[container-auditor]

7、vi /etc/swift/object-server.conf

[DEFAULT]
bind_ip = E3-xeon
workers = 2
mount_check = false
[pipeline:main]
pipeline = object-server

[app:object-server]
use = egg:swift#object
[object-replicator]
[object-updater]
[object-auditor]
[object-expirer]

8、vi /etc/swift/proxy-server.conf

[DEFAULT]
bind_port = 8080
workers = 8
user = swift
swift_dir = /etc/swift
#cert_file = /etc/swift/cert.crt
#key_file = /etc/swift/cert.key
log_name = swift
log_facility = LOG_LOCAL0
log_level = DEBUG

[pipeline:main]
pipeline = catch_errors healthcheck cache authtoken keystone proxy-server

[app:proxy-server]
use = egg:swift#proxy
allow_account_management = true
account_autocreate = true
log_level = DEBUG
set access_log_name = swift-proxy
set access_log_facility = SYSLOG
set access_log_level = INFO
set log_headers = True

[filter:keystone]
paste.filter_factory = keystone.middleware.swift_auth:filter_factory
operator_roles = admin, swiftoperator
is_admin = true

[filter:authtoken]
paste.filter_factory = keystone.middleware.auth_token:filter_factory
# Delaying the auth decision is required to support token-less
# usage for anonymous referrers ('.r:*').
auth_protocol = http
auth_host = E3-xeon
auth_port = 35357
auth_token = ADMIN
service_protocol = http
service_host = E3-xeon
service_port = 5000
admin_token = ADMIN
admin_tenant_name = service
admin_user = swift
admin_password = swift
delay_auth_decision = 0


[filter:cache]
use = egg:swift#memcache
memcache_servers = 127.0.0.1:11211
set log_name = cache
[filter:catch_errors]
use = egg:swift#catch_errors
[filter:healthcheck]
use = egg:swift#healthcheck

9、Start the storage services and add to /etc/rc.local

echo "swift-init main start" >> /etc/rc.local
echo "swift-init rest start" >> /etc/rc.local

10、Create the account, container and object rings

cd /etc/swift
swift-ring-builder account.builder create  10 1 1
swift-ring-builder container.builder create 10 1 1
swift-ring-builder object.builder create 10 1 1

swift-ring-builder account.builder add z1-192.168.1.30:6002/node 100
swift-ring-builder container.builder add z1-192.168.1.30:6001/node 100
swift-ring-builder object.builder add z1-192.168.1.30:6000/node 100

Verify the ring contents for each ring:
swift-ring-builder account.builder
swift-ring-builder container.builder
swift-ring-builder object.builder


Rebalance the rings:
swift-ring-builder account.builder rebalance
swift-ring-builder container.builder rebalance
swift-ring-builder object.builder rebalance

chown -R swift:swift /etc/swift

Restart service:
swift-init all restart

最后重启机器,用swift stat来验证

### 回答1: 好的,下面是在Android设备上使用Linux Deploy安装CentOS的步骤: 1. 首先,在Google Play商店下载并安装Linux Deploy应用程序。 2. 打开Linux Deploy应用程序并单击右上角的设置按钮。 3. 在设置菜单中,将Distribution更改为“CentOS”。 4. 在Architecture中选择“armhf”。 5. 在Mirror中选择“default”。 6. 在Suite中选择“stable”。 7. 在目标文件夹中选择安装CentOS的位置。建议使用外部存储器以避免设备存储空间不足。 8. 在其他设置中,选择“SSH”以便在安装完成后通过SSH连接到CentOS。 9. 单击“安装”按钮并等待Linux Deploy下载并安装CentOS。 10. 安装完成后,您可以通过SSH连接到CentOS并开始使用它了。 需要注意的是,Linux Deploy在Android设备上模拟Linux环境。因此,它需要足够的RAM和CPU来运行CentOS。建议使用高端设备进行安装以获得更好的体验。 ### 回答2: 在Android设备上安装CentOS操作系统可以通过使用Linux Deploy应用程序来实现。以下是安装CentOS的步骤: 1. 在Google Play商店中下载并安装Linux Deploy应用程序。 2. 打开Linux Deploy应用,并确保您的设备已经取得了Root权限。 3. 在Linux Deploy的主界面上,点击右上角的菜单按钮。 4. 在菜单列表中选择"Properties"(属性)选项。 5. 在属性设置中,选择"Manage distributions"(管理发行版)选项。 6. 在发行版管理界面,点击右上角的加号按钮。 7. 在发行版列表中选择"CentOS"作为要安装的操作系统。 8. 在操作系统设置中,可以更改CentOS的版本和其他参数,然后点击"Save"(保存)按钮。 9. 返回到Linux Deploy的主界面,点击右上角的三个点按钮。 10. 在菜单列表中选择"Start"(启动)选项。 11. Linux Deploy将自动下载CentOS的镜像文件,并开始安装。 12. 安装完成后,Linux Deploy会显示CentOS的IP地址和用户名密码等信息。 通过这些步骤,您就可以成功地在Android设备上安装CentOS操作系统,并开始使用它进行各种任务和操作。请注意,安装过程可能需要一段时间,取决于您的设备性能和网络状况。 ### 回答3: 要使用Linux Deploy在Android设备上安装CentOS,您需要遵循以下步骤: 1. 首先,安装Linux Deploy应用程序。您可以在Google Play商店中搜索并下载它。 2. 打开Linux Deploy应用程序。在主界面上,您将看到各种配置选项。 3. 在“属性”选项卡中,选择“操作系统”并选择CentOS4. 然后,单击“更新列表”按钮以获取最新的CentOS发行版列表。 5. 从列表中选择适合您的版本,并通过点击“安装”按钮来下载和安装CentOS6. 安装过程可能需要一些时间,具体取决于您的设备性能和网络速度。 7. 安装完成后,您将看到一个新的CentOS根文件系统的选项。 8. 在“配置”选项卡中,您可以根据需要调整各种设置,例如用户名、密码和SSH访问等。 9. 完成配置后,单击“启动”按钮以启动CentOS。 10. 等待一段时间,直到Linux Deploy成功启动CentOS。 11. 在Linux Deploy界面上,您将看到“SSH终端”和“VNC控制台”选项。您可以选择其中任何一种方式来访问和控制CentOS。 通过按照上述步骤,您可以使用Linux Deploy在Android设备上成功安装CentOS。请注意,安装过程可能因使用的设备和网络状况而有所不同。因此,对于某些用户,可能需要进行某些额外的设置或配置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值