GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Swift #1

Der Swift AKA OpenStack Object Storage ist ein mandantenfähiges Objektspeichersystem, das einen verteilten Scale-out-Objektspeicher über Speicherknoten im Cluster bietet. Diese Anleitung hilft Ihnen bei der Konfiguration von Swift unter Ubuntu 14.04.2.

Es gibt zwei Hauptkomponenten in Swift:

Swift-Proxy:

Es akzeptiert API- und Raw-HTTP-Anforderungen, um Dateien hochzuladen, Metadaten zu ändern und Container zu erstellen. Da die Anforderungen über die REST-API erfolgen, werden HTTP-Verben mit einfachen Befehlen wie PUT und GET verwendet. Wenn der Benutzer zu schreibende Daten sendet, wird die Anfrage an den Proxy-Server gesendet und der perfekte Speicherknoten zum Speichern der Daten ausgewählt. Sie können mehrere Proxy-Server für Leistung und Redundanz haben. In unserem Fall verwenden wir den Controller-Knoten als schnellen Proxy-Server.

Speicherknoten:

Hier werden die Benutzerdaten gespeichert, Sie können mehrere Speicherknoten in Ihrer Umgebung haben. Swift ist ein replikationsbasiertes System, alle darin gespeicherten Daten werden mehrfach gespeichert (Replikate), um eine hohe Datenverfügbarkeit zu gewährleisten.

Voraussetzungen:

Das Folgende ist die Netzwerkkonfiguration des Proxy- und Speicherknotens, der Speicherknoten hat eine Netzwerkschnittstelle im Verwaltungsnetzwerk.

Rolle NW-Karte 1
Proxy-Server (Controller-Knoten) 192.168.12.21/24, GW=192.168.12.2
(Verwaltungsnetzwerk)
Objektspeicherknoten 1 192.168.12.25 / 24, GW=192.168.12.2
(Verwaltungsnetzwerk)
Objektspeicherknoten 1 192.168.12.26 / 24, GW=192.168.12.2
(Verwaltungsnetzwerk)
Objektspeicherknoten 1 192.168.12.27 / 24, GW=192.168.12.2
(Verwaltungsnetzwerk)

Installieren und konfigurieren Sie den Swift-Proxy auf dem Controller-Knoten:

Laden Sie Ihre Admin-Anmeldeinformationen aus dem Umgebungsskript.

# source admin-openrc.sh

Erstellen Sie den Swift-Benutzer zum Erstellen von Service-Anmeldeinformationen.

# openstack user create --password-prompt swift
User Password:
Repeat User Password:
+----------+----------------------------------+
| Field    | Value                            |
+----------+----------------------------------+
| email    | None                             |
| enabled  | True                             |
| id       | 023c019a62f3476d986627e8615b034f |
| name     | swift                            |
| username | swift                            |
+----------+----------------------------------+

Fügen Sie dem Swift-Benutzer die Administratorrolle hinzu.

# openstack role add --project service --user swift admin
+-------+----------------------------------+
| Field | Value                            |
+-------+----------------------------------+
| id    | 33af4f957aa34cc79451c23bf014af6f |
| name  | admin                            |
+-------+----------------------------------+

Erstellen Sie die Swift-Service-Entität.

# openstack service create --name swift --description "OpenStack Object Storage" object-store
+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Object Storage         |
| enabled     | True                             |
| id          | b835a5fbfe3d4a9592f6dbd69ddb148d |
| name        | swift                            |
| type        | object-store                     |
+-------------+----------------------------------+

Erstellen Sie den API-Endpunkt des Object Storage-Dienstes.

# openstack endpoint create --publicurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' --internalurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' --adminurl http://controller:8080 --region RegionOne  object-store

+--------------+----------------------------------------------+
| Field        | Value                                        |
+--------------+----------------------------------------------+
| adminurl     | http://controller:8080                       |
| id           | d250217af148491abc611e2b72a227b8             |
| internalurl  | http://controller:8080/v1/AUTH_%(tenant_id)s |
| publicurl    | http://controller:8080/v1/AUTH_%(tenant_id)s |
| region       | RegionOne                                    |
| service_id   | b835a5fbfe3d4a9592f6dbd69ddb148d             |
| service_name | swift                                        |
| service_type | object-store                                 |
+--------------+----------------------------------------------+

Installieren Sie die Pakete auf dem Controller-Knoten.

# apt-get install swift swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached

Erstellen Sie das Verzeichnis /etc/swift.

# mkdir /etc/swift

Holen Sie sich die Proxy-Konfigurationsdatei aus dem Quell-Repository.

# curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/kilo

Bearbeiten Sie die Datei /etc/swift/proxy-server.conf.

# nano /etc/swift/proxy-server.conf

Ändern Sie die folgenden Einstellungen und stellen Sie sicher, dass Sie Einträge in den richtigen Abschnitten platzieren. Manchmal müssen Sie möglicherweise Abschnitte hinzufügen, wenn diese nicht vorhanden sind, und Sie müssen auch einige Einträge hinzufügen, die in der Datei fehlen, nicht alle.

[DEFAULT]
...
bind_port = 8080
user = swift
swift_dir = /etc/swift

[pipeline:main]
pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo proxy-logging proxy-server

[app:proxy-server]
...
account_autocreate = true

[filter:keystoneauth]
use = egg:swift#keystoneauth
...
operator_roles = admin,user

[filter:authtoken]
paste.filter_factory = keystonemiddleware.auth_token:filter_factory
...
auth_uri = http://controller:5000
auth_url = http://controller:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = swift
password = password
## Replace "password" with the password you chose for swift user in the identity service
delay_auth_decision = true
## Comment out or remove any other options in the [filter:authtoken] section

[filter:cache]
...
memcache_servers = 127.0.0.1:11211

Das ist alles!!!, in unserem nächsten Tutorial werden wir Speicherknoten konfigurieren.


Ubuntu
  1. OpenStack Liberty auf Ubuntu 14.04 LTS – Nova konfigurieren

  2. Installieren Sie OpenStack Kilo auf Ubuntu 14.04.2

  3. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Cinder #2

  4. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Cinder #1

  5. OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Horizon

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie Neutron #1

OpenStack Kilo auf Ubuntu 14.04.2 – Nova konfigurieren

OpenStack Kilo auf Ubuntu 14.04.2 – Glance konfigurieren

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie KeyStone #2

OpenStack Kilo auf Ubuntu 14.04.2 – Konfigurieren Sie KeyStone #1

OpenStack Liberty auf Ubuntu 14.04 – Konfigurieren Sie Neutron #2