[ English | Indonesia | Deutsch | 日本語 ]

Die Lage des Landes

Dieses Kapitel hilft Ihnen, Ihre Arbeitsumgebung einzurichten und damit einen Blick in Ihre Cloud zu werfen.

Verwendung des OpenStack Dashboards für die Administration

Als administrativer Cloud-Benutzer können Sie das OpenStack-Dashboard verwenden, um Projekte, Benutzer, Abbilder und Varianten zu erstellen und zu verwalten. Benutzer dürfen Abbilder innerhalb bestimmter Projekte erstellen und verwalten und Abbilder gemeinsam nutzen, je nach Konfiguration des Abbilddienstes. In der Regel erlaubt die Richtlinienkonfiguration es Admin-Benutzern, nur Quoten festzulegen und Dienste zu erstellen und zu verwalten. Das Dashboard bietet eine Registerkarte Admin mit einem System Panel und einer Registerkarte Identity. Diese Schnittstellen bieten Ihnen Zugriff auf Systeminformationen und -verwendung sowie auf Einstellungen zur Konfiguration der Möglichkeiten von Endbenutzern. Ausführliche Informationen zur Verwendung des Dashboards als Admin-Benutzer finden Sie im Horizon Administration Guide.

Befehlszeilen-Tools

Wir empfehlen, für die Administration eine Kombination aus den OpenStack-Command-line Interface (CLI)-Tools und dem OpenStack Dashboard zu verwenden. Einige Benutzer mit Hintergrund in anderen Cloud-Technologien verwenden möglicherweise die EC2 Compatibility API, die Namenskonventionen verwendet, die sich etwas von der ursprünglichen API unterscheiden.

Das Pip-Utility wird zur Verwaltung der Paketinstallation aus dem PyPI-Archiv verwendet und ist im Python-Pip-Paket in den meisten Linux-Distributionen verfügbar. Obwohl jedes OpenStack-Projekt seinen eigenen Client hat, wird es zugunsten eines gemeinsamen OpenStack-Clients abgelehnt. Es wird generell empfohlen, den OpenStack-Client zu installieren.

OpenStack Befehlszeilen-Clients installieren

Anweisungen zum Installieren, Aktualisieren oder Entfernen von Befehlszeilen-Clients finden Sie unter Installieren des OpenStack-Kommandozeilen-Clients.

Bemerkung

Wenn Sie die EC2-API in Ihrer Cloud unterstützen, sollten Sie auch das euca2ools-Paket oder ein anderes EC2-API-Tool installieren, damit Sie die gleiche Ansicht wie Ihre Benutzer erhalten. Die Verwendung von EC2-API-basierten Tools liegt größtenteils außerhalb des Umfangs dieses Leitfadens, obwohl wir uns mit der Beschaffung von Anmeldeinformationen für die Verwendung damit befassen.

Administrative Befehlszeilen-Tools

Es gibt auch mehrere *-manage Kommandozeilenwerkzeuge. Diese werden mit den Diensten des Projekts auf dem Cloud-Controller installiert und müssen nicht separat installiert werden:

  • nova-manage

  • glance-manage

  • keystone-manage

  • cinder-manage

Im Gegensatz zu den oben genannten CLI-Tools müssen die Tools *-manage vom Cloud-Controller als root ausgeführt werden, da sie Lesezugriff auf die Konfigurationsdateien wie /etc/nova/nova.conf benötigen und direkt gegen die Datenbank und nicht gegen den OpenStack API-Endpunkte abfragen.

Warnung

Die Existenz der *-manage Werkzeuge ist ein altes Problem. Ziel des OpenStack-Projekts ist es, schließlich alle verbleibenden Funktionen der *-manage Werkzeuge in die API-basierten Werkzeuge zu migrieren. Bis zu diesem Tag müssen Sie SSH in den Cloud Controller Node einbinden, um einige Wartungsarbeiten durchzuführen, die eines der *-manage Tools erfordern.

Erhalten von Anmeldeinformationen

Sie müssen über die entsprechenden Anmeldeinformationen verfügen, wenn Sie die Befehlszeilentools verwenden möchten, um Abfragen gegen Ihre OpenStack-Cloud durchzuführen. Der bei weitem einfachste Weg, um Authentifizierung-Anmeldeinformationen für die Verwendung mit Befehlszeilen-Clients zu erhalten, ist die Verwendung des OpenStack-Dashboards. Wählen Sie Projekt, klicken Sie auf die Registerkarte Projekt und klicken Sie auf Access & Security in der Kategorie Compute. Klicken Sie auf der Seite Access & Security auf die Registerkarte API Access, um zwei Schaltflächen anzuzeigen, Download OpenStack RC File und Download EC2 Credentials, mit denen Sie Dateien erzeugen können, die Sie in Ihrer Shell erzeugen können, um die Umgebungsvariablen zu füllen, die die Kommandozeilen-Tools benötigen, um zu wissen, wo sich Ihre Serviceendpunkte und Ihre Authentifizierungsinformationen befinden. Der Benutzer, den Sie im Dashboard angemeldet haben, gibt den Dateinamen für die openrc-Datei an, z.B. demo-openrc.sh. Wenn Sie als Administrator angemeldet sind, heißt die Datei admin-openrc.sh.

Die generierte Datei sieht in etwa so aus:

#!/usr/bin/env bash

# To use an OpenStack cloud you need to authenticate against the Identity
# service named keystone, which returns a **Token** and **Service Catalog**.
# The catalog contains the endpoints for all services the user/tenant has
# access to - such as Compute, Image Service, Identity, Object Storage, Block
# Storage, and Networking (code-named nova, glance, keystone, swift,
# cinder, and neutron).
#
# *NOTE*: Using the 3 *Identity API* does not necessarily mean any other
# OpenStack API is version 3. For example, your cloud provider may implement
# Image API v1.1, Block Storage API v2, and Compute API v2.0. OS_AUTH_URL is
# only for the Identity API served through keystone.
export OS_AUTH_URL=http://203.0.113.10:5000/v3

# With the addition of Keystone we have standardized on the term **project**
# as the entity that owns the resources.
export OS_PROJECT_ID=98333aba48e756fa8f629c83a818ad57
export OS_PROJECT_NAME="test-project"
export OS_USER_DOMAIN_NAME="default"
if [ -z "$OS_USER_DOMAIN_NAME" ]; then unset OS_USER_DOMAIN_NAME; fi

# In addition to the owning entity (tenant), OpenStack stores the entity
# performing the action as the **user**.
export OS_USERNAME="demo"

# With Keystone you pass the keystone password.
echo "Please enter your OpenStack Password for project $OS_PROJECT_NAME as user $OS_USERNAME: "
read -sr OS_PASSWORD_INPUT
export OS_PASSWORD=$OS_PASSWORD_INPUT

# If your configuration has multiple regions, we set that information here.
# OS_REGION_NAME is optional and only valid in certain environments.
export OS_REGION_NAME="RegionOne"
# Don't leave a blank variable, unset it if it was empty
if [ -z "$OS_REGION_NAME" ]; then unset OS_REGION_NAME; fi

export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3

Warnung

Dadurch wird dein Passwort nicht im Klartext gespeichert, was eine gute Sache ist. Aber wenn Sie das Skript erstellen oder ausführen, fragt es Sie nach Ihrem Passwort und speichert Ihre Antwort dann in der Umgebungsvariablen OS_PASSWORD. Es ist wichtig zu beachten, dass dies Interaktivität erfordert. Es ist möglich, einen Wert direkt im Skript zu speichern, wenn Sie eine nicht interaktive Operation benötigen, aber Sie müssen dann äußerst vorsichtig mit der Sicherheit und den Berechtigungen dieser Datei sein.

EC2-Kompatibilitäts-Anmeldeinformationen können heruntergeladen werden, indem Sie Projekt, dann :guilabel:‘Compute`, dann Zugang & Sicherheit, dann API-Zugang auswählen, um die Schaltfläche Download EC2 Anmeldeinformationen anzuzeigen. Klicken Sie auf die Schaltfläche, um eine ZIP-Datei mit Server x509-Zertifikaten und einem Shell-Skriptfragment zu erzeugen. Erstellen Sie ein neues Verzeichnis an einem sicheren Ort, da es sich hierbei um Live-Anmeldeinformationen handelt, die alle Authentifizierungsinformationen enthalten, die für den Zugriff auf Ihre Cloud-Identität erforderlich sind, im Gegensatz zum Standard user-openrc. Entpacken Sie die ZIP-Datei hier. Du solltest cacert.pem, cert.pem, ec2rc.sh, und pk.pem haben. Die ec2rc.sh ist ähnlich wie diese:

#!/bin/bash

NOVARC=$(readlink -f "${BASH_SOURCE:-${0}}" 2>/dev/null) ||\
NOVARC=$(python -c 'import os,sys; \
print os.path.abspath(os.path.realpath(sys.argv[1]))' "${BASH_SOURCE:-${0}}")
NOVA_KEY_DIR=${NOVARC%/*}
export EC2_ACCESS_KEY=df7f93ec47e84ef8a347bbb3d598449a
export EC2_SECRET_KEY=ead2fff9f8a344e489956deacd47e818
export EC2_URL=http://203.0.113.10:8773/services/Cloud
export EC2_USER_ID=42 # nova does not use user id, but bundling requires it
export EC2_PRIVATE_KEY=${NOVA_KEY_DIR}/pk.pem
export EC2_CERT=${NOVA_KEY_DIR}/cert.pem
export NOVA_CERT=${NOVA_KEY_DIR}/cacert.pem
export EUCALYPTUS_CERT=${NOVA_CERT} # euca-bundle-image seems to require this

alias ec2-bundle-image="ec2-bundle-image --cert $EC2_CERT --privatekey \
$EC2_PRIVATE_KEY --user 42 --ec2cert $NOVA_CERT"
alias ec2-upload-bundle="ec2-upload-bundle -a $EC2_ACCESS_KEY -s \
$EC2_SECRET_KEY --url $S3_URL --ec2cert $NOVA_CERT"

Um die EC2-Anmeldeinformationen in Ihre Umgebung zu übertragen, verwenden Sie die Datei ec2rc.sh.

API-Aufrufe prüfen

Die Befehlszeilen-Tools können so konfiguriert werden, dass sie die OpenStack-API-Aufrufe anzeigen, die sie ausführen, indem sie ihnen das Flag --debug übergeben. Zum Beispiel:

# openstack --debug server list

Dieses Beispiel zeigt die HTTP-Anfragen des Clients und die Antworten der Endpunkte, was bei der Erstellung benutzerdefinierter Tools, die in die OpenStack-API geschrieben wurden, hilfreich sein kann.

cURL für die weitere Inspektion verwenden

Der Verwendung der Befehlszeilen-Tools liegt die OpenStack-API zugrunde, eine RESTful-API, die über HTTP läuft. Es kann Fälle geben, in denen Sie direkt mit der API interagieren möchten oder sie aufgrund eines vermuteten Fehlers in einem der CLI-Tools verwenden müssen. Der beste Weg, dies zu tun, ist, eine Kombination aus cURL und einem anderen Tool, wie jq, zu verwenden, um das JSON aus den Antworten zu analysieren.

Das erste, was Sie tun müssen, ist, sich mit Ihren Anmeldeinformationen in der Cloud zu authentifizieren, um einen Authentifizierungstoken zu erhalten.

Ihre Zugangsdaten sind eine Kombination aus Benutzername, Passwort und Mandant (Projekt). Sie können diese Werte aus der oben beschriebenen openrc.sh extrahieren. Das Token ermöglicht es Ihnen, mit Ihren anderen Service-Endpunkten zu interagieren, ohne dass Sie sich für jede Anfrage neu authentifizieren müssen. Token sind in der Regel 24 Stunden lang gültig, und wenn das Token abläuft, werden Sie mit einer 401 (unbefugten) Antwort benachrichtigt und Sie können ein anderes Token anfordern.

  1. Schauen Sie sich Ihren OpenStack-Dienst catalog an:

    $ curl -s -X POST http://203.0.113.10:35357/v2.0/tokens \
      -d '{"auth": {"passwordCredentials": {"username":"test-user", "password":"test-password"}, "tenantName":"test-project"}}' \
      -H "Content-type: application/json" | jq .
    
  2. Lesen Sie die JSON-Antwort durch, um ein Gefühl dafür zu bekommen, wie der Katalog aufgebaut ist.

    Um die Arbeit mit nachfolgenden Anforderungen zu erleichtern, speichern Sie das Token in einer Umgebungsvariablen:

    $ TOKEN=`curl -s -X POST http://203.0.113.10:35357/v2.0/tokens \
      -d '{"auth": {"passwordCredentials": {"username":"test-user", "password":"test-password"}, "tenantName":"test-project"}}' \
      -H "Content-type: application/json" |  jq -r .access.token.id`
    

    Nun können Sie Ihr Token auf der Kommandozeile als $TOKEN bezeichnen.

  3. Wählen Sie einen Service-Endpunkt aus Ihrem Servicekatalog, z.B. Compute. Versuchen Sie eine Anfrage, z.B. die Auflistung von Instanzen (Servern):

    $ curl -s \
      -H "X-Auth-Token: $TOKEN" \
      http://203.0.113.10:8774/v2.0/98333aba48e756fa8f629c83a818ad57/servers | jq .
    

Um herauszufinden, wie API-Anfragen strukturiert sein sollten, lesen Sie die OpenStack API Referenz. Um die Antworten mit jq durchzukauen, lesen Sie bitte das jq Handbuch.

Das -s flag in den obigen cURL-Befehlen wird verwendet, um zu verhindern, dass der Fortschrittsmesser angezeigt wird. Wenn Sie Probleme beim Ausführen von cURL-Befehlen haben, sollten Sie diese entfernen. Um Ihnen bei der Fehlerbehebung von cURL-Befehlen zu helfen, können Sie auch das Flag `-v` einfügen, um Ihnen die ausführliche Ausgabe anzuzeigen. Es gibt noch viele weitere äußerst nützliche Funktionen in cURL; alle Optionen finden Sie in der Man Page.

Server und Dienste

Als Administrator haben Sie einige Möglichkeiten, um herauszufinden, wie Ihre OpenStack-Cloud aussieht, indem Sie einfach die verfügbaren OpenStack-Tools verwenden. Dieser Abschnitt gibt Ihnen eine Vorstellung davon, wie Sie sich einen Überblick über Ihre Cloud, ihre Form, Größe und den aktuellen Zustand verschaffen können.

Zunächst können Sie feststellen, welche Server zu Ihrer OpenStack-Cloud gehören, indem Sie sie ausführen:

# openstack compute service list --long

Die Ausgabe sieht wie folgt aus:

+----+------------------+-------------------+------+---------+-------+----------------------------+-----------------+
| Id | Binary           | Host              | Zone | Status  | State | Updated_at                 | Disabled Reason |
+----+------------------+-------------------+------+---------+-------+----------------------------+-----------------+
| 1  | nova-cert        | cloud.example.com | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 2  | nova-compute     | c01.example.com   | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 3  | nova-compute     | c01.example.com.  | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 4  | nova-compute     | c01.example.com   | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 5  | nova-compute     | c01.example.com   | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 6  | nova-compute     | c01.example.com   | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 7  | nova-conductor   | cloud.example.com | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 8  | nova-cert        | cloud.example.com | nova | enabled | up    | 2016-01-05T17:20:42.000000 | -               |
| 9  | nova-scheduler   | cloud.example.com | nova | enabled | up    | 2016-01-05T17:20:38.000000 | -               |
| 10 | nova-consoleauth | cloud.example.com | nova | enabled | up    | 2016-01-05T17:20:35.000000 | -               |
+----+------------------+-------------------+------+---------+-------+----------------------------+-----------------+

Die Ausgabe zeigt, dass es fünf Compute-Knoten und einen Cloud-Controller gibt. Sie sehen alle Dienste im Zustand up, was bedeutet, dass die Dienste betriebsbereit sind. Wenn sich ein Dienst in einem ausgefallenen Zustand befindet, ist er nicht mehr verfügbar. Dies ist ein Hinweis darauf, dass Sie Fehler beheben sollten, warum der Dienst ausgefallen ist.

Wenn Sie Cinder verwenden, führen Sie den folgenden Befehl aus, um eine ähnliche Liste zu sehen:

# cinder-manage host list | sort
host              zone
c01.example.com   nova
c02.example.com   nova
c03.example.com   nova
c04.example.com   nova
c05.example.com   nova
cloud.example.com nova

Mit diesen beiden Tabellen haben Sie nun einen guten Überblick darüber, aus welchen Servern und Diensten Ihre Cloud besteht.

Sie können auch den Identitätsdienst (Keystone) verwenden, um zu sehen, welche Dienste in Ihrer Cloud verfügbar sind und welche Endpunkte für die Dienste konfiguriert wurden.

Der folgende Befehl erfordert, dass Sie Ihre Shell-Umgebung mit den richtigen administrativen Variablen konfigurieren:

$ openstack catalog list
+----------+------------+---------------------------------------------------------------------------------+
| Name     | Type       | Endpoints                                                                       |
+----------+------------+---------------------------------------------------------------------------------+
| nova     | compute    | RegionOne                                                                       |
|          |            |   public: http://192.168.122.10:8774/v2/9faa845768224258808fc17a1bb27e5e        |
|          |            | RegionOne                                                                       |
|          |            |   internal: http://192.168.122.10:8774/v2/9faa845768224258808fc17a1bb27e5e      |
|          |            | RegionOne                                                                       |
|          |            |   admin: http://192.168.122.10:8774/v2/9faa845768224258808fc17a1bb27e5e         |
|          |            |                                                                                 |
| cinderv2 | volumev2   | RegionOne                                                                       |
|          |            |   public: http://192.168.122.10:8776/v2/9faa845768224258808fc17a1bb27e5e        |
|          |            | RegionOne                                                                       |
|          |            |   internal: http://192.168.122.10:8776/v2/9faa845768224258808fc17a1bb27e5e      |
|          |            | RegionOne                                                                       |
|          |            |   admin: http://192.168.122.10:8776/v2/9faa845768224258808fc17a1bb27e5e         |
|          |            |                                                                                 |

Die vorhergehende Ausgabe wurde gekürzt, um nur zwei Dienste anzuzeigen. Sie sehen einen Serviceeintrag für jeden Service, den Ihre Cloud anbietet. Beachten Sie, dass die Endpunktdomäne je nach Endpunkttyp unterschiedlich sein kann. Unterschiedliche Endpunktdomänen pro Typ sind nicht erforderlich, aber dies kann aus verschiedenen Gründen geschehen, wie z.B. Datenschutz am Endpunkt oder Trennung des Netzwerkverkehrs.

Die Version der Compute-Installation finden Sie mit dem OpenStack-Kommandozeilen-Client:

# openstack --version

Diagnose Ihrer Compute-Knoten

Sie können zusätzliche Informationen über virtuelle Maschinen, die ausgeführt werden, erhalten - ihre CPU-Auslastung, den Speicher, die Festplatten-I/O oder die Netzwerk-I/O pro Instanz, indem Sie den Befehl nova diagnostics mit einer Server-ID ausführen:

$ nova diagnostics <serverID>

Die Ausgabe dieses Befehls variiert je nach Hypervisor, da Hypervisoren verschiedene Attribute unterstützen. Der folgende Abschnitt zeigt den Unterschied zwischen den beiden beliebtesten Hypervisoren. Hier ist eine exemplarische Ausgabe, wenn der Hypervisor Xen ist:

+----------------+-----------------+
|    Property    |      Value      |
+----------------+-----------------+
| cpu0           | 4.3627          |
| memory         | 1171088064.0000 |
| memory_target  | 1171088064.0000 |
| vbd_xvda_read  | 0.0             |
| vbd_xvda_write | 0.0             |
| vif_0_rx       | 3223.6870       |
| vif_0_tx       | 0.0             |
| vif_1_rx       | 104.4955        |
| vif_1_tx       | 0.0             |
+----------------+-----------------+

Der Befehl sollte zwar mit jedem Hypervisor funktionieren, der über libvirt gesteuert wird (KVM, QEMU oder LXC), wurde aber nur mit KVM getestet. Hier ist die exemplarische Ausgabe, wenn der Hypervisor KVM ist:

+------------------+------------+
| Property         | Value      |
+------------------+------------+
| cpu0_time        | 2870000000 |
| memory           | 524288     |
| vda_errors       | -1         |
| vda_read         | 262144     |
| vda_read_req     | 112        |
| vda_write        | 5606400    |
| vda_write_req    | 376        |
| vnet0_rx         | 63343      |
| vnet0_rx_drop    | 0          |
| vnet0_rx_errors  | 0          |
| vnet0_rx_packets | 431        |
| vnet0_tx         | 4905       |
| vnet0_tx_drop    | 0          |
| vnet0_tx_errors  | 0          |
| vnet0_tx_packets | 45         |
+------------------+------------+

Netzwerkinspektion

Um zu sehen, welche festen IP-Netzwerke in Ihrer Cloud konfiguriert sind, können Sie den Befehlszeilen-Client openstack verwenden, um die IP-Bereiche abzurufen:

$ openstack subnet list
+--------------------------------------+----------------+--------------------------------------+-----------------+
| ID                                   | Name           | Network                              | Subnet          |
+--------------------------------------+----------------+--------------------------------------+-----------------+
| 346806ee-a53e-44fd-968a-ddb2bcd2ba96 | public_subnet  | 0bf90de6-fc0f-4dba-b80d-96670dfb331a | 172.24.4.224/28 |
| f939a1e4-3dc3-4540-a9f6-053e6f04918f | private_subnet | 1f7f429e-c38e-47ba-8acf-c44e3f5e8d71 | 10.0.0.0/24     |
+--------------------------------------+----------------+--------------------------------------+-----------------+

Der OpenStack-Kommandozeilen-Client kann einige zusätzliche Details liefern:

# openstack compute service list
+----+------------------+------------+----------+---------+-------+----------------------------+
| Id | Binary           | Host       | Zone     | Status  | State | Updated At                 |
+----+------------------+------------+----------+---------+-------+----------------------------+
|  1 | nova-consoleauth | controller | internal | enabled | up    | 2016-08-18T12:16:53.000000 |
|  2 | nova-scheduler   | controller | internal | enabled | up    | 2016-08-18T12:16:59.000000 |
|  3 | nova-conductor   | controller | internal | enabled | up    | 2016-08-18T12:16:52.000000 |
|  7 | nova-compute     | controller | nova     | enabled | up    | 2016-08-18T12:16:58.000000 |
+----+------------------+------------+----------+---------+-------+----------------------------+

Diese Ausgabe zeigt, dass zwei Netzwerke konfiguriert sind, die jeweils 255 IPs (ein /24 Subnetz) enthalten. Das erste Netzwerk wurde einem bestimmten Projekt zugeordnet, während das zweite Netzwerk noch offen ist. Sie können dieses Netzwerk manuell zuweisen, ansonsten wird es automatisch zugewiesen, wenn ein Projekt seine erste Instanz startet.

Um herauszufinden, ob in Ihrer Cloud Floating IPs verfügbar sind, führen Sie aus:

# openstack floating ip list
+--------------------------------------+---------------------+------------------+--------------------------------------+
| ID                                   | Floating IP Address | Fixed IP Address | Port                                 |
+--------------------------------------+---------------------+------------------+--------------------------------------+
| 340cb36d-6a52-4091-b256-97b6e61cbb20 | 172.24.4.227        | 10.2.1.8         | 1fec8fb8-7a8c-44c2-acd8-f10e2e6cd326 |
| 8b1bfc0c-7a91-4da0-b3cc-4acae26cbdec | 172.24.4.228        | None             | None                                 |
+--------------------------------------+---------------------+------------------+--------------------------------------+

Hier stehen zwei Floating IPs zur Verfügung. Der erste wurde einem Projekt zugeordnet, während der andere nicht zugeordnet ist.

Benutzer und Projekte

Um eine Liste der Projekte anzuzeigen, die der Cloud hinzugefügt wurden, führen Sie:

$ openstack project list
+----------------------------------+--------------------+
| ID                               | Name               |
+----------------------------------+--------------------+
| 422c17c0b26f4fbe9449f37a5621a5e6 | alt_demo           |
| 5dc65773519248f3a580cfe28ba7fa3f | demo               |
| 9faa845768224258808fc17a1bb27e5e | admin              |
| a733070a420c4b509784d7ea8f6884f7 | invisible_to_admin |
| aeb3e976e7794f3f89e4a7965db46c1e | service            |
+----------------------------------+--------------------+

Um eine Liste der Benutzer zu sehen, führen Sie aus:

$ openstack user list
+----------------------------------+----------+
| ID                               | Name     |
+----------------------------------+----------+
| 5837063598694771aedd66aa4cddf0b8 | demo     |
| 58efd9d852b74b87acc6efafaf31b30e | cinder   |
| 6845d995a57a441f890abc8f55da8dfb | glance   |
| ac2d15a1205f46d4837d5336cd4c5f5a | alt_demo |
| d8f593c3ae2b47289221f17a776a218b | admin    |
| d959ec0a99e24df0b7cb106ff940df20 | nova     |
+----------------------------------+----------+

Bemerkung

Manchmal haben ein Benutzer und eine Gruppe eine Eins-zu-Eins Zuordnung. Dies geschieht für Standard-Systemkonten wie Cinder, Glance, Nova und Swift oder wenn nur ein Benutzer Teil einer Gruppe ist.

Laufende Instanzen

Um eine Liste der laufenden Instanzen anzuzeigen, führen Sie aus:

$ openstack server list --all-projects
+--------------------------------------+------+--------+---------------------+------------+
| ID                                   | Name | Status | Networks            | Image Name |
+--------------------------------------+------+--------+---------------------+------------+
| 495b4f5e-0b12-4c5a-b4e0-4326dee17a5a | vm1  | ACTIVE | public=172.24.4.232 | cirros     |
| e83686f9-16e8-45e6-911d-48f75cb8c0fb | vm2  | ACTIVE | private=10.0.0.7    | cirros     |
+--------------------------------------+------+--------+---------------------+------------+

Leider sagt Ihnen dieser Befehl keine verschiedenen Details über die laufenden Instanzen, wie z.B. auf welchem Compute-Knoten die Instanz läuft, welche Variante die Instanz hat und so weiter. Mit dem folgenden Befehl können Sie Details zu einzelnen Instanzen anzeigen:

$ openstack server show <uuid>

Zum Beispiel:

# openstack server show 81db556b-8aa5-427d-a95c-2a9a6972f630
+--------------------------------------+----------------------------------------------------------+
| Field                                | Value                                                    |
+--------------------------------------+----------------------------------------------------------+
| OS-DCF:diskConfig                    | AUTO                                                     |
| OS-EXT-AZ:availability_zone          | nova                                                     |
| OS-EXT-SRV-ATTR:host                 | c02.example.com                                          |
| OS-EXT-SRV-ATTR:hypervisor_hostname  | c02.example.com                                          |
| OS-EXT-SRV-ATTR:instance_name        | instance-00000001                                        |
| OS-EXT-STS:power_state               | Running                                                  |
| OS-EXT-STS:task_state                | None                                                     |
| OS-EXT-STS:vm_state                  | active                                                   |
| OS-SRV-USG:launched_at               | 2016-10-19T15:18:09.000000                               |
| OS-SRV-USG:terminated_at             | None                                                     |
| accessIPv4                           |                                                          |
| accessIPv6                           |                                                          |
| addresses                            | private=10.0.0.7                                         |
| config_drive                         |                                                          |
| created                              | 2016-10-19T15:17:46Z                                     |
| flavor                               | m1.tiny (1)                                              |
| hostId                               | 2b57e2b7a839508337fb55695b8f6e65aa881460a20449a76352040b |
| id                                   | e83686f9-16e8-45e6-911d-48f75cb8c0fb                     |
| image                                | cirros (9fef3b2d-c35d-4b61-bea8-09cc6dc41829)            |
| key_name                             | None                                                     |
| name                                 | test                                                     |
| os-extended-volumes:volumes_attached | []                                                       |
| progress                             | 0                                                        |
| project_id                           | 1eaaf6ede7a24e78859591444abf314a                         |
| properties                           |                                                          |
| security_groups                      | [{u'name': u'default'}]                                  |
| status                               | ACTIVE                                                   |
| updated                              | 2016-10-19T15:18:58Z                                     |
| user_id                              | 7aaa9b5573ce441b98dae857a82ecc68                         |
+--------------------------------------+----------------------------------------------------------+

Diese Ausgabe zeigt, dass eine Instanz namens devstack aus einem Ubuntu 12.04 Image mit einer Variante von m1.small erstellt wurde und auf dem Compute-Knoten c02.example.com` gehostet wird.

Zusammenfassung

Wir hoffen, dass Ihnen diese kurze Tour durch Ihre Arbeitsumgebung gefallen hat, einschließlich der Interaktion mit Ihrer Cloud und der Extraktion nützlicher Informationen. Von hier aus können Sie das OpenStack Administrator Guide als Referenz für alle Befehlszeilenfunktionen in Ihrer Cloud verwenden.