Единый интерфейс Devstack не работает в ubuntu 20.04

#openstack #devstack #openstack-neutron

Вопрос:

Пытаюсь вызвать openstack с помощью сценариев devstack с ветвью stable/wallaby (также пытался stable/xena) использовать единый интерфейс со справочной конфигурацией отсюда. Однако при укладке установка завершается неудачно из-за arping . Ниже мой netplan , local.conf и error.log

netplan

 # This is the network config written by 'subiquity'
network:
  ethernets:
    enp0s3:
      addresses:
      - 192.168.2.25/24
      gateway4: 192.168.2.1
      nameservers:
        addresses: [8.8.8.8, 8.8.4.4]
        search: [kp.local]
#    enp0s8:
#      dhcp4: true
  version: 2
 

local.conf

 [[local|localrc]]

# DEST=/opt/stack
# DATA_DIR=$DEST/data


LIBVIRT_TYPE=kvm

# ===== BEGIN localrc credentials =====
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=secret
RABBIT_PASSWORD=secret
SERVICE_PASSWORD=$ADMIN_PASSWORD
SERVICE_TOKEN=$ADMIN_PASSWORD
DATABASE_TYPE=secret
# ================END ==================

# ===== BEGIN localrc component branches =====
KEYSTONE_BRANCH=stable/wallaby
NOVA_BRANCH=stable/wallaby
NEUTRON_BRANCH=stable/wallaby
CINDER_BRANCH=stable/wallaby
GLANCE_BRANCH=stable/wallaby
REQUIREMENTS_BRANCH=stable/wallaby
HORIZON_BRANCH=stable/wallaby
MAGNUM_BRANCH=stable/wallaby
OCTAVIA_BRANCH=stable/wallaby
HEAT_BRANCH=stable/wallaby
PLACEMENT_BRANCH=stable/wallaby
# ================END ==================

HOST_IP=192.168.2.25
SERVICE_HOST=192.168.2.25
MYSQL_HOST=192.168.2.25
RABBIT_HOST=192.168.2.25
GLANCE_HOSTPORT=192.168.2.25:9292

## Neutron options
Q_USE_SECGROUP=True
FLOATING_RANGE="192.168.2.0/24"
IPV4_ADDRS_SAFE_TO_USE="10.0.0.0/22"
Q_FLOATING_ALLOCATION_POOL=start=192.168.2.250,end=192.168.2.254
PUBLIC_NETWORK_GATEWAY="192.168.2.1"
PUBLIC_INTERFACE=enp0s3

# Open vSwitch provider networking configuration
Q_USE_PROVIDERNET_FOR_PUBLIC=True
OVS_PHYSICAL_BRIDGE=br-ex
PUBLIC_BRIDGE=br-ex
OVS_BRIDGE_MAPPINGS=public:br-ex

disable_service tempest
disable_service c-api
disable_service c-vol
disable_service c-sch
 

ошибка.журнал

  lib/neutron-legacy:_move_neutron_addresses_route:631  DEFAULT_ROUTE_GW=192.168.2.1
 lib/neutron-legacy:_move_neutron_addresses_route:632  local ADD_OVS_PORT=
 lib/neutron-legacy:_move_neutron_addresses_route:633  local DEL_OVS_PORT=
 lib/neutron-legacy:_move_neutron_addresses_route:634  local ARP_CMD=
  lib/neutron-legacy:_move_neutron_addresses_route:636  ip -f inet a s dev enp0s3 scope global primary
  lib/neutron-legacy:_move_neutron_addresses_route:636  awk '{ print $2, $3, $4; exit }'
  lib/neutron-legacy:_move_neutron_addresses_route:636  grep inet
 lib/neutron-legacy:_move_neutron_addresses_route:636  IP_BRD='192.168.2.25/24 brd 192.168.2.255'
 lib/neutron-legacy:_move_neutron_addresses_route:638  '[' 192.168.2.1 '!=' '' ']'
 lib/neutron-legacy:_move_neutron_addresses_route:639  ADD_DEFAULT_ROUTE='sudo ip -f inet r replace default via 192.168.2.1 dev br-ex'
 lib/neutron-legacy:_move_neutron_addresses_route:642  [[ True == True ]]
 lib/neutron-legacy:_move_neutron_addresses_route:643  ADD_OVS_PORT='sudo ovs-vsctl --may-exist add-port br-ex enp0s3'
 lib/neutron-legacy:_move_neutron_addresses_route:646  [[ False == True ]]
 lib/neutron-legacy:_move_neutron_addresses_route:650  [[ 192.168.2.25/24 brd 192.168.2.255 != '' ]]
 lib/neutron-legacy:_move_neutron_addresses_route:651  IP_DEL='sudo ip addr del 192.168.2.25/24 brd 192.168.2.255 dev enp0s3'
 lib/neutron-legacy:_move_neutron_addresses_route:652  IP_REPLACE='sudo ip addr replace 192.168.2.25/24 brd 192.168.2.255 dev br-ex'
 lib/neutron-legacy:_move_neutron_addresses_route:653  IP_UP='sudo ip link set br-ex up'
 lib/neutron-legacy:_move_neutron_addresses_route:654  [[ inet == inet ]]
  lib/neutron-legacy:_move_neutron_addresses_route:655  grep -o -E '(.*)/'
  lib/neutron-legacy:_move_neutron_addresses_route:655  awk '{ print $1; exit }'
  lib/neutron-legacy:_move_neutron_addresses_route:655  echo 192.168.2.25/24 brd 192.168.2.255
  lib/neutron-legacy:_move_neutron_addresses_route:655  cut -d / -f1
 lib/neutron-legacy:_move_neutron_addresses_route:655  IP=192.168.2.25
 lib/neutron-legacy:_move_neutron_addresses_route:656  ARP_CMD='sudo arping -A -c 3 -w 5 -I br-ex 192.168.2.25 '
 lib/neutron-legacy:_move_neutron_addresses_route:662  sudo ip addr del 192.168.2.25/24 brd 192.168.2.255 dev enp0s3
 lib/neutron-legacy:_move_neutron_addresses_route:662  sudo ip addr replace 192.168.2.25/24 brd 192.168.2.255 dev br-ex
 lib/neutron-legacy:_move_neutron_addresses_route:662  sudo ip link set br-ex up
 lib/neutron-legacy:_move_neutron_addresses_route:662  sudo ovs-vsctl --may-exist add-port br-ex enp0s3
 lib/neutron-legacy:_move_neutron_addresses_route:662  sudo ip -f inet r replace default via 192.168.2.1 dev br-ex
 lib/neutron-legacy:_move_neutron_addresses_route:662  sudo arping -A -c 3 -w 5 -I br-ex 192.168.2.25
ARPING 192.168.2.25 from 192.168.2.25 br-ex
Sent 3 probes (3 broadcast(s))
Received 0 response(s)
 lib/neutron-legacy:_move_neutron_addresses_route:1  exit_trap
 ./stack.sh:exit_trap:507                  local r=1
  ./stack.sh:exit_trap:508                  jobs -p
 ./stack.sh:exit_trap:508                  jobs=
 ./stack.sh:exit_trap:511                  [[ -n '' ]]
 ./stack.sh:exit_trap:517                  '[' -f /tmp/tmp.GwhIdPn4j8 ']'
 ./stack.sh:exit_trap:518                  rm /tmp/tmp.GwhIdPn4j8
 ./stack.sh:exit_trap:522                  kill_spinner
 ./stack.sh:kill_spinner:417               '[' '!' -z '' ']'
 ./stack.sh:exit_trap:524                  [[ 1 -ne 0 ]]
 ./stack.sh:exit_trap:525                  echo 'Error on exit'
Error on exit
 ./stack.sh:exit_trap:527                  type -p generate-subunit
 ./stack.sh:exit_trap:528                  generate-subunit 1635311963 363 fail
 ./stack.sh:exit_trap:530                  [[ -z /opt/stack/logs ]]
 ./stack.sh:exit_trap:533                  /usr/bin/python3.8 /opt/devstack/tools/worlddump.py -d /opt/stack/logs
World dumping... see /opt/stack/logs/worlddump-2021-10-27-052526.txt for details
 ./stack.sh:exit_trap:542
 

However if I enable flat interface and comment out Q_USE_PROVIDERNET_FOR_PUBLIC field as shown in below local.conf though arping works and ovs configuration gets created, however while dowloading the cirros image installation fails. The reason being name resolution fails, able to ping the 8.8.8.8 though curl of google.co.in fails with name or service not found.

local.conf

 [[local|localrc]]

# DEST=/opt/stack
# DATA_DIR=$DEST/data


LIBVIRT_TYPE=kvm

# ===== BEGIN localrc credentials =====
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=secret
RABBIT_PASSWORD=secret
SERVICE_PASSWORD=$ADMIN_PASSWORD
SERVICE_TOKEN=$ADMIN_PASSWORD
DATABASE_TYPE=secret
# ================END ==================

# ===== BEGIN localrc component branches =====
KEYSTONE_BRANCH=stable/wallaby
NOVA_BRANCH=stable/wallaby
NEUTRON_BRANCH=stable/wallaby
CINDER_BRANCH=stable/wallaby
GLANCE_BRANCH=stable/wallaby
REQUIREMENTS_BRANCH=stable/wallaby
HORIZON_BRANCH=stable/wallaby
MAGNUM_BRANCH=stable/wallaby
OCTAVIA_BRANCH=stable/wallaby
HEAT_BRANCH=stable/wallaby
PLACEMENT_BRANCH=stable/wallaby
# ================END ==================

HOST_IP=192.168.2.25
SERVICE_HOST=192.168.2.25
MYSQL_HOST=192.168.2.25
RABBIT_HOST=192.168.2.25
GLANCE_HOSTPORT=192.168.2.25:9292

## Neutron options
Q_USE_SECGROUP=True
FLOATING_RANGE="192.168.2.0/24"
IPV4_ADDRS_SAFE_TO_USE="10.0.0.0/22"
Q_FLOATING_ALLOCATION_POOL=start=192.168.2.250,end=192.168.2.254
PUBLIC_NETWORK_GATEWAY="192.168.2.1"
#PUBLIC_INTERFACE=enp0s3
FLAT_INTERFACE=enp0s3

# Open vSwitch provider networking configuration
#Q_USE_PROVIDERNET_FOR_PUBLIC=True
#OVS_PHYSICAL_BRIDGE=br-ex
#PUBLIC_BRIDGE=br-ex
#OVS_BRIDGE_MAPPINGS=public:br-ex


disable_service tempest
disable_service c-api
disable_service c-vol
disable_service c-sch