Skip to content

Instantly share code, notes, and snippets.

@iartarisi
Last active December 25, 2015 00:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save iartarisi/6886586 to your computer and use it in GitHub Desktop.
Save iartarisi/6886586 to your computer and use it in GitHub Desktop.
openstack-compute attributes

######################################################################## Toggles - These can be overridden at the environment level OS provides packages ######################################################################## Set to some text value if you want templated config files to contain a custom banner at the top of the written file

default["enable_monit"] = false  
default["openstack"]["compute"]["custom_template_banner"] = "
# This file autogenerated by Chef
# Do not edit, changes will be overwritten
"

The name of the Chef role that knows about the message queue server that Nova uses

default["openstack"]["compute"]["rabbit_server_chef_role"] = "os-ops-messaging"

The name of the Chef role that sets up the Keystone Service API

default["openstack"]["compute"]["identity_service_chef_role"] = "os-identity"

This user's password is stored in an encrypted databag and accessed with openstack-common cookbook library's db_password routine.

default["openstack"]["compute"]["db"]["username"] = "nova"

This user's password is stored in an encrypted databag and accessed with openstack-common cookbook library's user_password routine. You are expected to create the user, pass, vhost in a wrapper rabbitmq cookbook.

default["openstack"]["compute"]["rabbit"]["username"] = "guest"
default["openstack"]["compute"]["rabbit"]["vhost"] = "/"
default["openstack"]["compute"]["rabbit"]["port"] = 5672
default["openstack"]["compute"]["rabbit"]["host"] = "127.0.0.1"
default["openstack"]["compute"]["rabbit"]["ha"] = false

Logging stuff

default["openstack"]["compute"]["syslog"]["use"] = false
default["openstack"]["compute"]["syslog"]["facility"] = "LOG_LOCAL1"
default["openstack"]["compute"]["syslog"]["config_facility"] = "local1"

Support multiple network types. Default network type is "nova" with the other option supported being "quantum"

default["openstack"]["compute"]["network"]["service_type"] = "nova"

if the network type is not nova, we will load the following plugins from openstack-network

default["openstack"]["compute"]["network"]["plugins"] = ["openvswitch", "dhcp_agent"]

Quantum options

default["openstack"]["compute"]["network"]["quantum"]["network_api_class"] = "nova.network.q
uantumv2.api.API"                                                                          
default["openstack"]["compute"]["network"]["quantum"]["auth_strategy"] = "keystone"
default["openstack"]["compute"]["network"]["quantum"]["admin_tenant_name"] = "service"
default["openstack"]["compute"]["network"]["quantum"]["admin_username"] = "quantum"
default["openstack"]["compute"]["network"]["quantum"]["libvirt_vif_driver"] = "nova.virt.lib
virt.vif.LibvirtHybridOVSBridgeDriver"                                                     
default["openstack"]["compute"]["network"]["quantum"]["linuxnet_interface_driver"] = "nova.n
etwork.linux_net.LinuxOVSInterfaceDriver"                                                  
default["openstack"]["compute"]["network"]["quantum"]["security_group_api"] = "quantum"
default["openstack"]["compute"]["network"]["quantum"]["service_quantum_metadata_proxy"] = tr
ue                                                                                         
default["openstack"]["compute"]["network"]["quantum"]["metadata_secret_name"] = "quantum_met
adata_shared_secret"                                                                       
default["openstack"]["compute"]["network"]["quantum"]["public_network_name"] = "public"
default["openstack"]["compute"]["network"]["quantum"]["dns_server"] = "8.8.8.8"

DMZ CIDR is a range of IP addresses that should not have their addresses SNAT'ed by the nova network controller https://bugs.launchpad.net/nova/+bug/1075859

default["openstack"]["compute"]["network"]["dmz_cidr"] = "10.128.0.0/24"
default["openstack"]["compute"]["network"]["network_manager"] = "nova.network.manager.FlatDH
CPManager"                                                                                 
default["openstack"]["compute"]["network"]["public_interface"] = "eth0"
default["openstack"]["compute"]["network"]["vlan_interface"] = "eth0"
default["openstack"]["compute"]["network"]["use_single_default_gateway"] = false

start will cause nova-compute to error out if a VM is already running, where resume checks to see if it is running first. requires https://review.openstack.org/#/c/8423/

default["openstack"]["compute"]["config"]["start_guests_on_host_boot"] = false
default["openstack"]["compute"]["config"]["resume_guests_state_on_host_boot"] = true

If true, create a config drive regardless of if the user specified --config-drive true in th eir nova boot call

default["openstack"]["compute"]["config"]["force_config_drive"] = "false"

Volume API class (driver)

default["openstack"]["compute"]["config"]["volume_api_class"] = "nova.volume.cinder.API"

quota settings (StrOpt) default driver to use for quota checks (default: nova.quota.DbQuotaDriver) number of instance cores allowed per project (default: 20) number of fixed ips allowed per project (this should be at least the number of instances all owed) (default: -1)
number of floating ips allowed per project (default: 10) number of bytes allowed per injected file (default: 10240) number of bytes allowed per injected file path (default: 255) number of injected files allowed (default: 5) number of instances allowed per project (defailt: 10) number of key pairs per user (default: 100) number of metadata items allowed per instance (default: 128) megabytes of instance ram allowed per project (default: 51200)

default["openstack"]["compute"]["config"]["quota_security_groups"] = 50
default["openstack"]["compute"]["config"]["quota_security_group_rules"] = 20
default["openstack"]["compute"]["config"]["quota_driver"] = "nova.quota.DbQuotaDriver"
default["openstack"]["compute"]["config"]["quota_cores"] = 20
default["openstack"]["compute"]["config"]["quota_fixed_ips"] = -1
default["openstack"]["compute"]["config"]["quota_floating_ips"] = 10
default["openstack"]["compute"]["config"]["quota_injected_file_content_bytes"] = 10240
default["openstack"]["compute"]["config"]["quota_injected_file_path_bytes"] = 255
default["openstack"]["compute"]["config"]["quota_injected_files"] = 5
default["openstack"]["compute"]["config"]["quota_instances"] = 10
default["openstack"]["compute"]["config"]["quota_key_pairs"] = 100
default["openstack"]["compute"]["config"]["quota_metadata_items"] = 128
default["openstack"]["compute"]["config"]["quota_ram"] = 51200

Keystone settings

default["openstack"]["compute"]["api"]["auth_strategy"] = "keystone"

Setting this to v2.0. See discussion on https://bugs.launchpad.net/openstack-chef/+bug/1207504

default["openstack"]["compute"]["api"]["auth"]["version"] = "v2.0"

Keystone PKI signing directories

default["openstack"]["compute"]["api"]["auth"]["cache_dir"] = "/var/cache/nova/api"

Perform nova-conductor operations locally (boolean value)

default["openstack"]["compute"]["conductor"]["use_local"] = "False"

me thinks this is right? Websockify is needed due to https://bugs.launchpad.net/ubuntu/+source/nova/+bug/1076442

    "compute_vncproxy_service" => "openstack-nova-novncproxy",
    "compute_vncproxy_consoleauth_packages" => ["openstack-nova-console"],
    "compute_vncproxy_consoleauth_service" => "openstack-nova-console",
    "compute_vncproxy_consoleauth_process_name" => "nova-console",
    "libvirt_packages" => ["libvirt"],
    "libvirt_service" => "libvirtd",
    "compute_cert_packages" => ["openstack-nova-cert"],
    "compute_cert_service" => "openstack-nova-cert",
    "mysql_service" => "mysqld",
    "common_packages" => ["openstack-nova-common"],
    "iscsi_helper" => "ietadm",
    "nfs_packages" => ["nfs-utils", "nfs-utils-lib"],
    "package_overrides" => ""
  }
  if platform == "suse"
    default["openstack"]["compute"]["platform"]["common_packages"] = ["openstack-nova"]
    default["openstack"]["compute"]["platform"]["kvm_packages"] = ["kvm"]
    default["openstack"]["compute"]["platform"]["xen_packages"] = ["kernel-xen", "xen", "xen
-tools"]                                                                                   
    default["openstack"]["compute"]["platform"]["lxc_packages"] = ["lxc"]
    default["openstack"]["compute"]["platform"]["nfs_packages"] = ["nfs-utils"]
  end
when "ubuntu"
  default["openstack"]["compute"]["platform"] = {
    "api_ec2_packages" => ["nova-api-ec2"],
    "api_ec2_service" => "nova-api-ec2",
    "api_os_compute_packages" => ["nova-api-os-compute"],
    "api_os_compute_process_name" => "nova-api-os-compute",
    "api_os_compute_service" => "nova-api-os-compute",
    "memcache_python_packages" => ["python-memcache"],
    "neutron_python_packages" => ["python-quantumclient", "python-pyparsing"],
    "compute_api_metadata_packages" => ["nova-api-metadata"],
    "compute_api_metadata_service" => "nova-api-metadata",
    "compute_api_metadata_process_name" => "nova-api-metadata",
    "compute_compute_packages" => ["nova-compute"],
    "compute_compute_service" => "nova-compute",
    "compute_network_packages" => ["iptables", "nova-network"],
    "compute_network_service" => "nova-network",
    "compute_scheduler_packages" => ["nova-scheduler"],
    "compute_scheduler_service" => "nova-scheduler",
    "compute_conductor_packages" => ["nova-conductor"],
    "compute_conductor_service" => "nova-conductor",
        "compute_vncproxy_packages" => ["novnc", "websockify", "nova-novncproxy"],
    "compute_vncproxy_service" => "nova-novncproxy",
    "compute_vncproxy_consoleauth_packages" => ["nova-consoleauth"],
    "compute_vncproxy_consoleauth_service" => "nova-consoleauth",
    "compute_vncproxy_consoleauth_process_name" => "nova-consoleauth",
    "libvirt_packages" => ["libvirt-bin"],
    "libvirt_service" => "libvirt-bin",
    "compute_cert_packages" => ["nova-cert"],
    "compute_cert_service" => "nova-cert",
    "mysql_service" => "mysql",
    "common_packages" => ["nova-common"],
    "iscsi_helper" => "tgtadm",
    "nfs_packages" => ["nfs-common"],
    "package_overrides" => "-o Dpkg::Options::='--force-confold' -o Dpkg::Options::='--force
-confdef'"                                                                                 
  }
end

plugins

default["openstack"]["compute"]["plugins"] = nil
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment