GNU/Linux >> LINUX-Kenntnisse >  >> Cent OS

OpenStack Icehouse Installationsfehler und Lösungen – CentOS

Ich versuche seit fast einer Woche, OpenStack Icehouse auf CentOS zu installieren (Da ich das zum ersten Mal mache, hat es eine Woche gedauert, bis die gesamte Installation und Konfiguration abgeschlossen war). Obwohl ich die offizielle Dokumentation befolgt habe, musste ich immer noch auf verschiedene Foren verweisen, einschließlich der Openstack-Support-Website, um Fehler zu beheben, die mich während des Installationsvorgangs gestört haben. Also dachte ich daran, all diese Fehler und Lösungen, die für mich funktioniert haben, in diesem Artikel zu erfassen. Sie können direkt einige Fehler und Lösungen sehen, auf die ich während der Installation der Keystone-, Glance- und Nova-Dienste gestoßen bin. Hoffentlich könnte es für jemanden hilfreich sein.

Nun, hier sind die paar mehr …

Fehler:neutron-server konnte nicht gestartet werden und nein Protokoll wurde geschrieben –  Neutron tot, aber PID-Datei existiert

# service neutron-server start
# service neutron-server status
neutron dead but pid file exists

Lösung:

Im Allgemeinen müssen Sie nach der Installation der Keystone-, Glow- und Nova-Dienste eine entsprechende Datenbank in MySQL erstellen (normalerweise werden die Datenbanken manuell erstellt). Der Neutronendienst benötigt dies jedoch nicht, da der Dienst die Datenbank automatisch füllt. Es verhielt sich jedoch nicht so und ich musste "neutron-db-manage" manuell ausführen ' vor dem Start von 'neutron-server'.

Hinweis: Laut offizieller Dokumentation wird empfohlen, den Neutron-Server vor dem Synchronisieren der Datenbank manuell zu starten. Sie sollten die folgenden Schritte nur ausführen, wenn der Dienst nicht gestartet werden kann.

Führen Sie die folgenden Befehle aus, um die Netzwerk-Plugins zu konfigurieren

# openstack-config --set /etc/neutron/neutron.conf DEFAULT core_plugin neutron.plugins.ml2.plugin.Ml2Plugin
# openstack-config --set /etc/neutron/neutron.conf DEFAULT service_plugins neutron.services.l3_router.l3_router_plugin.L3RouterPlugin

Füllen Sie jetzt die Neutronendatenbank…

# su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini upgrade head" neutron

Versuchen Sie, Neutron-Server zu starten. Bei mir hat es funktioniert.

FEHLER:Der Server hat entweder einen Fehler gemacht oder ist nicht in der Lage, die Ausführung durchzuführen die angeforderte Operation. (HTTP 500)

Der obige Fehler wurde ausgelöst, als ich den Netzwerk- und Boot-Befehl von nova ausführte.

[root@gcontroller]#nova --debug network-create tg-network --bridge br100 --multi-host T --fixed-range-v4 10.180.14.160/27

Lösung:
Versuchen Sie, den folgenden Befehl auszuführen…

[root@gcontroller]#nova-manage network create tg-network --multi_host=T --fixed_range_v4=10.180.14.160/27 --bridge=br100 --num_networks=1 --network_size=256

Fehler:NetworkNotCreated:Bridge ist erforderlich, um ein Netzwerk zu erstellen

[root@gcontroller]# nova-manage network create tg-network --multi_host=T --bridge_interface=br100 --fixed_range_v4=10.180.14.160/27
Command failed, please check log for more info

Weitere Informationen finden Sie im Fehlerprotokoll …

[root@gcontroller]#tailf /var/log/nova/nova-manage.log
2015-02-06 18:33:07.656 5080 CRITICAL nova [req-750edab1-9736-4cff-9395-e596f316e596 None None] NetworkNotCreated: bridge is required to create a network.

Lösung:

Wie die obige Fehlermeldung besagt, sollten Sie die bridge_interface zum Erstellen eines Netzwerks angeben. Der Befehl lautet also wie folgt. Suchen Sie nach „–bridge_interface=br100

[root@gcontroller]#nova-manage network create tg-network --multi_host=T --fixed_range_v4=10.180.14.160/27 --bridge_interface=br100 --num_networks=1 --network_size=256

[root@gcontroller]# nova net-list
+--------------------------------------+---------+------------------+
| ID                                   | Label   | CIDR             |
+--------------------------------------+---------+------------------+
| 60dfd46a-4649-4758-8b8d-88cc562b9b39 | tg-network | 10.180.14.160/27 |
+--------------------------------------+---------+------------------+

Fehler:Höhere Version von pyparsing erforderlich – Requirement.parse('pyparsing>=2.0.1')

# neutron net-create ext-net --shared --router:external=True (pyparsing 1.5.6 (/usr/lib/python2.6/site-packages), Requirement.parse('pyparsing>=2.0.1')) 
'Namespace' object has no attribute 'debug'

Lösung:

Es ist klar, dass Sie eine höhere Version von pyparsing installieren sollten. Der einfachste Weg, ein Python-Modul zu installieren, ist die Verwendung von 'pip ‘ oder ‚easy_install ‘.

easy_install pyparsing

Aber wissen Sie, manchmal funktioniert es nur, das Modul zu kompilieren und zu installieren. In solchen Fällen können Sie hier die neueste Version von pyparsing herunterladen.

[root@gcontroller pyparsing-2.0.1]# python setup.py build
running build
running build_py
creating build
creating build/lib
copying pyparsing.py -> build/lib
[root@gcontroller pyparsing-2.0.1]# python setup.py install
running install
running build
running build_py
running install_lib
copying build/lib/pyparsing.py -> /usr/lib/python2.6/site-packages
byte-compiling /usr/lib/python2.6/site-packages/pyparsing.py to pyparsing.pyc
running install_egg_info
Writing /usr/lib/python2.6/site-packages/pyparsing-2.0.1-py2.6.egg-info

Fehler:INFO nova.wsgi [-] Stoppen des WSGI-Servers | INFO nova.openstack.common.service [-] SIGTERM abgefangen, beim Beenden von | [Errno 111] Verbindung abgelehnt

Ich habe den obigen Fehler erhalten, als ich einen der nova-Befehle ausgeführt habe.

[root@gcontroller]# nova net-list
ERROR: [Errno 111] Connection refused

Die Protokolldateien unter /var/log/nova hat den obigen Fehler aufgedeckt.

INFO nova.wsgi [-] Stopping WSGI server.
INFO nova.wsgi [-] WSGI server has stopped.
INFO nova.wsgi [-] WSGI server has stopped.
INFO nova.wsgi [-] WSGI server has stopped.
INFO nova.openstack.common.service [-] Caught SIGTERM, exiting

Lösung:

Wenn Sie den Fehler „Verbindung abgelehnt“ sehen, ist es klar, dass einer der erforderlichen Dienste nicht ordnungsgemäß ausgeführt wird. Nach dem Debuggen habe ich verstanden, dass beim Start von „openstack-nova-metadata-api ‘, es beendet ‚openstack-nova-api ' Service. Der Grund dafür war, dass openstack-nova-api bereits „metadata-api“ zusammen mit ihm ausführte und wenn ich „openstack-nova-metadata-api“ separat starte, beendete es den anderen Dienst.

Um das Problem zu beheben,

  • $vi /etc/nova/nova.conf
  • Suchen Sie nach „enabled_apis ‘ und dessen Wert ‘ec2,osapi_compute,metadata
  • Entfernen Sie „Metadaten“ aus „enabled_apis“
  • Nun können Sie beide 'openstack-nova-api starten ‘ und ‘openstack-nova-metadata-api ‘. Beide Dienste werden einzeln ausgeführt.

Falls Sie „metadata-api“ zusammen mit „openstack-nova-api“ starten möchten, lassen Sie „enabled_apis“ mit Werten wie „ec2,osapi_compute,metadata“ und stoppen Sie „openstack-nova-metadata-api“. ‘ vom Starten während des Systemstarts. Dazu können Sie einfach die folgenden Befehle ausführen:

$ chkconfig openstack-nova-metadata-api off
$ chkconfig openstack-nova-api on

Fehler:iptables-restore v1.4.6:Bad IP address „gcompute“

Das Obige ist aufgetreten, als ich versucht habe, nova-network auf meinem Rechenknoten zu starten. Die Protokolldateien unter /var/log/nova offenbarte die obige Nachricht.

Lösung:

  • Öffnen Sie /etc/nova/nova.conf und suchen Sie nach „my_ip ‘-Attribut.
  • Stellen Sie sicher, dass „my_ip ‘ enthält IP-Adresse als Wert und nicht Hostname oder FQDN oder localhost . In meinem Fall war es der FQDN des Rechenknotens. Ich habe es in IP-Adresse geändert.
  • Starten Sie jetzt openstack-nova-network neu Service und es sollte wie erwartet funktionieren.

FEHLER:Quote überschritten für Instanzen:1 angefordert, aber bereits 10 von 10 Instanzen verwendet (HTTP 413)

Nun, Sie sollten das standardmäßige Kontingentlimit für das Booten der neuen Instanz ändern. Führen Sie den folgenden Befehl aus, um die standardmäßigen Kontingentgrenzen anzuzeigen.

[root@gcontroller]# nova quota-defaults
+-----------------------------+-------+
| Quota | Limit |
+-----------------------------+-------+
| instances | 10 |
| cores | 20 |
| ram | 51200 |
| floating_ips | 10 |
| fixed_ips | -1 |
| metadata_items | 128 |
| injected_files | 5 |
| injected_file_content_bytes | 10240 |
| injected_file_path_bytes | 255 |
| key_pairs | 100 |
| security_groups | 10 |
| security_group_rules | 20 |
+-----------------------------+-------+

Mit dem folgenden Befehl können Sie ein neues Kontingentlimit festlegen.

[root@gcontroller]# nova quota-class-update --instances 35 default
[root@gcontroller]# nova quota-defaults
+-----------------------------+-------+
| Quota                       | Limit |
+-----------------------------+-------+
| instances                   | 35    |
| cores                       | 20    |
| ram                         | 51200 |
| floating_ips                | 10    |
| fixed_ips                   | -1    |
| metadata_items              | 128   |
| injected_files              | 5     |
| injected_file_content_bytes | 10240 |
| injected_file_path_bytes    | 255   |
| key_pairs                   | 100   |
| security_groups             | 10    |
| security_group_rules        | 20    |
+-----------------------------+-------+

Cirros Image ist gebootet und aktiv, aber Wie lautet der Benutzername und das Passwort, um sich am Terminal anzumelden?

Wenn Sie eine Instanz mit dem Cirros-Image gestartet haben (das ist das einfachste, um Ihr Setup zu testen) und auf das Terminal der neuen Instanz zugreifen möchten, senden Sie eine SSH-Verbindung mit dem Benutzernamen „cirros“ und dem Passwort „cubswin:)“.

#ssh [email protected]

Anmeldung beim Openstack-Dashboard nicht möglich

Sehen Sie „Etwas ist schief gelaufen! Ein unerwarteter Fehler ist aufgetreten. Versuchen Sie, die Seite zu aktualisieren“, wenn auf das Openstack-Dashboard zugegriffen wird?

Lösung:

Überprüfen Sie, ob Sie die richtigen Werte für die folgenden Attribute in „/etc/openstack-dashboard/local_settings festgelegt haben ‘

OPENSTACK_HOST = "gcontroller.org.in"
OPENSTACK_KEYSTONE_URL = "http://%s:5000/v2.0" % OPENSTACK_HOST
OPENSTACK_KEYSTONE_DEFAULT_ROLE = "admin"

In meinem Fall musste ich „OPENSTACK_KEYSTONE_DEFAULT_ROLE =„_member_“ ändern „ ' bis 'OPENSTACK_KEYSTONE_DEFAULT_ROLE ="admin

[Fehler] SuspiciousOperation:Ungültiger HTTP_HOST-Header (möglicherweise müssen Sie ALLOWED_HOSTS festlegen)

Lösung:

Sie müssen ALLOWED_HOSTS festlegen -Attribut in ‘/etc/openstack-dashboard/local_settings ‘. Der Wert von ALLOWED_HOSTS sollte auch die IP-Adresse des Controller-Knotens enthalten (der Knoten, der den Dashboard-Dienst ausführt).

ALLOWED_HOSTS = ['10.180.5.50', '10.180.5.49', '10.180.10.132']

Und der Bonus ist da...

    Kostenloses E-Book zur Installation von OpenStack Icehouse herunterladen! OpenStack Command Line Interface Cheat Sheet herunterladen! – Am häufigsten verwendete Befehle

Cent OS
  1. NFS-Server- und Client-Installation auf CentOS 7

  2. Eine einfache Anleitung zur Installation von OpenStack Icehouse auf CentOS – Zwei-Knoten-Architektur

  3. OpenStack Icehouse Installationsfehler und Lösungen – CentOS

  4. Liste häufiger Fehler (und Lösungen) beim Installieren und Konfigurieren von OpenStack Nova Service

  5. Liste der häufigsten Fehler (und Lösungen) bei der Installation von OpenStack Image Service BLICK

OpenStack-Installation mit mehreren Knoten auf CentOS 7 über Packstack

Installation und Konfiguration von Samba Server auf CentOS 7

OpenStack Pike – Einzelknoten-OpenStack-Installation auf CentOS 7 / RHEL 7

So installieren und verwenden Sie die Programmiersprache R unter CentOS 8

So erstellen Sie benutzerdefinierte Fehlerdokumente und benutzerdefinierte 404-Fehler

So installieren und konfigurieren Sie GlusterFS unter CentOS 7/CentOS 8