diff --git a/manifests/compute/controller.pp b/manifests/compute/controller.pp index 62c9e9fd..10a02188 100644 --- a/manifests/compute/controller.pp +++ b/manifests/compute/controller.pp @@ -34,9 +34,7 @@ class cloud::compute::controller( 'nova::cert', 'nova::consoleauth', 'nova::conductor', - # TODO(Emilien) Migrate to spice asap - #'nova::spicehtml5proxy', - 'nova::vncproxy', + 'nova::spicehtml5proxy' ]: enabled => true, } diff --git a/manifests/compute/hypervisor.pp b/manifests/compute/hypervisor.pp index 66f7fd23..35facc5f 100644 --- a/manifests/compute/hypervisor.pp +++ b/manifests/compute/hypervisor.pp @@ -27,14 +27,14 @@ # class cloud::compute::hypervisor( - $api_eth = $os_params::api_eth, - $libvirt_type = $os_params::libvirt_type, - $ks_nova_internal_proto = $os_params::ks_nova_internal_proto, - $ks_nova_internal_host = $os_params::ks_nova_internal_host, - $ks_nova_public_host = $os_params::ks_nova_public_host, - $nova_ssh_private_key = $os_params::nova_ssh_private_key, - $nova_ssh_public_key = $os_params::nova_ssh_public_key, - $has_ceph = false + $server_proxyclient_address = $os_params::internal_netif_ip, + $libvirt_type = $os_params::libvirt_type, + $ks_nova_internal_proto = $os_params::ks_nova_internal_proto, + $ks_nova_internal_host = $os_params::ks_nova_internal_host, + $nova_ssh_private_key = $os_params::nova_ssh_private_key, + $nova_ssh_public_key = $os_params::nova_ssh_public_key, + $spice_port = $os_params::spice_port, + $has_ceph = false ) { include 'cloud::compute' @@ -81,16 +81,25 @@ Host * } class { 'nova::compute': - enabled => true, - vncproxy_host => $ks_nova_public_host, - vncserver_proxyclient_address => $api_eth, + enabled => true, + vnc_enabled => false, #TODO(EmilienM) Bug #1259545 currently WIP: virtio_nic => false, neutron_enabled => true } + class { 'nova::compute::spice': + server_listen => '0.0.0.0', + server_proxyclient_address => $server_proxyclient_address, + proxy_host => $ks_nova_internal_host, + proxy_protocol => $ks_nova_internal_proto, + proxy_port => $spice_port + + } + class { 'nova::compute::libvirt': libvirt_type => $libvirt_type, + # Needed to support migration but we still use Spice: vncserver_listen => '0.0.0.0', migration_support => true, } diff --git a/manifests/loadbalancer.pp b/manifests/loadbalancer.pp index 208b9b32..93716fe3 100644 --- a/manifests/loadbalancer.pp +++ b/manifests/loadbalancer.pp @@ -41,8 +41,6 @@ class cloud::loadbalancer( $ks_cinder_public_port = $os_params::ks_cinder_public_port, $ks_ceilometer_public_port = $os_params::ks_ceilometer_public_port, $ks_ec2_public_port = $os_params::ks_ec2_public_port, - # TODO(Gonéri): will have to use os_params::ks_glance_api_public_port - # here in the future $ks_glance_api_public_port = $os_params::ks_glance_api_public_port, $ks_glance_registry_internal_port = $os_params::ks_glance_registry_internal_port, $ks_heat_public_port = $os_params::ks_heat_public_port, diff --git a/spec/classes/cloud_compute_controller_spec.rb b/spec/classes/cloud_compute_controller_spec.rb index cf7dc447..1976acc4 100644 --- a/spec/classes/cloud_compute_controller_spec.rb +++ b/spec/classes/cloud_compute_controller_spec.rb @@ -75,6 +75,10 @@ describe 'cloud::compute::controller' do should contain_class('nova::scheduler').with(:enabled => true) end + it 'configure nova-spicehtml5proxy' do + should contain_class('nova::spicehtml5proxy').with(:enabled => true) + end + it 'configure nova-cert' do should contain_class('nova::cert').with(:enabled => true) end @@ -87,10 +91,6 @@ describe 'cloud::compute::controller' do should contain_class('nova::conductor').with(:enabled => true) end - it 'configure nova-vncproxy' do - should contain_class('nova::vncproxy').with(:enabled => true) - end - it 'configure nova-api' do should contain_class('nova::api').with( :enabled => true, diff --git a/spec/classes/cloud_compute_hypervisor_spec.rb b/spec/classes/cloud_compute_hypervisor_spec.rb index 0054ef7e..95fb4cc3 100644 --- a/spec/classes/cloud_compute_hypervisor_spec.rb +++ b/spec/classes/cloud_compute_hypervisor_spec.rb @@ -39,11 +39,11 @@ describe 'cloud::compute::hypervisor' do let :params do { :libvirt_type => 'kvm', - :api_eth => '10.0.0.1', + :server_proxyclient_address => '7.0.0.1', + :spice_port => '6082', :nova_ssh_private_key => 'secrete', :nova_ssh_public_key => 'public', :ks_nova_internal_proto => 'http', - :ks_nova_public_host => '7.7.7.7', :ks_nova_internal_host => '10.0.0.1' } end @@ -78,13 +78,22 @@ describe 'cloud::compute::hypervisor' do it 'configure nova-compute' do should contain_class('nova::compute').with( :enabled => true, - :vncproxy_host => '7.7.7.7', - :vncserver_proxyclient_address => '10.0.0.1', + :vnc_enabled => false, :virtio_nic => false, :neutron_enabled => true ) end + it 'configure spice console' do + should contain_class('nova::compute::spice').with( + :server_listen => '0.0.0.0', + :server_proxyclient_address => '7.0.0.1', + :proxy_host => '10.0.0.1', + :proxy_protocol => 'http', + :proxy_port => '6082' + ) + end + it 'configure libvirt driver' do should contain_class('nova::compute::libvirt').with( :libvirt_type => 'kvm',