
Ich möchte juju-gui mit einem lokalen Anbieter (bezüglich lxc) auf einer Cloud-Instanz installieren. Mein Problem besteht jedoch darin, dass juju-gui selbst in einem lxc-Container installiert wird und dieser Container eine nicht weiterleitbare 10.xxx-Adresse sein wird.
Ich habe einige Fortschritte gemacht, indem ich dieseAllgemeine Anweisungen
Nachdem ich meine Schlüsseldateien erstellt hatte, stellte ich sicher, dass der Juju-GUI-Container sowie der Host ( /etc/ssl/certs
und /etc/ssl/private
im Host und /var/lib/lxc/cn_name/rootfs/etc/ssl/certs
und /var/lib/lxc/cn_name/rootfs/etc/ssl/private
im Container) eine Kopie davon hatten.
Wenn ich meinen Browser auf die öffentliche IP der Host-Cloud-Instanz richte, werde ich zwar zur Juju-GUI-Webadministrator-Anmeldeseite umgeleitet, aber es erscheint ständig die Meldung „Verbindung zur Juju-Umgebung wird hergestellt“ ??
Ich bin sicher, dass das schon jemand gemacht hat, aber ich stecke jetzt fest und versuche herauszufinden, was nicht richtig konfiguriert ist.
Mein Ziel besteht darin, meinen Browser auf die öffentliche Adresse der Cloud-Instanz richten zu können, mich bei juju-gui anzumelden und, da ich für einen lokalen Anbieter eingerichtet bin, zusätzliche Charms/Dienste in weiteren LXC-Containern innerhalb dieser Cloud-Instanz bereitzustellen.
Antwort1
Ich habe schließlich einfach die folgenden IPTABLES-Befehle verwendet, um den HTTP- und HTTPS-Zugriff an den LXC-Container weiterzuleiten, in dem die JUJU-GUI ausgeführt wird:
sudo iptables -t nat -I PREROUTING -p tcp -d <host-ip> --dport 443 -j DNAT --to <lxc-ip>:443
sudo iptables -t nat -I PREROUTING -p tcp -d <host-ip> --dport 80 -j DNAT --to <lxc-ip>:80
sudo iptables -A FORWARD -p tcp -d <lxc-ip> --dport 443 -j ACCEPT
sudo iptables -A FORWARD -p tcp -d <lxc-ip> --dport 80 -j ACCEPT
Mithilfe des oben genannten kann ich nun über das Internet auf Juju-GUI zugreifen, das in einem LXC-Container im „lokalen“ Providermodus ausgeführt wird.
Alle bereitgestellten Charms ... werden in anderen LXC-Containern auf demselben Host bereitgestellt.
Antwort2
Die kurze Antwort lautet, dass dies derzeit keine getestete und unterstützte Methode zum Einrichten der Juju-GUI ist. Um zu funktionieren, muss eine direkte WSS-Kommunikation mit den Juju-Statusservern vorhanden sein. Das Team ist jedoch daran interessiert und ich bin neugierig, ob Sie uns weitere Einzelheiten zu Ihrem Setup mitteilen könnten, um zu sehen, ob wir daran arbeiten können, es zu ermöglichen und zu unterstützen.
Antwort3
Sie müssen nur diesen Befehl auf dem Terminal Ihres Computers verwenden, um Ihrem Container eine statische Route hinzuzufügen.
sudo route add -net 10.X.X.X/24 gw SERVERIP
Wenn beispielsweise die Adresse meines öffentlichen Servers lautet 1.1.1.1
und die Adresse meines Containers ist, 10.0.3.194/24
ist der zu verwendende Befehl:
sudo route add -net 10.0.3.0/24 gw 1.1.1.1