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

Wie starte ich eine VM auf einem bestimmten Host/Rechenknoten in OpenStack Mitaka?

Mit den entsprechenden Berechtigungen kann der Nutzer eine VM auf einem bestimmten Host/Rechenknoten in OpenStack Mitaka starten. Sie müssen lediglich –availability_zone zone:host verwenden -Argument beim Ausführen von openstack server create Befehl wie unten gezeigt:

$openstack server create --image  --flavor m1.tiny --key_name test --availability-zone nova:compute3

Um diesen Vorgang auszuführen, müssen Sie mithilfe von create:forced_host festlegen, welche Rollen eine Instanz auf einem bestimmten Host starten können Option in policy.json im nova-Konfigurationsordner. Standardmäßig ist diese Option nur für den Administrator aktiviert Rolle.

Öffnen Sie also die Datei /etc/nova/policy.json Datei und ändern Sie die folgende Zeile:

"compute:create:forced_host": "is_admin:True",

zu

"compute:create:forced_host": "",

Listen Sie dann die gültigen Compute-Hosts mit dem folgenden Befehl auf:

$ openstack hypervisor list
+----+----------------------------+
| ID | Hypervisor Hostname        |
+----+----------------------------+
|  1 | compute2                   |
|  2 | compute3                   |
+----+----------------------------+

Verwenden Sie nun den Namen des Servers aus der obigen Liste und erzwingen Sie eine Instanz auf einem bestimmten Host.

$ openstack server create --flavor m1.small --image cirros --key-name mykey --nic net-id=9381abae-e0c5-4844-b605-da6b04ce9a36 --security-group default --availability-zone nova:compute3 ubuntu1-on-compute3

In Ordnung! Warten. Der obige Befehl mit einer Fehlermeldung:

Policy doesn't allow os_compute_api:servers:create:forced_host to be performed. (HTTP 403) (Request-ID: req-993cd21d-e546-4e68-bad7-3ebc70bfd18a)

Es zeigt deutlich, dass die vom Administrator festgelegte Richtlinie einem normalen Benutzer nicht erlaubt, eine Instanz auf einem bestimmten Knoten zu planen. Die Lösung besteht darin, eine Regel zu erstellen, die es sogar einem normalen Benutzer ermöglicht, eine VM auf einem bestimmten Host zu planen, wie unten gezeigt:

Öffnen Sie die Datei /etc/nova/policy.json Datei auf dem Controller-Knoten und ändern Sie sie wie folgt:

"os_compute_api:servers:create:forced_host": "rule:admin_api",

zu

"os_compute_api:servers:create:forced_host": "",

Und starten Sie die nova-api neu Service wie unten gezeigt:

#/etc/init.d/nova-api restart

Hinweis:Diese Änderungen müssen nicht in Rechenknoten vorgenommen werden.

Jetzt sollten Sie als normaler Benutzer in der Lage sein, eine VM auf einem bestimmten Host zu starten.


Linux
  1. So erstellen Sie einen Ceph-Speichercluster unter Ubuntu 16.04

  2. So erstellen Sie einen virtuellen Nginx-Host (Serverblock)

  3. So erstellen Sie ein Windows-Image für OpenStack

  4. So erstellen Sie eine zweite primäre oder zusätzliche Partition in einer virtuellen OpenStack-Maschine

  5. Wie startet PulseAudio?

So erstellen Sie eine Tar-Gz-Datei

So erstellen Sie ein Terraform-Modul

So erstellen Sie virtuelle Hosts auf Apache Server, um mehrere Websites zu hosten

So starten Sie Weblogic Admin und Node Manager ohne Passwort

So installieren Sie Node.js unter Ubuntu 14.04

So erstellen Sie eine Web-App mit Node.js auf Jelastic Cloud