Puppet Class: cloud::compute::controller

Defined in:
manifests/compute/controller.pp

Overview

Parameters:

  • ks_keystone_internal_host (Any) (defaults to: $os_params::ks_keystone_internal_host)
  • ks_nova_password (Any) (defaults to: $os_params::ks_nova_password)
  • neutron_metadata_proxy_shared_secret (Any) (defaults to: $os_params::neutron_metadata_proxy_shared_secret)
  • api_eth (Any) (defaults to: $os_params::api_eth)
  • spice_port (Any) (defaults to: $os_params::spice_port)
  • ks_nova_public_port (Any) (defaults to: $os_params::ks_nova_public_port)
  • ks_ec2_public_port (Any) (defaults to: $os_params::ks_ec2_public_port)
  • ks_metadata_public_port (Any) (defaults to: $os_params::ks_metadata_public_port)


19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'manifests/compute/controller.pp', line 19

class cloud::compute::controller(
  $ks_keystone_internal_host            = $os_params::ks_keystone_internal_host,
  $ks_nova_password                     = $os_params::ks_nova_password,
  $neutron_metadata_proxy_shared_secret = $os_params::neutron_metadata_proxy_shared_secret,
  $api_eth                              = $os_params::api_eth,
  $spice_port                           = $os_params::spice_port,
  $ks_nova_public_port                  = $os_params::ks_nova_public_port,
  $ks_ec2_public_port                   = $os_params::ks_ec2_public_port,
  $ks_metadata_public_port              = $os_params::ks_metadata_public_port
){

  include 'cloud::compute'

  class { [
    'nova::scheduler',
    'nova::cert',
    'nova::consoleauth',
    'nova::conductor'
  ]:
    enabled => true,
  }

    class { 'nova::api':
      enabled                              => true,
      auth_host                            => $ks_keystone_internal_host,
      admin_password                       => $ks_nova_password,
      api_bind_address                     => $api_eth,
      metadata_listen                      => $api_eth,
      neutron_metadata_proxy_shared_secret => $neutron_metadata_proxy_shared_secret,
    }

    class { 'nova::spicehtml5proxy':
      enabled => true,
      host    => $api_eth
    }

  @@haproxy::balancermember{"${::fqdn}-compute_api_ec2":
    listening_service => 'ec2_api_cluster',
    server_names      => $::hostname,
    ipaddresses       => $api_eth,
    ports             => $ks_ec2_public_port,
    options           => 'check inter 2000 rise 2 fall 5'
  }

  @@haproxy::balancermember{"${::fqdn}-compute_api_nova":
    listening_service => 'nova_api_cluster',
    server_names      => $::hostname,
    ipaddresses       => $api_eth,
    ports             => $ks_nova_public_port,
    options           => 'check inter 2000 rise 2 fall 5'
  }

  @@haproxy::balancermember{"${::fqdn}-compute_api_metadata":
    listening_service => 'metadata_api_cluster',
    server_names      => $::hostname,
    ipaddresses       => $api_eth,
    ports             => $ks_metadata_public_port,
    options           => 'check inter 2000 rise 2 fall 5'
  }

  @@haproxy::balancermember{"${::fqdn}-compute_spice":
    listening_service => 'spice_cluster',
    server_names      => $::hostname,
    ipaddresses       => $api_eth,
    ports             => $spice_port,
    options           => 'check inter 2000 rise 2 fall 5'
  }

}