openstack: eth1에 고정 IP를 사용하여 VM 구성

openstack: eth1에 고정 IP를 사용하여 VM 구성

eth1에 대한 고정 IP를 사용하여 두 개의 신뢰할 수 있는 VM을 만들려고 하는데 고정 주소 간의 ping이 실패합니다.

  • 하바나 대시보드를 통해 10.16.1/24 서브넷, 비활성화된 게이트웨이, 범위 10.16.1.100,10.16.1.120의 dhcp가 활성화된 네트워크를 만들었습니다.
  • 각각 2개의 NICS가 포함된 4개의 인스턴스를 시작했습니다. 일반 공용 인터페이스의 경우 eth0, 10.16.1/24 서브넷의 경우 eth1입니다.
  • 두 개의 VM에 로그인하고 dhcp용으로 구성된 eth1.cfg를 생성했습니다.
    자동 eth1
    iface eth1 inet dhcp
    
  • 다른 두 VM에 로그인하고 정적 정보로 구성된 eth1.cfg를 생성했습니다.
    자동 eth1
    iface eth1 inet 정적
      주소 10.16.1.2
      넷마스크 255.255.255.0
    
    • ifup eth1 각 VM에

각 dhcp 구성 VM에서 다른 dhcp 구성 VM을 ping할 수 있지만 정적으로 구성된 VM은 ping할 수 없습니다.

정적으로 구성된 VM에서는 다른 VM을 핑할 수 없습니다.

또한 네트워크용 라우터를 만들고 인터페이스 10.16.1.254를 추가해 보았습니다. 그러나 이것은 뚜렷한 변화를 가져오지 않았습니다. 또한 두 VM 모두에서 라우터를 핑할 수 없습니다.

내가 무엇을 놓치고 있나요?

답변1

추가 정보가 없으면 답변하기가 어렵습니다. 동일한 네트워크에 있으므로 방화벽 규칙이 문제가 될 것으로 예상하지 않습니다.

중성자나 노바를 사용하고 있습니까? 모든 중성자 서비스가 제대로 실행되고 있는지 확인할 수 있나요?

neutron agent-list

적어도 네트워크가 작동하는지 확인할 수 있도록 dhcp를 활성화하는 것이 좋습니다.

또한 VM은 동일한 물리적 하이퍼바이저에 함께 위치하거나 두 개에 걸쳐 분산되어 있습니다. 두 개에 분산되어 있는 경우 VLAN을 사용하고 있으며 이를 지원하도록 스위치를 구성했습니까?

Openstack에서 예약하지 않은 IP를 정적으로 구성하는 것이 Icehouse 이전에는 작동했지만 해당 릴리스의 변경 사항으로 인해 문제가 발생할 수 있다는 점을 지적할 가치가 있습니다.

다음을 실행하는 경우 VM 중 하나를 호스팅하는 컴퓨팅 노드에서

iptables -S | more

VM MAC 주소에 대한 출력을 검색합니다. 예를 들어 내 주소는 'FA:16:3E:D0:1A:5D'입니다.

다음과 같은 출력이 표시됩니다.

-A neutron-openvswi-see719639-9 -s 192.168.0.83/32 -m mac --mac-source FA:16:3E:BB:75:7E -j RETURN
-A neutron-openvswi-see719639-9 -j DROP

이는 192.168.0 .83/32로 향하는 MAC 주소에 대한 패킷만 허용한다는 의미입니다.

답변2

나는 이것이 중성자 DHCP 지원 네트워크에서 정적으로 구성된 IP 주소를 가지려는 이전 실험과 일치한다고 생각합니다. 제가 기억하기로, 당신이 하려는 일은 특정 중성자 네트워크에 대해 DHCP가 비활성화된 경우에는 작동하지만 활성화된 경우에는 작동하지 않습니다.

후자의 경우 IP 할당 IP 주소를 사용하여 이 VM 인터페이스에 대해 중성자 포트가 생성됩니다. 이 IP 및 서브넷과 일치하도록 게스트 VM을 정적으로 구성하면 작동합니다. 중성자 데이터베이스의 IP가 아닌 다른 IP에 대해 게스트를 정적으로 구성하려고 하면 구성되지 않습니다. 다른 것이 없다면 이는 동일한 네트워크에 있는 다른 VM의 IP를 가장하는 것을 허용하지 않으므로 IP 스푸핑 보호의 한 형태이며 일반적으로 가지고 있는 좋은 보호입니다.

따라서 한 가지 옵션은 네트워크에 대해 DHCP = 비활성화된 네트워크를 사용하는 것입니다. 또 다른 옵션은 Neutron이 할당한 동일한 IP에 대해 VM을 정적으로 구성하는 것입니다.

또 다른 일화: 한 경우에는 특정 VLAN을 통해 외부 네트워크를 OpenStack 네트워크에 연결했습니다. 이 네트워크에는 정적으로 구성된 물리적 서버만 있고 DHCP 서버는 없습니다. DHCP=활성화로 생성한 OpenStack 측 네트워크입니다. 동일한 CIDR의 기존 고정 IP와 충돌하지 않는 IP를 할당하기 위해 제한된 할당 범위를 사용하여 이 작업을 수행했습니다. Neutron은 VM에 대해 브리지된 포트만 관리하기 때문에 이는 네트워크에 정적으로 구성된 다른 장치(openstack/neutron 제어 외부)가 이 네트워크의 DHCP VM과 통신할 수 있음을 의미합니다. 그러나 이 설정을 사용하면 DHCP가 활성화된 동일한 Neutron 네트워크에서 정적 및 DHCP VM/게스트를 혼합하여 스핀업할 수 없습니다.

관련 정보