当前位置:   article > 正文

OpenStack-Swift 组件单节点部署_openstack swift单节点

openstack swift单节点

OpenStack-Swift 组件单节点部署

一、环境准备

1.1 创建一台 Ubuntu 虚拟机

  • Ubuntu 14.04.6 版本
  • 内存:4G
  • vcpu:4 (CPU开启 虚拟化 Intel VT-x/EPT 或 AMD-V/RVI)
  • 硬盘:20G
  • 网络适配器:NAT

1.2 基础环境配置

1.2.1 配置 IP、关闭防火墙

# 配置静态 IP
vim /etc/network/interfaces

# 修改以下内容
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static # 将此行 dhcp 修改为 static
address 192.168.100.100 # IP 设置为 192.168.100.100
netmask 255.255.255.0 # 设置子网掩码
gateway 192.168.100.2 # 设置网关
dns-nameservers 8.8.8.8 # 设置dns服务器

# 修改完成后重启即可完成IP修改

# 关闭防火墙
ufw disable

1.2.2 设置运行 root ssh 连接

# 打开 sshd 服务配置文件
vim /etc/ssh/sshd_config

# 修改允许使用密码登录
PasswordAuthentication yes

# 添加运行 root 登陆
PermitRootLogin yes

即可使用 ssh 工具连接

1.2.3 设置域名解析

# 设置主机名为 compute
hostnamectl set-hostname compute
# 输入 su - 刷新
su -

# 设置域名解析
# 因为是 Swift 单组件部署 所以将 controller 和 compute 合在一起
vim /etc/hosts

127.0.0.1       localhost
127.0.1.1       ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

# 在最后添加本机ip 与 域名映射
192.168.100.100 controller
192.168.100.100 compute

# 测试是否配置是否成功

1.2.4 配置国内镜像源

# 因为受网络影响,需要配置国内镜像源
vim /etc/apt/sources.list

#

# deb cdrom:[Ubuntu-Server 14.04.6 LTS _Trusty Tahr_ - Release amd64 (20190304.2)]/ trusty main restricted

#deb cdrom:[Ubuntu-Server 14.04.6 LTS _Trusty Tahr_ - Release amd64 (20190304.2)]/ trusty main restricted

# See http://help.ubuntu.com/community/UpgradeNotes for how to upgrade to
# newer versions of the distribution.
deb http://us.archive.ubuntu.com/ubuntu/ trusty main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty main restricted

## Major bug fix updates produced after the final release of the
## distribution.
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates main restricted

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team. Also, please note that software in universe WILL NOT receive any
## review or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ trusty universe
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty universe
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates universe
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates universe

## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu
## team, and may not be under a free licence. Please satisfy yourself as to
## your rights to use the software. Also, please note that software in
## multiverse WILL NOT receive any review or updates from the Ubuntu
## security team.
deb http://us.archive.ubuntu.com/ubuntu/ trusty multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty multiverse
deb http://us.archive.ubuntu.com/ubuntu/ trusty-updates multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-updates multiverse

## N.B. software from this repository may not have been tested as
## extensively as that contained in the main release, although it includes
## newer versions of some applications which may provide useful features.
## Also, please note that software in backports WILL NOT receive any review
## or updates from the Ubuntu security team.
deb http://us.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://us.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu trusty-security main restricted
deb-src http://security.ubuntu.com/ubuntu trusty-security main restricted
deb http://security.ubuntu.com/ubuntu trusty-security universe
deb-src http://security.ubuntu.com/ubuntu trusty-security universe
deb http://security.ubuntu.com/ubuntu trusty-security multiverse
deb-src http://security.ubuntu.com/ubuntu trusty-security multiverse

## Uncomment the following two lines to add software from Canonical's
## 'partner' repository.
## This software is not part of Ubuntu, but is offered by Canonical and the
## respective vendors as a service to Ubuntu users.
# deb http://archive.canonical.com/ubuntu trusty partner
# deb-src http://archive.canonical.com/ubuntu trusty partner

## Uncomment the following two lines to add software from Ubuntu's
## 'extras' repository.
## This software is not part of Ubuntu, but is offered by third-party
## developers who want to ship their latest software.
# deb http://extras.ubuntu.com/ubuntu trusty main
# deb-src http://extras.ubuntu.com/ubuntu trusty main


# 删除所有的内容,添加清华源
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-security main restricted universe multiverse
 
# 预发布软件源,不建议启用
# deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ trusty-proposed main restricted universe multiverse

1.2.5 启用 OpenStack 库、安装 OpenStack 客户端

# 启用 OpenStack 库
apt-get install software-properties-common
add-apt-repository cloud-archive:mitaka
# 更新软件包
apt-get update && apt-get dist-upgrade
# 安装 OpenStack 客户端
apt-get install python-openstackclient

1.2.5 ntpdate 服务时间同步

# 同步阿里云 ntp 服务器
ntpdate ntp1.aliyun.com

二、基础服务安装与配置

2.1 MariaDB 数据库安装

2.1.1 安装 MariaDB 数据库

# 安装 MariaDB 服务
apt-get install mariadb-server python-pymysql

# 为了方便,设置密码为 000000

2.1.2 配置 MariaDB 数据库

vim /etc/mysql/conf.d/openstack.cnf
# 在这个文件内添加以下内容
[mysqld]
bind-address = 192.168.100.100
default-storage-engine = innodb
innodb_file_per_table
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8

# 重启数据库服务
service mysql restart

2.1.3 安全初始化 MariaDB

# 安全初始化
mysql_secure_installation

# 连接数据库进行测试
mysql -u root -p000000

# 输入命令检查数据库
SHOW DATABASES;

2.2 安装 RabbitMQ 消息队列服务

# 安装 RabbitMQ 消息队列服务
apt-get install rabbitmq-server

# 添加用户
rabbitmqctl add_user openstack 000000
# 设置权限
rabbitmqctl set_permissions openstack ".*" ".*" ".*"

2.3 安装 Memcached 缓存服务

# 安装 Memcached 缓存服务
apt-get install memcached python-memcache

# 配置高速缓存服务
vim /etc/memcached.conf

# 在 35 行左右 -l 配置为 本机IP
-l 192.168.100.100

# 配置完成后重启服务
service memcached restart

三、Keystone 组件安装

3.1 先决条件

因为 OpenStack 部署任何组件的前提是需要部署 keystone 组件,所以需要先安装 keystone 组件

# 进入数据库创建 keystone 认证库
mysql -u root -p000000

# 创建 keystone 库
CREATE DATABASE keystone;
# 授权
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'localhost' IDENTIFIED BY '000000';
GRANT ALL PRIVILEGES ON keystone.* TO 'keystone'@'%' IDENTIFIED BY '000000';

# 执行结果

# 生成一个随机初始值作为管理员的临时令牌,即 token
openssl rand -hex 10

# 输出结果
root@compute:~# openssl rand -hex 10
5f0bb3f89a48dd07f295

# 这个 token 值要存起来,后期需要使用

3.2 配置组件

# 安装 keystone 组件
# 禁用Keystone服务在安装完成后自启(不禁用的话安装完成后会提示端口被占用)
echo "manual" > /etc/init/keystone.override

# 安装
apt-get install keystone apache2 libapache2-mod-wsgi

# 配置 keystone 组件
vim /etc/keystone/keystone.conf

# 在[DEFAULT]部分,定义初始管理令牌的值:
[DEFAULT]
admin_token = ADMIN_TOKEN
# 使用前面步骤生成的随机数替换 ADMIN_TOKEN 值,即使用 5f0bb3f89a48dd07f295 来替换

# 在 [database] 部分,配置数据库访问:
[database]
connection = mysql+pymysql://keystone:000000@controller/keystone

# 在 [token] 部分,配置Fernet UUID令牌的提供者
[token]
provider = fernet

# 保存后同步数据库
su -s /bin/sh -c "keystone-manage db_sync" keystone
# 初始化 Fernet keys
keystone-manage fernet_setup --keystone-user keystone --keystone-group keystone

# 输出

3.3 配置 Apache 服务

# 编辑 /etc/apache2/apache2.conf 文件,为控制节点配置 ServerName 选项
vim /etc/apache2/apache2.conf

# 在最后一行添加
ServerName controller

# 配置虚拟主机
vim /etc/apache2/sites-available/wsgi-keystone.conf

# 删除原先内容,将以下内容添加进去
Listen 5000
Listen 35357
 
<VirtualHost *:5000>
    WSGIDaemonProcess keystone-public processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-public
    WSGIScriptAlias / /usr/bin/keystone-wsgi-public
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    ErrorLogFormat "%{cu}t %M"
    ErrorLog /var/log/apache2/keystone.log
    CustomLog /var/log/apache2/keystone_access.log combined
 
    <Directory /usr/bin>
        Require all granted
    </Directory>
</VirtualHost>
 
<VirtualHost *:35357>
    WSGIDaemonProcess keystone-admin processes=5 threads=1 user=keystone group=keystone display-name=%{GROUP}
    WSGIProcessGroup keystone-admin
    WSGIScriptAlias / /usr/bin/keystone-wsgi-admin
    WSGIApplicationGroup %{GLOBAL}
    WSGIPassAuthorization On
    ErrorLogFormat "%{cu}t %M"
    ErrorLog /var/log/apache2/keystone.log
    CustomLog /var/log/apache2/keystone_access.log combined
 
    <Directory /usr/bin>
        Require all granted
    </Directory>
</VirtualHost>

# 开启认证服务虚拟主机
ln -s /etc/apache2/sites-available/wsgi-keystone.conf /etc/apache2/sites-enabled
# 重启Apache服务
service apache2 restart
# 删除默认的SQLite数据库
rm -f /var/lib/keystone/keystone.db

3.4 配置服务实体和API访问端点

# 配置认证令牌
export OS_TOKEN=ADMIN_TOKEN
# 将 ADMIN_TOKEN 替换为前面步骤生成的认证令牌 token,即使用 5f0bb3f89a48dd07f295 来替换

# 配置端点URL
export OS_URL=http://controller:35357/v3
# 配置认证 API 版本
export OS_IDENTITY_API_VERSION=3

3.5 创建服务实体和API端点

# 创建服务实体和身份认证服务:
openstack service create --name keystone --description "OpenStack Identity" identity

# 如果报以下错误
root@compute:~# openstack service create --name keystone --description "OpenStack Identity" identity
An unexpected error prevented the server from fulfilling your request. (HTTP 500) (Request-ID: req-f4f2c47d-28f6-4998-8101-8fb9cb9ecd24)
# 则需要重新同步数据库
su -s /bin/sh -c "keystone-manage db_sync" keystone

# 同步之后即可
root@compute:~# openstack service create --name keystone --description "OpenStack Identity" identity
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Identity               |
| enabled     | True                             |
| id          | 98e2b3ca435f43e498b790dab05cc8be |
| name        | keystone                         |
| type        | identity                         |
+-------------+----------------------------------+

# 创建认证服务的 API 端点:
openstack endpoint create --region RegionOne identity public http://controller:5000/v3

openstack endpoint create --region RegionOne identity internal http://controller:5000/v3

openstack endpoint create --region RegionOne identity admin http://controller:35357/v3

3.6 创建域(domain),项目(projects),用户(users)与角色(roles)

# 创建域`default`
openstack domain create --description "Default Domain" default

# 创建项目`admin`
openstack project create --domain default --description "Admin Project" admin

# 创建用户`admin`
openstack user create --domain default --password-prompt admin
User Password: # 设置密码为 000000
Repeat User Password:

# 创建角色`admin`
openstack role create admin

# 为项目`admin`与用户`admin`添加角色`admin`
openstack role add --project admin --user admin admin
# 创建项目`service`
openstack project create --domain default --description "Service Project" service

3.7 测试操作

# 因为安全性的原因,关闭临时认证令牌机制
vim /etc/keystone/keystone-paste.ini

# 从 [pipeline:public_api] ,[pipeline:admin_api] 和 [pipeline:api_v3] 部分删除 admin_token_auth  

# 移除临时令牌`token`与访问URL
unset OS_TOKEN OS_URL
# 使用`amdin`用户请求令牌`token`
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
Password:

3.8 创建 OpenStack 客户端环境脚本

# 为`admin`用户创建脚本
vim admin-openrc

export OS_PROJECT_DOMAIN_NAME=default
export OS_USER_DOMAIN_NAME=default
export OS_PROJECT_NAME=admin
export OS_USERNAME=admin
export OS_PASSWORD=000000
export OS_AUTH_URL=http://controller:35357/v3
export OS_IDENTITY_API_VERSION=3
export OS_IMAGE_API_VERSION=2

# 请求令牌`token`
source admin-openrc
openstack token issue

四、Swift 组件安装

4.1 安装 controller 部分组件

# 获得凭证并创建身份认证服务的凭证
source admin-openrc

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

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

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

# 创建对象存储服务 API 端点
openstack endpoint create --region RegionOne object-store public http://controller:8080/v1/AUTH_%tenantids

openstack endpoint create --region RegionOne object-store internal http://controller:8080/v1/AUTH_%tenantids

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

# 安装软件包
apt-get install swift swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached

# 创建 swift 目录
mkdir /etc/swift
# 配置文件
vim /etc/swift/proxy-server.conf
# 删除原有文件,直接添加如下内容
[DEFAULT]
bind_port = 8080
swift_dir = /etc/swift
user = swift
[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:tempauth]
use = egg:swift#tempauth
user_admin_admin = admin .admin .reseller_admin
user_test_tester = testing .admin
user_test2_tester2 = testing2 .admin
user_test_tester3 = testing3
user_test5_tester5 = testing5 service
[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 = 000000
delay_auth_decision = True
[filter:keystoneauth]
use = egg:swift#keystoneauth
operator_roles = admin,user
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:cache]
memcache_servers = controller:11211
use = egg:swift#memcache
[filter:ratelimit]
use = egg:swift#ratelimit
[filter:domain_remap]
use = egg:swift#domain_remap
[filter:catch_errors]
use = egg:swift#catch_errors
[filter:cname_lookup]
use = egg:swift#cname_lookup
[filter:staticweb]
use = egg:swift#staticweb
[filter:tempurl]
use = egg:swift#tempurl
[filter:formpost]
use = egg:swift#formpost
[filter:name_check]
use = egg:swift#name_check
[filter:list-endpoints]
use = egg:swift#list_endpoints
[filter:proxy-logging]
use = egg:swift#proxy_logging
[filter:bulk]
use = egg:swift#bulk
[filter:slo]
use = egg:swift#slo
[filter:dlo]
use = egg:swift#dlo
[filter:container-quotas]
use = egg:swift#container_quotas
[filter:account-quotas]
use = egg:swift#account_quotas
[filter:gatekeeper]
use = egg:swift#gatekeeper
[filter:container_sync]
use = egg:swift#container_sync
[filter:xprofile]
use = egg:swift#xprofile
[filter:versioned_writes]
use = egg:swift#versioned_writes

# 配置文件
vim /etc/swift/swift.conf
# 删除原有文件,直接添加如下内容
[swift-hash]
swift_hash_path_suffix = changeme
swift_hash_path_prefix = changeme
[storage-policy:0]
name = Policy-0
default = yes
aliases = yellow, orange
[swift-constraints]


# 添加权限
chown -R root:swift /etc/swift

4.2 安装 compute 部分组件

# 安装工具包:
apt-get install xfsprogs rsync
# 使用XFS格式化``/dev/sdb``设备:



在这一步需要将虚拟机关闭然后添加一块硬盘



mkfs.xfs /dev/sdb
# 创建挂载点目录结构:
mkdir -p /srv/node/sdb
# 编辑``/etc/fstab``文件并添加以下内容:
/dev/sdb1 /swift/node xfs noatime,nodiratime,nobarrier,logbufs=8 0 0
# 挂载设备
mount /dev/sdb /srv/node/sdb

# 编辑/etc/rsyncd.conf文件并添加以下内容
pid file = /var/run/rsyncd.pid
log file = /var/log/rsyncd.log
uid = swift
gid = swift
address = 127.0.0.1
[account]
path            = /swift/node
read only       = false
write only      = no
list            = yes
incoming chmod  = 0644
outgoing chmod  = 0644
max connections = 25
lock file =     /var/lock/account.lock
[container]
path            = /swift/node
read only       = false
write only      = no
list            = yes
incoming chmod  = 0644
outgoing chmod  = 0644
max connections = 25
lock file =     /var/lock/container.lock
[object]
path            = /swift/node
read only       = false
write only      = no
list            = yes
incoming chmod  = 0644
outgoing chmod  = 0644
max connections = 25
lock file =     /var/lock/object.lock
[swift_server]
path            = /etc/swift
read only       = true
write only      = no
list            = yes
incoming chmod  = 0644
outgoing chmod  = 0644
max connections = 5
lock file =     /var/lock/swift_server.lock

# 编辑 “/etc/default/rsync” 文件和启用 “rsync” 服务:
RSYNC_ENABLE=true

# 启动 “rsync” 服务:
service rsync start

# 编辑 /etc/swift/account-server.conf 文件,删除原有内容,直接添加以下内容
[DEFAULT]
bind_port = 6002
user = swift
swift_dir = /etc/swift
devices = /swift/node
mount_check = false
[pipeline:main]
pipeline = healthcheck recon account-server
[app:account-server]
use = egg:swift#account
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
[account-replicator]
[account-auditor]
[account-reaper]
[filter:xprofile]
use = egg:swift#xprofile

# 编辑/etc/swift/container-server.conf文件,删除原有内容,直接添加以下内容:
[DEFAULT]
bind_port = 6001
user = swift
swift_dir = /etc/swift
devices = /swift/node
mount_check = false
[pipeline:main]
pipeline = healthcheck recon container-server
[app:container-server]
use = egg:swift#container
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
[container-replicator]
[container-updater]
[container-auditor]
[container-sync]
[filter:xprofile]
use = egg:swift#xprofile

# 编辑/etc/swift/object-server.conf文件,删除原有内容,直接添加以下内容:
[DEFAULT]
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /swift/node
mount_check = false
[pipeline:main]
pipeline = healthcheck recon object-server
[app:object-server]
use = egg:swift#object
[filter:healthcheck]
use = egg:swift#healthcheck
[filter:recon]
use = egg:swift#recon
recon_cache_path = /var/cache/swift
recon_lock_path = /var/lock
[object-replicator]
[object-reconstructor]
[object-updater]
[object-auditor]
[filter:xprofile]
use = egg:swift#xprofile

# 编辑文件/etc/swift/swift.conf 删除原有内容,添加如下内容:
[swift-hash]
swift_hash_path_suffix = changeme
swift_hash_path_prefix = changeme
[storage-policy:0]
name = Policy-0
default = yes
aliases = yellow, orange
[swift-constraints]

# 确认挂载点目录结构是否有合适的所有权:
chown -R swift:swift /etc/swift/node
# 创建 “recon” 目录和确保它有合适的所有权:
mkdir -p /var/cache/swift
chown -R root:swift /var/cache/swift
chmod -R 775 /var/cache/swift
chown -R root:swift /etc/swift

4.3 Controller节点创建,分发并初始化rings

# 创建账户ring、切换到 ``/etc/swift``目录。创建基本 account.builder 文件:
cd /etc/swift
swift-ring-builder account.builder create 18 1 1

# 添加每个节点到 ring 中:
swift-ring-builder account.builder add --region 1 --zone 1 --ip 192.168.100.100 --port 6002 --device sdc1 --weight 100

Device d0r1z1-192.168.100.100:6002R192.168.100.100:6002/sdc1_"" with 100.0 weight got id 0
# 验证ring内容
swift-ring-builder account.builder

# 平衡ring
swift-ring-builder account.builder rebalance

# 创建ring容器、切换到 ``/etc/swift``目录。创建基本``container.builder``文件:
cd /etc/swift
swift-ring-builder container.builder create 10 1 1
# 添加每个节点到 ring 中:
swift-ring-builder container.builder add --region 1 --zone 1 --ip 192.168.100.100 --port 6001 --device sdc1 --weight 100

Device d0r1z1-192.168.100.100:6001R192.168.100.100:6001/sdc1_"" with 100.0 weight got id 0

# 验证 ring 的内容:
swift-ring-builder container.builder


# 平衡 ring:
swift-ring-builder container.builder rebalance

# 创建Ring对象、切换到 ``/etc/swift``目录。创建基本``object.builder``文件:
swift-ring-builder object.builder create 10 1 1
# 添加每个节点到 ring 中:
swift-ring-builder object.builder add --region 1 --zone 1 --ip 192.168.100.100 --port 6000 --device sdc1 --weight 100

Device d0r1z1-192.168.100.100:6000R192.168.100.100:6000/sdc1_"" with 100.0 weight got id 0

# 验证 ring 的内容:
swift-ring-builder object.builder

# 平衡 ring:
swift-ring-builder object.builder rebalance

4.4 启动服务

service memcached restart
service swift-proxy restart
swift-init all start

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/721926
推荐阅读
相关标签
  

闽ICP备14008679号