[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를 재시작 해주니 별다른 에러 없이 잘 동작하는 것을 볼 수 있었습니다.

 

이상으로 트러블 슈팅이라고 말하기도 부끄러운 트러블 슈팅 과정을 마칩니다,,

 

 

TAGS.

Comments