使用Keystone认证多节点安装Swift

本文详细介绍了如何在Ubuntu Server 11.10环境下部署OpenStack Swift和Keystone,包括创建用户、下载源码、安装软件、配置Swift和Keystone等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载请写明出处:http://blog.youkuaiyun.com/cywosp/article/details/7439440
注意:下面被标红色的地方由于博客编辑器的原因出现了多余的信息
1.  摘要说明
本文所涉及到的所有操作都是在Ubuntu Server 11.10 64位系统上通过验证。本文参考了Openstack keystone的相关文档,具体信息如下:
[plain]  view plain copy
  1. Linux系统版本:Ubuntu Server 11.10 64-bit oneiric  
  2. Proxy Server IP:        192.168.112.129  
  3. Storage Server One:     192.168.112.130  
  4. Storage Server Two:     192.168.112.131  
  5. Storage Server Three:   192.168.112.132  
  6. Keystone Server IP:     192.168.112.133  
  7. 官方文档:      www.openstack.org  
  8. 参考文档:      http://keystone.openstack.org/installing.html  
  9. Swift版本:       1.4.8  
  10. Keystone版本:    2012.2  

2.  为每一台机器创建swift用户

[plain]  view plain copy
  1. sudo useradd -mk /home/swift/ -s /bin/bash swift  
  2. sudo passwd swift       #为swift用户添加密码,在此我将其设为了swift  
  3.   
  4. 编辑/etc/sudoer文件,在文件末尾添加如下代码  
  5. swift ALL=(ALL) NOPASSWD:ALL  
3.  下载源码(在swift用户下操作)

[plain]  view plain copy
  1. 1.安装git工具  
  2. sudo apt-get install git-core  
  3.   
  4. 2.在Proxy机器中下载keystone和swift源码  
  5. su swift        #切换到swift用户  
  6. sudo mkdir /home/swift/openstack        #创建一个目录来存放  
  7. cd /home/swift/openstack  
  8. git clone https://github.com/openstack/swift.git    #下载swift  
  9. cd swift  
  10. git checkout 1.4.8      #使用1.4.8版本,在swift目录下你可以  
  11. #使用git tag命令查看有多少个版本  
  12.   
  13. git clone https://github.com/openstack/keystone.git   
  14. cd keystone  
  15. git checkout 75a8dfe  
  16.   
  17. 3.在每一台Storage节点的机器中下载swift  
  18. su swift        #切换到swift用户  
  19. sudo mkdir /home/swift/openstack        #创建一个目录来存放  
  20. cd /home/swift/openstack  
  21. git clone https://github.com/openstack/swift.git    #下载swift  
  22. cd swift  
  23. git checkout 1.4.8      #使用1.4.8版本,在swift目录下你可以  
  24. #使用git tag命令查看有多少个版本  
  25.   
  26. 4.在Auth (keystone)节点的机器中下载keystone和python-keystoneclient  
  27. su swift        #切换到swift用户  
  28. sudo mkdir /home/swift/openstack        #创建一个目录来存放  
  29. cd /home/swift/openstack  
  30. git clone https://github.com/openstack/keystone.git   
  31. cd keystone  
  32. git checkout 75a8dfe  
  33.   
  34. git clone https://github.com/openstack/python-keystoneclient.git  
  35. cd /home/swift/openstack/python-keystoneclient  

4.  安装swift和keystone以及相关依赖包(在swift用户下操作)

[plain]  view plain copy
  1. 1.所有Storage节点上的安装  
  2. sudo apt-get --option Dpkg::Options::=--force-confold --assume-yes update  
  3. sudo apt-get install pep8 pylint python-pip screen unzip wget psmisc git-core lsof vim-nox curl python-mysqldb  
  4.   
  5. cd /home/swift/openstack/  
  6. sudo pip install -r ./swift/tools/ pip-requires #安装swift的相关依赖,这里可能需要点时间  
  7. #安装swift  
  8. cd /home/swift/openstack/swift  
  9. sudo python setup.py install --record file.txt  #假如要删除所安装的东西需要用root用户来删除,删除方法:  
  10. sudo cat file.txt | xargs rm -rf  
  11.   
  12. 2.Proxy节点上的安装  
  13. sudo apt-get --option Dpkg::Options::=--force-confold --assume-yes update  
  14. sudo apt-get install pep8 pylint python-pip screen unzip wget psmisc git-core lsof vim-nox curl python-mysqldb  
  15.   
  16. cd /home/swift/openstack/  
  17. sudo pip install -r ./swift/tools/ pip-requires  
  18. cd /home/swift/openstack/swift  
  19. sudo python setup.py install --record file.txt  
  20.   
  21. cd /home/swift/openstack/keystone  
  22. sudo pip install -r ./tools/pip-requires  
  23. sudo python setup.py install --record file.txt  
  24.   
  25. 3.Auth(Keystone)节点的安装  
  26. sudo apt-get --option Dpkg::Options::=--force-confold --assume-yes update  
  27. sudo apt-get install pep8 pylint python-pip screen unzip wget psmisc git-core lsof vim-nox curl python-mysqldb mysql-server mysql-client  
  28.   
  29. cd /home/swift/openstack/  
  30. sudo pip install -r ./keystone/tools/pip-requires  
  31. sudo pip install -r ./ python-keystoneclient/tools/pip-requires  
  32.   
  33. cd /home/swift/openstack/python-keystoneclient/  
  34. sudo python setup.py install --record file.txt  
  35. cd /home/swift/openstack/keystone  
  36. sudo python setup.py install --record file.txt  

5.  Proxy节点的设置(192.168.112.129)

[plain]  view plain copy
  1. 1.sudo apt-get install memcached        #安装缓存服务器  
  2. 修改/etc/ memcached.conf文件,将-l 127.0.0.1改为-l 192.168.112.129(这里我是根据我自己的情况设定的,具体原因见第一点中的图)  
  3. sudo service memcached restart  
  4.   
  5. sudo mkdir  /etc/swift  
  6. cd  /etc/swift  
  7. sudo chown -R swift:swift /etc/swift  
  8. cp  /home/swift/openstack/swift/etc/proxy-server.conf /etc/swift/  
  9. cp  /home/swift/openstack/swift/etc/swift.conf /etc/swift/  
  10.   
  11. 2.修改/etc/swift/proxy-server.conf文件,具体内容如下,原文件中没有的项需要自行增加  
  12. [DEFAULT]  
  13. bind_port = 8080  
  14. user = swift  
  15. swift_dir = /etc/swift  
  16. workers = 1  
  17.   
  18. [pipeline:main]  
  19. pipeline = healthcheck cache swift3 authtoken keystone proxy-server  
  20.   
  21. [app:proxy-server]  
  22. use = egg:swift#proxy  
  23. allow_account_management = true  
  24. account_autocreate = true  
  25.   
  26. [filter:keystone]  
  27. paste.filter_factory = keystone.middleware.swift_auth:filter_factory  
  28. operator_roles = Member,admin  
  29.   
  30. [filter:authtoken]  
  31. paste.filter_factory = keystone.middleware.auth_token:filter_factory  
  32. auth_host =<span style="background-color: rgb(255, 255, 255);"> </span><span style="background-color: rgb(204, 204, 204);">192.168.112.133</span>  
  33. auth_port = 35357  
  34. auth_protocol = http  
  35. auth_uri = http://192.168.112.133:5000/  
  36. admin_tenant_name = service  
  37. admin_user = swift  
  38. admin_password = admin  
  39.   
  40. [filter:swift3]  
  41. use = egg:swift#swift3  
  42.   
  43. [filter:healthcheck]  
  44. use = egg:swift#healthcheck  
  45.   
  46. [filter:cache]  
  47. use = egg:swift#memcache  
  48.   
  49. 192.168.112.133部分为Auth(Keystone)节点的IP  
  50. 3.修改/etc/swift/swift.conf,‘cynric’部分是随意更改的,你可以根据自己的需要更改  
  51. [swift-hash]  
  52. swift_hash_path_suffix = cynric  
  53.   
  54. 4.生成相关ring以及builder文件,使用如下命令生成,加粗部分是根据具体情况而更改的,具体原因见摘要说明里的图。每一台机器使用一个域(z1, z2, z3…依次递增)  
  55. sudo chown -R swift:swift /etc/swift/*  
  56. cd  /etc/swift  
  57. swift-ring-builder object.builder create 18 3 1  
  58. swift-ring-builder container.builder create 18 3 1  
  59. swift-ring-builder account.builder create 18 3 1  
  60.   
  61. export HOST_IP=192.168.112.130  
  62. swift-ring-builder object.builder add z1-${HOST_IP}:6010/sdb1 100  
  63. swift-ring-builder container.builder add z1-${HOST_IP}:6011/sdb1 100  
  64. swift-ring-builder account.builder add z1-${HOST_IP}:6012/sdb1 100  
  65.   
  66. export HOST_IP=192.168.112.131  
  67. swift-ring-builder object.builder add z2-${HOST_IP}:6010/sdb1 100  
  68. swift-ring-builder container.builder add z2-${HOST_IP}:6011/sdb1 100  
  69. swift-ring-builder account.builder add z2-${HOST_IP}:6012/sdb1 100  
  70.   
  71. export HOST_IP=192.168.112.132  
  72. swift-ring-builder object.builder add z3-${HOST_IP}:6010/sdb1 100  
  73. swift-ring-builder container.builder add z3-${HOST_IP}:6011/sdb1 100  
  74. swift-ring-builder account.builder add z3-${HOST_IP}:6012/sdb1 100  
  75.   
  76. swift-ring-builder object.builder rebalance  
  77. swift-ring-builder container.builder rebalance  
  78. swift-ring-builder account.builder rebalance  
  79.   
  80. 5.启动proxy服务  
  81. swift-init  proxy  start  

6.  配置Storage节点

因为每个Storage节点的设置基本上是相似的,所以在这里只拿其中一个节点做示例(192.168.112.130),其他节点只需要重复一下几步操作就可以了

[plain]  view plain copy
  1. 1.创建/etc/swift目录  
  2. sudo mkdir /etc/swift  
  3. sudo chown -R swift:swift /etc/swift/*  
  4.   
  5. 2.将Proxy节点上/etc/swift/中的account.ring.gz container.ring.gz  
  6. object.ring.gz  swift.conf拷贝到当前存储节点(192.168.112.130) /etc/swift目录中,可使用如下命令  
  7. scp  swift@192.168.112.129:/etc/swift/*.ring.gz  /etc/swift/  
  8. scp  swift@192.168.112.129:/etc/swift/swift.conf  /etc/swift/  
  9. sudo chown -R swift:swift /etc/swift/*  
  10.   
  11. 3.更改/etc/rsyncd.conf文件,如果该文件不存在则需要自行创建,内容如下  
  12. uid = swift  
  13. gid = swift  
  14. log file = /var/log/rsyncd.log  
  15. pid file = /var/run/rsyncd.pid  
  16. address = 127.0.0.1 #这里也可以改为192.168.112.130  
  17.   
  18. [account]  
  19. max connections = 2  
  20. path = /srv/node/  
  21. read only = false  
  22. lock file = /var/lock/account.lock  
  23.   
  24. [conainer]  
  25. max connections = 2  
  26. path = /srv/node/  
  27. read only = false  
  28. lock file = /var/lock/container.lock  
  29.   
  30. [object]  
  31. max connections = 2  
  32. path = /srv/node/  
  33. read only = false  
  34. lock file = /var/lock/object.lock  
  35.   
  36. 编辑/etc/default/rsync:  
  37. 将RSYNC_ENABLE设置为true  
  38.   
  39. 更改好之后,重启该服务  
  40. sudo service rsync restart  
  41.   
  42. 4.存储点的设置  
  43. 这里有分两种情况来设置存储点  
  44. a.假设你的系统里有一个单独分区,使用此分区来做存储点,在这里假设系统中有/dev/sdb1(注:这里根据你自己系统的情况而定)这个分区未被使用,我们用它来做存储点。  
  45. sudo mkdir -p /srv/node/sdb1  
  46. sudo mkfs.xfs -i size=1024 /dev/sdb1 #以xfs方式格式化分区  
  47. sudo chmod a+w /etc/fstab  
  48. sudo echo “/dev/sdb1 /srv/node/sdb1 xfs noatime,nodiratime  
  49. nobarrier,logbufs=8 0 0” >> /etc/fstab  #系统启动时自动挂载,这里的sdb1是一定不能改的,因为在做Proxy节点生成相应的ring文件时使用了sdb1 (swift-ring-builder object.builder add z1-${HOST_IP}:6010/sdb1 100)的时候,加入需要更改则两个地方都需要改  
  50.           
  51. sudo mount /srv/node/sdb1  
  52. sudo chown -R swift:swift /srv/node/sdb1  
  53. sudo chmod a+w -R /srv/node/sdb1  
  54.   
  55. b.如果系统里没有单独的分区来做存储点,则需要创建一个临时分区来做存储点  
  56. sudo mkdir -p /srv/node/sdb1  
  57. sudo dd if=/dev/zero of=/srv/swift-disk bs=1024 count=0 seek=1000000 #这个命令是在/srv/下创建一个名为swift-disk的存储区,你可以改变seek的大小来改变swift-disk的大小  
  58.   
  59. sudo mkfs.xfs -i size=1024 /srv/swift-disk  
  60. sudo chmod a+w /etc/fstab  
  61. sudo echo “/srv/swift-disk /srv/node/sdb1 xfs loop,noatime,nodiratime,nobarrier,logbufs=8 0 0” >> /etc/fstab    #系统启动时自动挂载  
  62.   
  63. sudo mount /srv/node/sdb1  
  64. sudo chown -R swift:swift /srv/node/sdb1  
  65. sudo chmod a+w -R /srv/node/sdb1  
  66. sudo chmod a+w /srv/swift-disk  
  67.           
  68. c.创建相关的目录  
  69. sudo mkdir /var/run/swift  
  70. sudo chown swift:swift /var/run/swift  
  71. sudo chmod a+w /var/run/swift  
  72.           
  73. d.在/etc/rc.local的exit 0之前加入下列三行  
  74. mkdir /var/run/swift  
  75. chown swift:swift /var/run/swift  
  76. chmod a+w /var/run/swift  
  77.   
  78. 5.Swift文件配置  
  79. 创建/etc/swift/account-server.conf文件,并加入如下配置  
  80. [DEFAULT]  
  81. devices = /srv/node  
  82. mount_check = false  
  83. bind_port = 6012  
  84. user = swift  
  85. bind_ip = 0.0.0.0  
  86. workers = 2  
  87.   
  88. [pipeline:main]  
  89. pipeline = account-server  
  90.   
  91. [app:account-server]  
  92. use = egg:swift#account  
  93.   
  94. [account-replicator]  
  95.   
  96. [account-auditor]  
  97.   
  98. [account-reaper]  
  99.   
  100. 创建/etc/swift/object-server.conf文件  
  101. [DEFAULT]  
  102. devices = /srv/node  
  103. mount_check = false  
  104. bind_port = 6010  
  105. user = swift  
  106. bind_ip = 0.0.0.0  
  107. workers = 2  
  108.   
  109. [pipeline:main]  
  110. pipeline = object-server  
  111.   
  112. [app:object-server]  
  113. use = egg:swift#object  
  114.   
  115. [object-replicator]  
  116.   
  117. [object-updater]  
  118.   
  119. [object-auditor]  
  120.   
  121. 创建/etc/swift/ container-server.conf文件  
  122. [DEFAULT]  
  123. devices = /srv/node  
  124. mount_check = false  
  125. bind_port = 6011  
  126. user = swift  
  127. bind_ip = 0.0.0.0  
  128. workers = 2  
  129.   
  130. [pipeline:main]  
  131. pipeline = container-server  
  132.   
  133. [app:container-server]  
  134. use = egg:swift#container  
  135.   
  136. [container-replicator]  
  137.   
  138. [container-updater]  
  139.   
  140. [container-auditor]  
  141.   
  142. [container-sync]  
  143.   
  144. 6.启动swift服务  
  145. sudo chown -R swift:swift /etc/swift/*  
  146.   
  147. swift-init all start  
  148. #当启动的时候可能会报WARNING: Unable to increase file descriptor limit.  Running as non-root?  这是正常情况  
7.  Auth(Keystone)节点的配置

[plain]  view plain copy
  1. sudo mkdir /etc/keystone  
  2. sudo chown -R swift:swift /etc/keystone  
  3. cp -r /home/swift/openstack/keystone/etc/* /etc/keystone  
  4.   
  5. 1.修改/etc/keystone/keystone.conf文件  
  6. 将connection = sqlite:///keystone.db更改为  
  7. connection = mysql://keystone:keystone@127.0.0.1/keystone  
  8.   
  9. 将[identity]下的driver设置成如下  
  10. driver = keystone.identity.backends.sql.Identity  
  11.   
  12. 将[catalog]下的driver设置成如下  
  13. driver = keystone.catalog.backends.sql.Catalog  
  14.   
  15. 其他的保持不变即可  
  16. 2.Mysql的设置  
  17. mysql -u root -p        #以root身份登录mysql数据库  
  18. 在数据库中做如下操作  
  19. CREATE DATABASE keystone;  
  20. GRANT ALL ON keystone.* TO 'keystone'@'%' IDENTIFIED BY 'keystone';  
  21. commit;  
  22.   
  23. 修改/etc/mysql/my.conf文件  
  24. 将bind-address = 127.0.0.1改为bind-address = 0.0.0.0  
  25.   
  26. 重启mysql服务  
  27. sudo service mysql restart  
  28.   
  29. 3.同步数据库创建相应的数据库表  
  30.     keystone-manage db_sync  
  31.     #执行成功之后,在mysql的keystone数据库中将会创建一下表,你可以登 陆数据库查看  
  32.     +------------------------+  
  33.     | Tables_in_keystone     |  
  34.     +------------------------+  
  35.     | ec2_credential         |  
  36.     | endpoint               |  
  37.     | metadata               |  
  38.     | migrate_version        |  
  39.     | role                   |  
  40.     | service                |  
  41.     | tenant                 |  
  42.     | token                  |  
  43.     | user                   |  
  44.     | user_tenant_membership |  
  45.     +------------------------+  
  46.   
  47. 4.创建相应的keystone用户以及keystone服务端点  
  48. #!/usr/bin/env bash  
  49.   
  50. ADMIN_PASSWORD=admin  
  51. ENABLE_SWIFT=1  
  52. ENABLE_ENDPOINTS=1  
  53.   
  54. KEYSTONE_CONF=${KEYSTONE_CONF:-/etc/keystone/keystone.conf}  
  55. SERVICE_PASSWORD=${SERVICE_PASSWORD:-$ADMIN_PASSWORD}  
  56.   
  57. # Extract some info from Keystone's configuration file  
  58. if [[ -r "$KEYSTONE_CONF" ]]; then  
  59.     CONFIG_SERVICE_TOKEN=$(sed 's/[[:space:]]//g' $KEYSTONE_CONF | grep ^admin_token= | cut -d'=' -f2)  
  60.     CONFIG_ADMIN_PORT=$(sed 's/[[:space:]]//g' $KEYSTONE_CONF | grep ^admin_port= | cut -d'=' -f2)  
  61. fi  
  62.   
  63. export SERVICE_TOKEN=${SERVICE_TOKEN:-$CONFIG_SERVICE_TOKEN}  
  64. if [[ -z "$SERVICE_TOKEN" ]]; then  
  65.     echo "No service token found."  
  66.     echo "Set SERVICE_TOKEN manually from keystone.conf admin_token."  
  67.     exit 1  
  68. fi  
  69.   
  70. export SERVICE_ENDPOINT=${SERVICE_ENDPOINT:-http://127.0.0.1:${CONFIG_ADMIN_PORT:-35357}/v2.0}  
  71.   
  72. function get_id () {  
  73.     echo `"$@" | grep ' id ' | awk '{print $4}'`  
  74. }  
  75.   
  76. # Tenants  
  77. ADMIN_TENANT=$(get_id keystone tenant-create --name=admin)  
  78. SERVICE_TENANT=$(get_id keystone tenant-create --name=service)  
  79. DEMO_TENANT=$(get_id keystone tenant-create --name=demo)  
  80.   
  81.   
  82. # Users  
  83. ADMIN_USER=$(get_id keystone user-create --name=admin \  
  84.                                          --pass="$ADMIN_PASSWORD" \  
  85.                                          --email=admin@example.com)  
  86. DEMO_USER=$(get_id keystone user-create --name=demo \  
  87.                                         --pass="$ADMIN_PASSWORD" \  
  88.                                         --email=admin@example.com)  
  89.   
  90. # Roles  
  91. ADMIN_ROLE=$(get_id keystone role-create --name=admin)  
  92. MEMBER_ROLE=$(get_id keystone role-create --name=Member)  
  93. KEYSTONEADMIN_ROLE=$(get_id keystone role-create --name=KeystoneAdmin)  
  94. KEYSTONESERVICE_ROLE=$(get_id keystone role-create --name=KeystoneServiceAdmin)  
  95. SYSADMIN_ROLE=$(get_id keystone role-create --name=sysadmin)  
  96.   
  97. # Add Roles to Users in Tenants  
  98. keystone user-role-add --user $ADMIN_USER --role $ADMIN_ROLE --tenant_id $ADMIN_TENANT  
  99. keystone user-role-add --user $DEMO_USER --role $MEMBER_ROLE --tenant_id $DEMO_TENANT  
  100. keystone user-role-add --user $DEMO_USER --role $SYSADMIN_ROLE --tenant_id $DEMO_TENANT  
  101. keystone user-role-add --user $ADMIN_USER --role $ADMIN_ROLE --tenant_id $DEMO_TENANT  
  102.   
  103. # TODO(termie): these two might be dubious  
  104. keystone user-role-add --user $ADMIN_USER --role $KEYSTONEADMIN_ROLE --tenant_id $ADMIN_TENANT  
  105. keystone user-role-add --user $ADMIN_USER --role $KEYSTONESERVICE_ROLE --tenant_id $ADMIN_TENANT  
  106.   
  107.   
  108. # Services  
  109. KEYSTONE_SERVICE=$(get_id \  
  110. keystone service-create --name=keystone \  
  111.                         --type=identity \  
  112.                         --description="Keystone Identity Service")  
  113. if [[ -n "$ENABLE_ENDPOINTS" ]]; then  
  114.     keystone endpoint-create --region RegionOne --service_id $KEYSTONE_SERVICE \  
  115.         --publicurl 'http://localhost:$(public_port)s/v2.0' \  
  116.         --adminurl 'http://localhost:$(admin_port)s/v2.0' \  
  117.         --internalurl 'http://localhost:$(admin_port)s/v2.0'  
  118. fi  
  119.   
  120. if [[ -n "$ENABLE_SWIFT" ]]; then  
  121.     SWIFT_SERVICE=$(get_id keystone service-create --name=swift \  
  122.                             --type="object-store" \  
  123.                             --description="Swift Service")  
  124.     SWIFT_USER=$(get_id keystone user-create --name=swift \  
  125.                                              --pass="$SERVICE_PASSWORD" \  
  126.                                              --tenant_id $SERVICE_TENANT \  
  127.                                              --email=swift@example.com)  
  128.     keystone user-role-add --tenant_id $SERVICE_TENANT \  
  129.                            --user $SWIFT_USER \  
  130.                            --role $ADMIN_ROLE  
  131.     keystone endpoint-create --region RegionOne --service_id $SWIFT_SERVICE \  
  132.         --publicurl 'http://192.168.112.129:8080/v1/AUTH_$(tenant_id)s' \  
  133.         --adminurl 'http://192.168.112.129:8080/' \  
  134.         --internalurl 'http://192.168.112.129:8080/v1/AUTH_$(tenant_id)s'  
  135. fi                                                 
  136.     将以上shell代码拷贝到一个文件中,然后执行(在Auth(Keystone)主机中)。  
  137.     其创建了以下主要关系的数据:  
  138.     Tenant               User      Roles             password  
  139.     -----------------------------------------------------------  
  140.     admin                admin     admin             admin  
  141.     service              swift     admin             admin         
  142.     demo                 admin     admin             admin  
  143.     demo                 demo      Member,sysadmin   admin  

注意:在创建swift的endpoint时,各个url所指向的必须是Proxy节点,   例如上面IP地址(192.168.112.129)。如果有多个Proxy节点则需要加入多个endpoint。

8.  开启各个节点的服务(swift用户下操作)

Proxy节点:swift-init  proxy  start

各个Storage节点:swift-init  all  start

Auth(Keystone)节点:

    sudo  screen  -S  keystone  #创建一个名为keystone的临时终端,这样 可以隐藏多余的打印信息

    su  swift   #切换到swift用户

    keystone-all   #这里会输出很多信息,调试的时候可以用到

    迅速按下Ctrl+a  Ctrl+d键,此时会返回类似于这样的信息[detached from 4334.key],记住红色部分的编号,要想恢复原来keystone临时终   端时可以使用命令:sudo screen -r 4334

9.  验证与使用

a.  验证整个存储架构是否成功(在Proxy节点上或者安装了swift的节点上操作)

swift  -A  http://192.168.112.133:5000/v2.0 -U admin -K admin stat -V 2

执行成功会返回类似如下的信息:

Account:AUTH_308722b8cc8747a5afdd9b7b1f6155e8

Containers:0

Objects:0

Bytes:0

Accept-Ranges:bytes


b.  用curl测试

[plain]  view plain copy
  1. curl -d '{"auth": {"tenantName": "admin", "passwordCredentials":{"username": "admin", "password": "admin"}}}' -H "Content-type: application/json" http://192.168.112.133:35357/v2.0/tokens | python -mjson.tool  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值