Ich möchte einen Consul Cluster mit einer Benutzeroberfläche auf meinem lokalen Computer (Mac OS X) mit Vagrant einrichten. Bisher folgte ich einfach die Ersten Schritte Anweisungen der offiziellen Consul Docs: https://www.consul.io/intro/getting-started/join.htmlRunning Consul on Vagrant: Portweiterleitung von Gast zu Host funktioniert nicht unter Mac OS X
Um die UI vom Host zugreifen zu können, ich diese eine Zeile des bereitgestellten Vagrantfile einfach hinzugefügt (https://github.com/hashicorp/consul/blob/master/demo/vagrant-cluster/Vagrantfile)
n1.vm.network "forwarded_port", guest: 8500, host: 8500
um Konsul mit einem UI auf dem Gastcomputer beginne ich in die Maschine ssh und dann hinzugefügt einfach die -ui Flagge auf den Befehl zur Verfügung gestellt:
consul agent -server -bootstrap-expect=1 \
-data-dir=/tmp/consul -node=agent-one -bind=172.20.20.10 \
-enable-script-checks=true -config-dir=/etc/consul.d -ui
Consul ohne Probleme gestartet und von mit der Gastmaschine kann ich ausführen:
und die erwartete HTML-Seite zurückgegeben wird.
Der Zugriff auf http://localhost:8500/ui/
in einem Browser oder über Curl auf dem Host funktioniert jedoch nicht. Die Verwendung von Curl auf dem Host führt zu:
* Trying ::1...
* TCP_NODELAY set
* Connection failed
* connect to ::1 port 8500 failed: Connection refused
* Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to localhost (127.0.0.1) port 8500 (#0)
> GET /ui/ HTTP/1.1
> Host: localhost:8500
> User-Agent: curl/7.54.0
> Accept: */*
>
* Empty reply from server
* Connection #0 to host localhost left intact
curl: (52) Empty reply from server
Alles, was ich vermisse mit der Einrichtung der Portweiterleitung richtig? Die Protokolle nach vagrant up
gut aussehen zu mir gelaufen:
n1: Forwarding ports...
n1: 8500 (guest) => 8500 (host) (adapter 1)
danke, du hast Recht. Ich habe bereits eine IP-Adresse im privaten Netzwerk angegeben, daher ist keine Portweiterleitung erforderlich. Was ich vermisste war auch die Angabe der Client-IP-Adresse zu binden. (https://www.consul.io/docs/agent/options.html#_client). Also endlich mit diesem Befehl ist die UI vom Host unter 'http: //172.20.20.10: 8500/ui /' verfügbar. Der Befehl muss daher wie folgt aussehen: 'Consul-Agent-Server-Bootstrap-Expect = 1 -data-dir =/tmp/Consul-Knoten = Agent-One-Bind = 172.20.20.10 -Client = 172.20.20.10 -enable-script-checks = true -config-dir =/etc/consul.d -ui – user2350644