7.5. 플랫 공급자 네트워크에서 인스턴스 물리적 네트워크 연결 문제 해결
"Flat provider 네트워크 패킷 흐름은 어떻게 작동합니까?"에 제공된 출력은 모든 문제가 발생하는 경우 플랫 프로바이더 네트워크 문제 해결에 필요한 충분한 디버깅 정보를 제공합니다. 다음 단계에는 문제 해결 프로세스에 대한 추가 정보가 포함되어 있습니다.
절차
1. bridge_mappings를 검토합니다.
사용하는 물리적 네트워크 이름(예: physnet1)이
다음 예와 같이 bridge_mapping
구성 내용과 일치하는지 확인합니다.
# grep bridge_mapping /etc/neutron/plugins/ml2/openvswitch_agent.ini bridge_mappings = physnet1:br-ex # openstack network show provider-flat ... | provider:physical_network | physnet1 ...
2. 네트워크 구성을 검토합니다.
네트워크가 외부로
생성되고 flat
유형을 사용하는지 확인합니다.
# openstack network show provider-flat ... | provider:network_type | flat | | router:external | True | ...
3. patch-peer를 검토합니다.
ovs-vsctl show
명령을 실행하고 patch-peer int
가 연결되어 있는지 확인합니다.
-br
-ex-ex <--> phy-br-ex를 사용하여 br-int
및 br
# ovs-vsctl show Bridge br-int fail_mode: secure Port int-br-ex Interface int-br-ex type: patch options: {peer=phy-br-ex}
br-ex
의 patch-peer 구성 예 :
Bridge br-ex Port phy-br-ex Interface phy-br-ex type: patch options: {peer=int-br-ex} Port br-ex Interface br-ex type: internal
이 연결은 bridge_mapping이
서비스를 다시 시작할 때 생성됩니다. 서비스를 다시 시작한 후 연결이 생성되지 않는 경우 /etc/neutron/plugins/ml2/
openvswitch-agentopenvswitch_
agent.ini에 올바르게 구성된 경우 neutron-bridge_mapping
설정을 다시 확인합니다.
4. 네트워크 흐름을 검토합니다.
ovs-ofctl dump-flows br-ex
및 ovs-ofctl dump-flows br-int
를 실행하고 흐름이 나가는 패킷의 내부 VLAN ID를 제거하고 들어오는 패킷의 VLAN ID를 추가하는지 검토합니다. 이 흐름은 먼저 특정 컴퓨팅 노드에서 이 네트워크에 인스턴스를 생성할 때 추가됩니다.
-
인스턴스를 생성한 후에 이 흐름을 생성하지 않으면 네트워크가
flat
, external,physical
_network
이름이 올바른지 확인합니다. 또한bridge_mapping
설정을 검토합니다. -
마지막으로
ifcfg-br-ex
및ifcfg-ethx
구성을 검토합니다.ethX
가br-ex 내의 포트로 추가되고
에ifcfg-
br-ex 및ifcfg-
ethxip a
의 출력에UP
플래그가 있는지 확인합니다.
다음 출력은 eth1
이 br-ex
의 포트임을 보여줍니다.
Bridge br-ex Port phy-br-ex Interface phy-br-ex type: patch options: {peer=int-br-ex} Port "eth1" Interface "eth1"
다음 예제에서는 eth1
이 OVS 포트로 구성되어 있고 커널이 인터페이스에서 모든 패킷을 전송하고 OVS 브리지 br-ex
로 전송한다는 것을 보여줍니다. 이는 master ovs-system
항목에서 확인할 수 있습니다.
# ip a 5: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master ovs-system state UP qlen 1000