Use apache to run neutron api

The monolithic neutron-server service was removed due to removal of
eventlet library.

Also enable quiet mode in ssh-keyscan command to omit garbage records.

Co-Authored-By: Harald Jensås <hjensas@redhat.com>
Depends-On: https://review.opendev.org/c/openstack/puppet-neutron/+/963364
Change-Id: I8304673138de5620e66009d71df68992a729d6df
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
This commit is contained in:
Takashi Kajinami
2025-10-08 10:06:02 +09:00
parent 9d3df63790
commit f581a3d98a
3 changed files with 30 additions and 8 deletions

View File

@@ -271,7 +271,7 @@ def gather_host_keys(config, messages):
for host in compute_hosts:
local = utils.ScriptRunner()
local.append('ssh-keyscan %s' % host)
local.append('ssh-keyscan -q %s' % host)
retcode, hostkey = local.execute()
config['HOST_KEYS_%s' % host] = hostkey

View File

@@ -20,12 +20,33 @@ class packstack::neutron::api ()
})
}
$rpc_workrers = lookup('CONFIG_NEUTRON_L2_AGENT') ? {
'ovn' => 0,
default => lookup('CONFIG_SERVICE_WORKERS'),
}
$rpc_service_name = $rpc_workers ? {
0 => false,
default => undef,
}
$rpc_state_report_workers = lookup('CONFIG_NEUTRON_L2_AGENT') ? {
'ovn' => 0,
default => undef,
}
class { 'neutron::wsgi::apache':
bind_host => $bind_host,
ssl => false,
workers => lookup('CONFIG_SERVICE_WORKERS'),
}
class { 'neutron::server':
sync_db => true,
enabled => true,
api_workers => lookup('CONFIG_SERVICE_WORKERS'),
rpc_workers => lookup('CONFIG_SERVICE_WORKERS'),
service_providers => lookup('SERVICE_PROVIDERS', { merge => 'unique' }),
sync_db => true,
enabled => true,
api_workers => lookup('CONFIG_SERVICE_WORKERS'),
rpc_workers => $rpc_workers,
rpc_state_report_workers => $rpc_state_report_workers,
api_service_name => 'httpd',
rpc_service_name => $rpc_service_name,
service_providers => lookup('SERVICE_PROVIDERS', { merge => 'unique' }),
}
if $neutron_vpnaas_enabled {

View File

@@ -22,10 +22,11 @@ class packstack::placement ()
'database' => 'placement',
})
}
include placement::db::sync
include placement::api
class { 'placement::api':
api_service_name => 'httpd',
}
class { 'placement::wsgi::apache':
bind_host => $bind_host,
ssl => false,