[Openstack ] 오픈스택 VPNaaS 환경 구성 과정에서 발생한 Max retries exceeded with url 에러 메시지 출력 문제
blog post
VPNaaS를 구성하는 과정에서, 앞서 발생한 인스턴스의 네트워킹 문제를 해결하니 또 다른 문제가 발생하였습니다. 이번 포스트를 통해 이 이슈를 해결(?)하는 과정을 기록해 둡니다. 혹시 비슷한 현상을 겪고 있는 분들에게 도움이 되길 바랍니다.
openstack vpn 관련 명령어를 입력하니 다음과 같이 "...Max retries exceeded with url..." 관련 메시지가 출력되기 시작했습니다.
[root@Controller img]# openstack vpn ike policy list
Unable to establish connection to http://10.0.0.26:9696/v2.0/vpn/ikepolicies: HTTPConnectionPool(host='10.0.0.26', port=9696): Max retries exceeded with url:
/v2.0/vpn/ikepolicies (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7fbe085c6d90>: Failed to establish a new connection: [Er
rno 111] \xec\x97\xb0\xea\xb2\xb0\xec\x9d\xb4 \xea\xb1\xb0\xeb\xb6\x80\xeb\x90\xa8',))
컨트롤러 노드에서 neutron-server 재시작도 불가능한 상황에 처했고,,
[root@Controller neutron]# systemctl restart network-server
Failed to restart network-server.service: Unit not found.
journalctl로 실시간 메시지를 확인해보니 역시나, 연신 에러 메시지를 뿜어내고 있었습니다.
[root@Controller neutron]# journalctl -f
-- Logs begin at 금 2019-11-29 02:44:41 KST. --
5월 12 23:32:51 Controller neutron-server[104365]: /usr/lib/python2.7/site-packages/paste/deploy/loadwsgi.py:22: PkgResourcesDeprecationWarning: Parameters
to load are deprecated. Call .resolve and .require separately.
5월 12 23:32:51 Controller neutron-server[104365]: return pkg_resources.EntryPoint.parse("x=" + s).load(False)
5월 12 23:32:52 Controller neutron-server[104365]: Delete associated vpnservices ['309a23df-a1de-4273-906f-0d2f3a875fa8'] before removing providers [u'opens
wan'].
5월 12 23:32:52 Controller systemd[1]: neutron-server.service: main process exited, code=exited, status=1/FAILURE
5월 12 23:32:52 Controller systemd[1]: Failed to start OpenStack Neutron Server.
5월 12 23:32:52 Controller systemd[1]: Unit neutron-server.service entered failed state.
5월 12 23:32:52 Controller systemd[1]: neutron-server.service failed.
5월 12 23:32:52 Controller systemd[1]: neutron-server.service holdoff time over, scheduling restart.
5월 12 23:32:52 Controller systemd[1]: Stopped OpenStack Neutron Server.
5월 12 23:32:52 Controller systemd[1]: Starting OpenStack Neutron Server...
5월 12 23:32:54 Controller neutron-server[104384]: /usr/lib/python2.7/site-packages/paste/deploy/loadwsgi.py:22: PkgResourcesDeprecationWarning: Parameters
to load are deprecated. Call .resolve and .require separately.
5월 12 23:32:54 Controller neutron-server[104384]: return pkg_resources.EntryPoint.parse("x=" + s).load(False)
5월 12 23:32:54 Controller neutron-server[104384]: Delete associated vpnservices ['309a23df-a1de-4273-906f-0d2f3a875fa8'] before removing providers [u'opens
wan'].
5월 12 23:32:55 Controller systemd[1]: neutron-server.service: main process exited, code=exited, status=1/FAILURE
5월 12 23:32:55 Controller systemd[1]: Failed to start OpenStack Neutron Server.
5월 12 23:32:55 Controller systemd[1]: Unit neutron-server.service entered failed state.
5월 12 23:32:55 Controller systemd[1]: neutron-server.service failed.
5월 12 23:32:55 Controller systemd[1]: neutron-server.service holdoff time over, scheduling restart.
5월 12 23:32:55 Controller systemd[1]: Stopped OpenStack Neutron Server.
5월 12 23:32:55 Controller systemd[1]: Starting OpenStack Neutron Server...
5월 12 23:32:56 Controller neutron-server[104401]: /usr/lib/python2.7/site-packages/paste/deploy/loadwsgi.py:22: PkgResourcesDeprecationWarning: Parameters
to load are deprecated. Call .resolve and .require separately.
우선 위에서 journalctl 메시지를 통해 vpn 서비스 설정에 문제가 있다는 것은 확인할 수 있었습니다. 따라서 neutron_vpnaas.conf, neutron.conf 설정 파일에 문제가 없는지 검토하기 시작했습니다.
역시 문제는 설정에 있었습니다. neutron_vpnaas.conf 파일을 확인해 보니 아래와 같이 설정되어 있었습니다.
[service_providers]
service_provider = VPN:strongswan:neutron_vpnaas.services.vpn.service_drivers.ipsec.IPsecVPNDriver:default
오픈스택 문서를 확인해보니 RHEL계열은 openswan을 쓴다고 하네요. 그래서 아래와 같이 바꿔줬습니다.
[service_providers]
service_provider = VPN:openswan:neutron_vpnaas.services.vpn.service_drivers.ipsec.IPsecVPNDriver:default
이후 neutron-server를 재시작 해주니 별다른 에러 없이 잘 동작하는 것을 볼 수 있었습니다.
이상으로 트러블 슈팅이라고 말하기도 부끄러운 트러블 슈팅 과정을 마칩니다,,