aboutsummaryrefslogtreecommitdiffstats
path: root/puppet/compute-puppet.yaml
AgeCommit message (Collapse)AuthorFilesLines
2015-09-22Rename -puppet.yaml templates.Dan Prince1-564/+0
Updates the /puppet directory templates so that we drop the '-puppet' from the filenames. This is redundant because we already have puppet in the directory name and fixes inconsistencies where we aren't using -puppet in all the files within the puppet directory. Depends-On: I71cb07b2f5305aaf9c43ab175cca976e844b8175 Change-Id: I70d6e048a566666f5d6e5c2407f8a6b4fd9f6f87
2015-09-17Configure ctlplane network with a static IPDan Prince1-0/+1
This patch updates all network configuration templates so that we configure the ctlplane network interface with a static IP instead of using DHCP. The IP address used for the static IP is passed into each nested stack network configuration template via the ControlPlaneIp parameter. Three new nested stack parameters called ControlPlaneSubnetCidr, ControlPlaneDefaultRoute, and EC2MetadataIp have been added to help configure the CIDR, default route, and EC2 metadata route on the ctlplane statically. These parameters can be customized via the parameter_defaults section in the heat environment. A single new template called net-config-static-bridge.yaml has been added to help migrate towards using the static configuration templates when not using network isolation. Depends-On: I257e1cba6dee16f73f75512d1284e1e3b9d4c831 Change-Id: Ib267e6dcf2d5ff77f7a82ee20a123965c2d07565
2015-09-15Merge "switch to vxlan by default"Jenkins1-2/+2
2015-09-08Merge "Add NodeAdminUserData interface for "heat-admin" user"Jenkins1-1/+18
2015-09-05Keystone network isolation fixesDan Prince1-3/+6
This patch adds explicit nested stack parameters to help manage use of the Keystone Admin API vs. the Keystone Public API. We also add a new output parameter specifically for the Keystone admin API VIP. This can be useful when configuring keystone endpoints with network isolation. Change-Id: I2bd3e61570151e2faeee14ee09b03ad0b3208cc1
2015-09-05Allow 'ctlplane' to be used within Net IP MapsDan Prince1-0/+1
When using network isolation you might want to selective move one of the services back to the default ctlplane network by simply using the ServiceNetMap parameter. This patch adds ctlplane to the output parameters for both the net_ip_map and net_ip_list_map nested stacks so that this is possible. As part of this patch we also split out the NetIpSubnetMap into its own unique nested stack so that the Heat input parameters for this stack are more clearly named. Change-Id: Iaa2dcaebeac896404e87ec0c635688b2a59a9e0f
2015-09-03Add NodeAdminUserData interface for "heat-admin" userSteven Hardy1-1/+18
Reinstates the heat-admin user via template user-data, which replaces the previous boothook injected user provided by the (deprecated now removed) heat instance_user option. This has some advantages over the heat.conf option, e.g it allows for much easier customzation of the user configuration (additional SSH keys, adding groups etc), and also in future if we support deploying more than one overcloud you could specify a different user per deployment. Co-Authored-By: Dan Prince <dprince@redhat.com> Change-Id: I2235b9690c01542d8a28ec1c1a4607de751aea29 Closes-Bug: #1229849
2015-08-21switch to vxlan by defaultMike Burns1-2/+2
VXLAN has better performance (20-25% better) NICs with VXLAN offload are more common Change-Id: If57c79a1309ae178b3e82d54bb101dde584c86cc Related: rhbz#1244864
2015-08-03Wire in Compute pre-deployment extraconfigShiva Prasad Rao1-1/+12
This commit provides a way to configure some additional hieradata for compute nodes. This is similar to the earlier added infra for supporting Controller pre-deployment extraconfig. Change-Id: I02dda0685c7df9013693db5eeacb2f47745d05b5
2015-07-24Merge "NFS backend for Cinder"Jenkins1-0/+6
2015-07-22Merge "Wire in hieradata overrides via ExtraConfig for NovaCompute"Jenkins1-34/+8
2015-07-20Puppet: wire in tripleo::packagesDan Prince1-1/+1
This wires in use of a new puppet-tripleo class which encapsulates the logic to enable/disable package installation and upgrades. By using the new class we can remove the global Package provider declaration at the top of each module. Change-Id: I5c6e5fd8600031bd8fb6195649721607c560f9d5 Depends-on: Ie8fbc344149bc8c9977e127de77636903607617a
2015-07-16Wire in hieradata overrides via ExtraConfig for NovaComputeSteven Hardy1-34/+8
Adds support for global (ExtraConfig) and role-specific (NovaComputeExtraConfig) hiera overrides, similar to those added for the controller. For example, you can pass an environment file like: parameters: NovaComputeExtraConfig: nova::scheduler::filter::ram_allocation_ratio: 1.8 compute_classes: - ::nova::scheduler::filter This passes a hiera value for ram_allocation_ratio and enables a class via the include added in https://review.openstack.org/#/c/197908/ Note this also requires https://review.openstack.org/#/c/188772/ or 40-hiera-datafiles incorrectly quotes the list and the compute_classes part won't work. Change-Id: Ic33eed1b5e9c33c0d2f6075c65c8d9649b82c8b4
2015-07-13Adds the NeutronTunnelIdRanges and NeutronVniRanges parametersmarios1-0/+30
This adds the NeutronTunnelIdRanges and NeutronVniRanges parameters which govern the GRE or VXLAN tunnel IDs (respectively) that are to be made available for overcloud tenant networks. These both default to "1:1000," to retain the current behaviour. They are propagated to the hiera data for puppet deploys and there is a separate change to support passing these into the config via the neutron tripleo-image-element at https://review.openstack.org/#/c/199592/ Change-Id: I967a8cae218a31e888abc438e9de5756ae627adb Related-Bug: https://bugzilla.redhat.com/show_bug.cgi?id=1240631
2015-07-08Add services to ServiceNetMap to select hostnames resolution networkGiulio Fidente1-2/+1
The *HostnameResolveNetwork services define the network against which the hostnames in /etc/hosts should be resolved, defaults to 'internal_api' for all except CephStorage for which it uses 'storage' as they do not have connectivity to 'internal_api'. Closes-Bug: 1471179 Change-Id: Ia8971f8a63016966236e7975ac2d97921a314255
2015-07-07NFS backend for CinderJiri Stransky1-0/+6
Adds support for NFS backend for Cinder, but remains disabled by default. Change-Id: I9ebef072ed115efe980fa4904ea80f02384522af
2015-07-02Map NovaEnableRbdBackend to ephemeral_storage from nova::compute::rbdGiulio Fidente1-1/+1
This maps the template param to the actual class param which optionally configures Ceph as a backend for the ephemeral storage or for the persistent storage only. See I4ae0fd605c5a57aa23bea83b06530a50844d24a0 Change-Id: Ic7007da8317e98d450b1362864e65093a184cb25
2015-06-24Merge "Make puppet-applying *Post resources depend on hieradata"Jenkins1-0/+4
2015-06-18Merge "Rename ServiceNetMap: NeutronLocalIp"Jenkins1-1/+1
2015-06-17Merge "Remove NO_SIGNAL from puppet role templates"Jenkins1-2/+1
2015-06-17Merge "Allow control of hostname formatting"Jenkins1-0/+4
2015-06-17Merge "Add $hostname.localdomain alias to /etc/hosts"Jenkins1-1/+1
2015-06-17Allow control of hostname formattingSteven Hardy1-0/+4
Currently, we use the heat default server names, which results in some fairly unreadable hostnames due to the level of nesting in the templates. e.g ov-sszdbj5rdne-0-bhseh65edxv6-Controller-zoqc6tlypbdp Instead, we allow the user to specify a format string per role, defaulted to a string which formats the name e.g <stackname>-controller-<index> e.g overcloud-controller-0 Optionally additional hostname components (not replaced by heat) could be added, such that deployment time customization of hostnames via firstboot scripts (e.g cloud-init) may be possible. Should anyone wish to maintain the old heat-generated names, they can pass an empty string via these parameters, which heat will treat as if no "name" property was provided to OS::Nova::Server. Change-Id: I1730caa0c2256f970da22ab21fa3aa1549b3f90b
2015-06-16Make puppet-applying *Post resources depend on hieradataSteven Hardy1-0/+4
When you do a stack-update which affects, e.g ControllerDeployment such that some value in hieradata is updated (for example changing the "Debug" parameter to True), we only write the hieradata file and don't reapply the manifests. So we introduce a dependency on the deploy_stdout values from all hieradata applying configs, such that the manifests will be re-applied on update if the data is changed. This requires https://review.openstack.org/#/c/190282/ so that 99-refresh-completed will return the derived config ID as part of the deploy_stdout payload. Closes-Bug: #1463092 Change-Id: I1175248c3236d0c42e37d062afce550efce8aadc
2015-06-15Add $hostname.localdomain alias to /etc/hostsGiulio Fidente1-1/+1
We want to make sure to be able to resolve the default domain suffix (.localdomain) appended when no domain option is passed by the dhcp server. Change-Id: I33111e91b502f57da442e5745de2217bd6d2d882
2015-06-10Rename ServiceNetMap: NeutronLocalIpDan Prince1-1/+1
This patch renames the NeutronLocalIp option to be called NeutronTenantNetwork. This is more consistent with all of the other ServiceNetMap settings which end in 'Network' and initial end user feedback found the old name a bit cryptic as well. This is the network for neutron tenant traffic so lets just name it that. Change-Id: Id49afe75c372887453413c092190a5775aa3e1ee
2015-06-10Isolate network traffic for Nova VNC proxyDan Prince1-2/+2
This patch makes it possible to configure the isolated network for the Nova vnc proxy client. Change-Id: I462dfaea94e5fe9cb260ba91a42433a250f07984
2015-06-08Config & deployments to update overcloud packagesSteve Baker1-0/+18
This change adds config and deployment resources to trigger package updates on nodes. The deployments are triggered by doing a stack-update and setting one of the parameters to a unique value. The intent is that rolling update will be controlled by setting breakpoints on all of the UpdateDeployment resources inside the role resource groups. Change-Id: I56bbf944ecd6cbdbf116021b8a53f9f9111c134f
2015-06-05Wire Neutron VLAN ranges param as array to puppetGiulio Fidente1-3/+10
Turns NeutronNetworkVLANRanges into a list and makes it consumable by neutron::plugins::ml2::network_vlan_ranges as an array. Previously usage of vlans was impossible due to puppet-neutron failing to join() network_vlan_ranges. Also fixes wiring of network_vlan_ranges on computes and adds a sample environment file to test use of vlans for tenant networks. Change-Id: I8725cdb9591dd8d0b7125fdacbefdc9138703266
2015-06-03Remove NO_SIGNAL from puppet role templatesSteven Hardy1-2/+1
Currently we use NO_SIGNAL on both the NetworkConfig and subsequent config deploying the data associated with the role. This means there is a risk that should the NetworkConfig do anything interruptive (os-net-config can do interface renaming based on discovery data for example) the role configuration config could fail, and we'd never know until some later error occurs. Additionally, we need to be sure that the heiradata deployed by each of the role specicific configs is actually in-place before proceeding with any of the cluster configuration - atm this works due to the inherent delays involved deploying to bare-metal, but there's still a theoretical race if very fast deployment backends (I'm thinking containers, e.g lxc backend to nova or something) were used instead. Essentially, we should never be using NO_SIGNAL unless we want to ignore failure, which AFAICT is not the case in this instance. Change-Id: I0dbbcc87fb8df8e6bc4775c39fa616b0d0713464
2015-05-28Use heat inputs for network port settingsDan Prince1-2/+2
This patch updates the controller and compute roles so that we use get_input in the software configuration instead of calling get_attr/get_param there. Change-Id: I1dc11987b4ea3c37775b14fbdddb75588499e9bb
2015-05-26Switch net-config templates to use OS::stack_idDan Prince1-1/+1
This patch removes the custom config_id outputs and replaces it with OS::stack_id which allows us to just call get_resource in the parent stack. The motivation for this change is we'll be adding more os-net-config templates and it would be nice to take advantage of this newer template feature. Change-Id: I6fcb26024b94420779b86766e16d8a24210c4f8e
2015-05-26Update neutron local_ip to use the tenant networkDan Prince1-1/+14
This patch uses the new NetIpMap and ServiceMap abstractions to assign the Neutron tenant tunneling network addresses. By default this is associated with the tenant network. If no tenant network is activated this will still default to the control plane IP address. Change-Id: I9db7dd0c282af4e5f24947f31da2b89f231e6ae4
2015-05-26Add isolated network ports to compute rolesDan Prince1-0/+28
This patch updates the compute roles so that they can optionally make use of isolated network ports on the tenant, storage, and internal_api networks. -Multiple networks are created based upon settings in the heat resource registry. These nets will either use the noop network (the control plane pass-thru default) or create a custom Neutron port on each of the configured networks. -The ipaddress/subnet of each network is passed passed into the NetworkConfig resource which drives os-net-config. This allows the deployer to define a custom network template for static IPs, etc on each of the networks. -The ipaddress is exposed as an output parameter. By exposing the individual addresses as outputs we allow Heat to construct collections of ports for various services. Change-Id: Ib07b4b7256ede7fb47ecc4eb5abe64b9144b9aa1
2015-05-21Merge "Overcloud: bump HOT version to 2015-04-30"Jenkins1-1/+1
2015-05-20Overcloud: bump HOT version to 2015-04-30Dan Prince1-1/+1
This patch bumps the HOT version for the overcloud to Kilo 2015-04-30. We should have already done this since we are making use of OS::stack_id (a kilo feature) in some of the nested stacks. Also, this will give us access to the new repeat function as well. Change-Id: Ic534e5aeb03bd53296dc4d98c2ac5971464d7fe4
2015-05-19Provide RabbitMQ clients with a list of servers instead of VIPGiulio Fidente1-8/+1
This will change the way how RabbitMQ clients get to the servers, they will not go through HAProxy anymore. Change-Id: I522d7520b383a280505e0e7c8fecba9ac02d2c9b
2015-04-28Remove hardcoded references to .novalocal in hostnamesGiulio Fidente1-1/+1
Remove references to the .novalocal domain part in the hosts file. Change-Id: Idf14907adaf2f35440b6f28870fe18434eadd1be Depends-On: Iadfdf4120c4d1c9b6976321753957fd4eecf301c
2015-04-27Merge "Make all default values match overcloud defaults"Jenkins1-3/+3
2015-04-24Separate the network configuration per flavor.Dan Sneddon1-1/+1
This change allows a different network config for each family of hosts. For instance, the controller may have a different network configuration than a block storage node. This change adds a declaration for each family in the overcloud-resource-registry.yaml & overcloud-resource-registry-puppet.yaml. Change-Id: I083df7ebbb535f97d8ddec2ac0e06281c55986cd
2015-04-24Enable passing optional first-boot user-dataSteven Hardy1-0/+4
Currently all the OS::Nova::Server resource created don't pass any user-data. It's possible to pass user-data as well as using heat SoftwareConfig/SoftwareDeployment resources, and this can be useful when you have simple "first boot" tasks which are possible either via cloud-init, or via simple run-once scripts. This enables passing such data by implementing a new provider resource OS::TripleO::NodeUserData, which defaults to passing an empty mime archive (thus it's a no-op). An example of non no-op usage is also provided. Change-Id: Id0caba69768630e3a10439ba1fc2547a609c0cfe
2015-04-09Make all default values match overcloud defaultsJeff Peeler1-3/+3
It's very confusing for them to be different, especially in the case of comparing Tuskar vs non-Tuskar deployments where the parameters are read from different files. Note: NeutronPhysicalBridge is named differently in the overcloud template (HypervisorNeutronPhysicalBridge). This is the only parameter checked that isn't named exactly the same, hopefully there aren't any others. (Checked controller, compute, ceph, cinder, and swift for both puppet and non-puppet templates) Change-Id: I48ce1eb40d2d080c589ce619c50eddff17efe882
2015-04-01Merge "puppet: wire in osfamily hieradata support"Jenkins1-0/+1
2015-04-01puppet: wire in osfamily hieradata supportDan Prince1-0/+1
This updates all of the puppet roles to use an optional osfamily hieradata file which can be used to provide distro specific settings. Also, updates the controller role to make use of this new file for setting the rabbitmq package_provider parameter. Change-Id: I46417db51b87b82bf276dfcef5647a90c37fb07d
2015-04-01puppet: add debug mode for OpenStack servicesJiri Stransky1-3/+3
Propagate the top-level Debug parameter wherever it makes sense. Swift doesn't have this kind of debug setting, it only allows to configure log levels, so we'll need a different approach there. Change-Id: I15332315a2fbaeaf924cde4e748fb0e064a778b7
2015-04-01Merge "Ensure all Rabbit params are propagated to interested nodes."Jenkins1-10/+32
2015-03-19Add support for Neutron l3_ha option in puppet templatesGiulio Fidente1-4/+3
With this change we wire the NeutronL3HA parameter to the puppet class, where needed. Change-Id: I37b3850f71885a93859b5e51925df379616fc6ab
2015-03-19Ensure all Rabbit params are propagated to interested nodes.Giulio Fidente1-10/+32
Change-Id: I1bb8ee15d361638d77c5df7f8c03561c34f4c88f
2015-03-19Merge "puppet: tidy up the Nova ceilo auth configs"Jenkins1-2/+7
2015-03-19Merge "puppet: tidy up the Nova glance API server config"Jenkins1-6/+9