Merge "Make nova-compute work properly with libvirt"
This commit is contained in:
commit
bf3c7eda8a
@ -19,5 +19,7 @@ RUN yum -y install curl \
|
||||
openstack-nova-compute \
|
||||
; yum clean all
|
||||
|
||||
ADD config-nova-compute.sh /opt/kolla/config-nova-compute.sh
|
||||
ADD ./start.sh /start.sh
|
||||
|
||||
CMD ["/start.sh"]
|
||||
|
89
docker/nova-compute/nova-compute/config-nova-compute.sh
Executable file
89
docker/nova-compute/nova-compute/config-nova-compute.sh
Executable file
@ -0,0 +1,89 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /opt/kolla/kolla-common.sh
|
||||
|
||||
: ${NOVA_DB_USER:=nova}
|
||||
: ${NOVA_DB_NAME:=nova}
|
||||
: ${NOVA_KEYSTONE_USER:=admin}
|
||||
: ${NOVA_KEYSTONE_PASSWORD:=kolla}
|
||||
: ${ADMIN_TENANT_NAME:=admin}
|
||||
: ${RABBIT_USERID:=guest}
|
||||
: ${RABBIT_PASSWORD:=guest}
|
||||
|
||||
check_required_vars KEYSTONE_ADMIN_TOKEN \
|
||||
NOVA_DB_PASSWORD \
|
||||
NOVA_LIBVIRT_SERVICE_HOST
|
||||
|
||||
cfg=/etc/nova/nova.conf
|
||||
|
||||
crudini --set $cfg DEFAULT amqp_durable_queues False
|
||||
crudini --set $cfg DEFAULT rabbit_host ${RABBITMQ_SERVICE_HOST}
|
||||
crudini --set $cfg DEFAULT rabbit_port 5672
|
||||
crudini --set $cfg DEFAULT rabbit_hosts ${RABBITMQ_SERVICE_HOST}:5672
|
||||
crudini --set $cfg DEFAULT rabbit_use_ssl False
|
||||
crudini --set $cfg DEFAULT rabbit_userid ${RABBIT_USERID}
|
||||
crudini --set $cfg DEFAULT rabbit_password "${RABBIT_PASSWORD}"
|
||||
crudini --set $cfg DEFAULT rabbit_virtual_host /
|
||||
crudini --set $cfg DEFAULT rabbit_ha_queues False
|
||||
crudini --set $cfg DEFAULT rpc_backend nova.openstack.common.rpc.impl_kombu
|
||||
|
||||
crudini --set $cfg DEFAULT enabled_apis ec2,osapi_compute,metadata
|
||||
crudini --set $cfg DEFAULT ec2_listen 0.0.0.0
|
||||
crudini --set $cfg DEFAULT osapi_compute_listen 0.0.0.0
|
||||
crudini --set $cfg DEFAULT osapi_compute_workers 8
|
||||
crudini --set $cfg DEFAULT metadata_listen 0.0.0.0
|
||||
crudini --set $cfg DEFAULT metadata_workers 8
|
||||
crudini --set $cfg DEFAULT service_down_time 60
|
||||
crudini --set $cfg DEFAULT rootwrap_config /etc/nova/rootwrap.conf
|
||||
crudini --set $cfg DEFAULT auth_strategy keystone
|
||||
crudini --set $cfg DEFAULT use_forwarded_for False
|
||||
crudini --set $cfg DEFAULT service_neutron_metadata_proxy True
|
||||
crudini --set $cfg DEFAULT neutron_default_tenant_id default
|
||||
crudini --set $cfg DEFAULT novncproxy_host 0.0.0.0
|
||||
crudini --set $cfg DEFAULT novncproxy_port 6080
|
||||
crudini --set $cfg DEFAULT glance_api_servers ${GLANCE_API_SERVICE_HOST}:9292
|
||||
crudini --set $cfg DEFAULT network_api_class nova.network.neutronv2.api.API
|
||||
crudini --set $cfg DEFAULT metadata_host ${MY_IP}
|
||||
crudini --set $cfg DEFAULT cpu_allocation_ratio 16.0
|
||||
crudini --set $cfg DEFAULT ram_allocation_ratio 1.5
|
||||
crudini --set $cfg DEFAULT scheduler_default_filters RetryFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,CoreFilter
|
||||
crudini --set $cfg DEFAULT compute_driver nova.virt.libvirt.LibvirtDriver
|
||||
crudini --set $cfg DEFAULT vif_plugging_is_fatal True
|
||||
crudini --set $cfg DEFAULT vif_plugging_timeout 300
|
||||
crudini --set $cfg DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver
|
||||
crudini --set $cfg DEFAULT novncproxy_base_url http://${PUBLIC_IP}:6080/vnc_auto.html
|
||||
crudini --set $cfg DEFAULT vncserver_listen 0.0.0.0
|
||||
crudini --set $cfg DEFAULT vncserver_proxyclient_address ${MY_IP}
|
||||
crudini --set $cfg DEFAULT vnc_enabled True
|
||||
crudini --set $cfg DEFAULT volume_api_class nova.volume.cinder.API
|
||||
crudini --set $cfg DEFAULT image_service nova.image.glance.GlanceImageService
|
||||
crudini --set $cfg DEFAULT osapi_volume_listen 0.0.0.0
|
||||
crudini --set $cfg libvirt virt_type kvm
|
||||
crudini --set $cfg libvirt connection_uri qemu+tcp://${NOVA_LIBVIRT_SERVICE_HOS}/system
|
||||
|
||||
# configure logging to stderr
|
||||
crudini --del $cfg DEFAULT log_dir
|
||||
crudini --set $cfg DEFAULT log_file ""
|
||||
crudini --set $cfg DEFAULT use_stderr True
|
||||
crudini --set $cfg DEFAULT admin_token "${KEYSTONE_ADMIN_TOKEN}"
|
||||
|
||||
crudini --set $cfg conductor workers 8
|
||||
|
||||
for option in auth_protocol auth_host auth_port; do
|
||||
crudini --del $cfg \
|
||||
keystone_authtoken \
|
||||
$option
|
||||
done
|
||||
|
||||
crudini --set $cfg keystone_authtoken auth_uri "http://${KEYSTONE_PUBLIC_SERVICE_HOST}:5000/"
|
||||
crudini --set $cfg keystone_authtoken admin_user ${NOVA_KEYSTONE_USER}
|
||||
crudini --set $cfg keystone_authtoken admin_password "${NOVA_KEYSTONE_PASSWORD}"
|
||||
crudini --set $cfg keystone_authtoken admin_tenant_name ${ADMIN_TENANT_NAME}
|
||||
|
||||
cat > /openrc <<EOF
|
||||
export OS_AUTH_URL="http://${KEYSTONE_PUBLIC_SERVICE_HOST}:5000/v2.0"
|
||||
export OS_USERNAME="${NOVA_KEYSTONE_USER}"
|
||||
export OS_PASSWORD="${NOVA_KEYSTONE_PASSWORD}"
|
||||
export OS_TENANT_NAME="${ADMIN_TENANT_NAME}"
|
||||
EOF
|
||||
|
@ -1,45 +1,7 @@
|
||||
#!/bin/sh
|
||||
|
||||
. /opt/kolla/kolla-common.sh
|
||||
set -e
|
||||
|
||||
: ${NOVA_KEYSTONE_USER:=nova}
|
||||
: ${ADMIN_TENANT_NAME:=admin}
|
||||
|
||||
check_required_vars KEYSTONE_ADMIN_TOKEN KEYSTONE_SERVICE_HOST \
|
||||
NOVA_LIBVIRT_SERVICE
|
||||
|
||||
cfg=/etc/nova/nova.conf
|
||||
|
||||
crudini --set $cfg DEFAULT admin_token "${KEYSTONE_ADMIN_TOKEN}"
|
||||
crudini --sel $cfg DEFAULT log_file ""
|
||||
crudini --del $cfg DEFAULT log_dir
|
||||
crudini --set $cfg DEFAULT use_stderr True
|
||||
crudini --set $cfg \
|
||||
libvirt \
|
||||
connection_uri \
|
||||
"qemu+tcp://${NOVA_LIBVIRT_SERVICE}/system"
|
||||
|
||||
for option in auth_protocol auth_host auth_port; do
|
||||
crudini --del $cfg \
|
||||
keystone_authtoken \
|
||||
$option
|
||||
done
|
||||
|
||||
crudini --set $cfg \
|
||||
keystone_authtoken \
|
||||
auth_uri \
|
||||
"http://${KEYSTONE_SERVICE_HOST}:5000/"
|
||||
crudini --set $cfg \
|
||||
keystone_authtoken \
|
||||
admin_tenant_name \
|
||||
"${ADMIN_TENANT_NAME}"
|
||||
crudini --set $cfg \
|
||||
keystone_authtoken \
|
||||
admin_user \
|
||||
"${NOVA_KEYSTONE_USER}"
|
||||
crudini --set $cfg \
|
||||
keystone_authtoken \
|
||||
admin_password \
|
||||
"${NOVA_KEYSTONE_PASSWORD}"
|
||||
. /opt/kolla/config-nova-compute.sh
|
||||
|
||||
exec /usr/bin/nova-compute
|
||||
|
@ -30,7 +30,7 @@ desiredState:
|
||||
name: nova-compute
|
||||
replicaSelector:
|
||||
name: nova-compute
|
||||
replicas: 2
|
||||
replicas: 1
|
||||
id: nova-compute-controller
|
||||
kind: ReplicationController
|
||||
labels:
|
||||
|
@ -1,6 +1,6 @@
|
||||
apiVersion: v1beta1
|
||||
containerPort: 16509
|
||||
id: novalibvirt
|
||||
id: nova-libvirt
|
||||
kind: Service
|
||||
port: 16509
|
||||
selector:
|
||||
|
Loading…
x
Reference in New Issue
Block a user