OpenStack: Implementing the Swift Object Storage Service

From Define Wiki
Jump to navigation Jump to search
[root@server2-a ~]# source /root/keystonerc_admin 
[root@server2-a ~(keystone_admin)]$ yum -y install openstack-swift-proxy openstack-swift-object openstack-swift-container openstack-swift-account python-swiftclient memcached
[root@server2-a ~(keystone_admin)]$ keystone user-create --name swift --pass redhat
+----------+----------------------------------+
| Property |              Value               |
+----------+----------------------------------+
|  email   |                                  |
| enabled  |               True               |
|    id    | 996dd8f7f8e24c9284b817a2528ab48e |
|   name   |              swift               |
| username |              swift               |
+----------+----------------------------------+
[root@server2-a ~(keystone_admin)]$ keystone role-list | grep admin
| aa517e1dd8734414bbf35e834a16d952 |  admin   |
[root@server2-a ~(keystone_admin)]$ keystone role-create --name admin
Conflict occurred attempting to store role. (IntegrityError) (1062, "Duplicate entry 'admin' for key 'name'") 'INSERT INTO role (id, name, extra) VALUES (%s, %s, %s)' ('a9888544bfea44a8b95ebb6bea45221a', 'admin', '{}') (HTTP 409)
[root@server2-a ~(keystone_admin)]$ keystone tenant-list | grep services
[root@server2-a ~(keystone_admin)]$ keystone tenant-create --name services
+-------------+----------------------------------+
|   Property  |              Value               |
+-------------+----------------------------------+
| description |                                  |
|   enabled   |               True               |
|      id     | a9b089ede5e5494b9b87c3e9894843f5 |
|     name    |             services             |
+-------------+----------------------------------+
[root@server2-a ~(keystone_admin)]$ keystone user-role-add --role admin --tenant services --user swift
[root@server2-a ~(keystone_admin)]$ keystone service-list | grep swift
[root@server2-a ~(keystone_admin)]$ keystone service-create --name swift --type object-store --description "Swift Storage Device"
+-------------+----------------------------------+
|   Property  |              Value               |
+-------------+----------------------------------+
| description |       Swift Storage Device       |
|   enabled   |               True               |
|      id     | c0e1311f73bd4268a610107149134357 |
|     name    |              swift               |
|     type    |           object-store           |
+-------------+----------------------------------+
[root@server2-a ~(keystone_admin)]$ keystone endpoint-create --service-id c0e1311f73bd4268a610107149134357 --publicurl "http://server2-a.example.com:8080/v1/AUTH_%(tenant_id)s" --adminurl "http://server2-a.example.com:8080/v1/AUTH_%(tenant_id)s" --internalurl "http://server2-a.example.com:8080/v1/AUTH_%(tenant_id)s"
+-------------+---------------------------------------------------------+
|   Property  |                          Value                          |
+-------------+---------------------------------------------------------+
|   adminurl  | http://server2-a.example.com:8080/v1/AUTH_%(tenant_id)s |
|      id     |             972a791fe67840acb0aef7c69d6b547c            |
| internalurl | http://server2-a.example.com:8080/v1/AUTH_%(tenant_id)s |
|  publicurl  | http://server2-a.example.com:8080/v1/AUTH_%(tenant_id)s |
|    region   |                        regionOne                        |
|  service_id |             c0e1311f73bd4268a610107149134357            |
+-------------+---------------------------------------------------------+