로컬 공급자의 juju-gui에 대한 액세스를 허용하는 구성은 무엇입니까

로컬 공급자의 juju-gui에 대한 액세스를 허용하는 구성은 무엇입니까

클라우드 인스턴스에 로컬 공급자(re lxc)를 사용하여 juju-gui를 설치하고 싶습니다. 그러나 내가 가진 문제는 juju-gui가 lxc 컨테이너 자체에 설치되고 해당 컨테이너가 라우팅할 수 없는 10.xxx 주소가 된다는 것입니다.

나는 이것에 따라 약간의 진전을 이루었습니다.일반 지침

그런 다음 주요 파일을 생성한 후 juju-gui 컨테이너에 해당 파일의 복사본과 호스트( 호스트 및 /etc/ssl/certs컨테이너 에)가 있는지 확인했습니다./etc/ssl/private/var/lib/lxc/cn_name/rootfs/etc/ssl/certs/var/lib/lxc/cn_name/rootfs/etc/ssl/private

내 브라우저를 호스트 클라우드 인스턴스의 공용 IP로 지정하면 juju-gui 웹 관리자 로그인 페이지로 리디렉션되지만 "Juju 환경에 연결 중"이라는 메시지가 계속 표시됩니다.

누군가가 이전에 이 작업을 수행했다고 확신하지만 지금은 무엇이 올바르게 구성되지 않았는지 알아내려고 노력하고 있습니다.

내 목표는 내 브라우저가 클라우드 인스턴스 공개 주소를 가리키도록 하고 juju-gui에 로그인하고 로컬 공급자가 해당 클라우드 인스턴스 내의 더 많은 LXC 컨테이너에 추가 참/서비스를 배포하도록 설정했기 때문입니다.

답변1

마침내 다음 IPTABLES 명령을 사용하여 JUJU-GUI가 실행 중인 LXC 컨테이너에 HTTP 및 HTTPS 액세스를 전달했습니다.

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

위의 방법을 사용하면 이제 인터넷에서 "로컬" 공급자 모드로 LXC 컨테이너에서 실행되는 Juju-GUI에 액세스할 수 있습니다.

배포된 모든 참은 동일한 호스트의 다른 LXC 컨테이너에 배포됩니다.

답변2

짧은 대답은 이것이 현재 Juju GUI 설정에 대한 테스트 및 지원 방법이 아니라는 것입니다. 작동하려면 juju 상태 서버와 직접 wss 통신이 필요합니다. 하지만 팀에서는 이에 관심이 있으며, 이를 활성화하고 지원하기 위해 할 수 있는 작업이 있는지 확인하기 위해 설정에 대한 좀 더 구체적인 내용을 공유해 주실 수 있는지 궁금합니다.

답변3

컨테이너에 고정 경로를 추가하려면 컴퓨터 터미널에서 이 명령을 사용하기만 하면 됩니다.

sudo route add -net 10.X.X.X/24 gw SERVERIP

예를 들어 내 공개 서버 주소가 이고 1.1.1.1내 컨테이너 주소가 다음과 같은 경우 10.0.3.194/24사용할 명령은 다음과 같습니다.

sudo route add -net 10.0.3.0/24 gw 1.1.1.1

관련 정보