aboutsummaryrefslogtreecommitdiffstats
path: root/network
AgeCommit message (Collapse)AuthorFilesLines
2016-12-23Bump template version for all templates to "ocata"Steven Hardy77-77/+77
Heat now supports release name aliases, so we can replace the inconsistent mix of date related versions with one consistent version that aligns with the supported version of heat for this t-h-t branch. This should also help new users who sometimes copy/paste old templates and discover intrinsic functions in the t-h-t docs don't work because their template version is too old. Change-Id: Ib415e7290fea27447460baa280291492df197e54
2016-12-23Merge "Add network_config_hook interface to run-os-net-config.sh"Jenkins1-0/+6
2016-12-22Merge "Use ws instead of http for Zaqar websocket endpoints"Jenkins1-3/+3
2016-12-22Add network_config_hook interface to run-os-net-config.shJames Slagle1-0/+6
run-os-net-config.sh only allows for limited customization of the network configuration in config.json. Namely, it only customizes the bridge_name and interface_name. This will likely not be sufficient for all use cases. This patch adds a generic network_config_hook bash function that will be called if it is defined. The function is an entry point for deployers to write custom code to further influence run-os-net-config.sh. A possible alternative approach would be to pass the server resource into the NetworkConfig template. That would allow running arbitrary SoftwareDeployments on the server before NetworkDeployment is executed. However, the interface of NetworkDeployment is likely still not as flexible as this approach as the inputs are hardcoded in the role template files (role.role.j2.yaml), which are not meant to be modified by deployers. The immediate use case for this work is using os-net-config in our multinode CI jobs where we need to create vxlan tunnels between the nodes and we need to know the local private IP of each node for the tunnel endpoint. As the IP is different for each node, it's not a parameter we could specify in the templates. Change-Id: I26d0ebdaba6fcd3fe885e41ed234eb79a2405228 Implements: blueprint multinode-ci-os-net-config
2016-12-22Merge "Add a per service bootstrap node variable"Jenkins1-0/+17
2016-12-21Add a per service bootstrap node variableMichele Baldessari1-0/+17
In order to call commands that need to be run on a single node, we create a new per-service variable that will contain the first node of each role containing the service. Change-Id: I03e8685f939e8ae1fcd8b16883b559615042505d Partial-Bug: #1615983
2016-12-21Merge "net-conf: make bridge and interface name optional"Jenkins1-5/+5
2016-12-20Use ws instead of http for Zaqar websocket endpointsDan Prince1-3/+3
This patch updates the endpoint map for Zaqar websockets so that we use ws (or wss for SSL) instead of the http varients. This should help resolve protocol issues when trying to make connections to the websocket API. Change-Id: Iea88d1e30299cb621424740a39d498defa371ca4
2016-12-17net-conf: make bridge and interface name optionalDan Prince1-5/+5
Update the run-os-net-config.sh so that we make the bridge_name and interface_name parameters (supplied by the SoftwareConfig) optional. This allows operators to create custom network templates to be used on roles other than compute and controller which appear to be the only two roles which set bridge_name and interface_name parameters. Change-Id: I8997cf8177c1bf0e1f19de5f93dc4e81da1a951f
2016-12-15Add ZaqarApiNetwork to the service net mapDan Prince1-0/+1
Without this Zaqar API will fail to run due to a missing bind IP address in the config file. Change-Id: Icd0a6e85b7455e89f37f05399146d5e743359da8 Closes-bug: #1650307
2016-12-02Add NIC config for compute role for DVR with multiple NICsDan Sneddon1-0/+162
This change adds a NIC config to the multiple-nics sample NIC config templates for a compute node running DVR. In order for DVR to work on the compute nodes, they must share an external bridge with the controllers. All of the other sample NIC configs already have an external bridge (defaults to 'br-ex'), but the multiple-nics compute role does not, so now the compute-dvr.yaml NIC template will demonstrate DVR with multiple NICs. Change-Id: I80fe2e5842a67984e1d4d8aa295c7607c4f340ad
2016-12-02Merge "Composable Zaqar services"Jenkins2-0/+510
2016-11-28Apply os-net-config with a script instead of elementDan Prince28-1664/+1742
Wire in os-net-config via a normal script heat deployment, which has the following advantages: 1. Improved error path, currently o-a-c deployments don't report any errors, thus hang and eventually the deployment times out 2. It's far more hackable from a deployer perspective, e.g it's much easier to change the os-net-config options or include a mapping file 3. Reduces our dependencies on o-a-c (it's only os-net-config and hiera which requires it), although the script does currently still use oac to get the metadata IP. 4. May enable passing os-net-config yaml via a json parameter in future, reducing the need for resource_registry mappings (although we'll have to support that for backwards compatibility) The script used is based directly on 20-os-net-config (from t-i-e at cf94c5e, we can probably improve this now that we have an error path, but for this initial commit it's a straight copy other than the changes to replace o-a-c for rendering the json config file. Co-Authored-By: Steven Hardy <shardy@redhat.com> Change-Id: I0ed08332cfc49a579de2e83960f0d8047690b97a
2016-11-27Merge "Cleanup some inline comments in network/config"Jenkins7-20/+0
2016-11-23Cleanup some inline comments in network/configDan Prince7-20/+0
This patch cleans up some inline comments that are a bit non-standardly formatted so that we can more easily parse these templates in an automated fashion. Change-Id: Ibf91f3478fd894f9323d8805729ece9c5fab256f
2016-11-17Add panko api support to service templatesPradeep Kilambi3-0/+256
This integrates panko service api into tripleo heat templates. By default, we will disable this service, an environment service file is included to enable if needed. Depends-On: I35f283bdf8dd0ed979c65633724f0464695130a4 Change-Id: I07da3030c6dc69cce7327b54091da15a0c58798e
2016-11-14Composable Zaqar servicesBrad P. Crochet2-0/+510
Adds new puppet and puppet pacemaker specific services for Zaqar. The Pacemaker templates extend the default Zaqar services and swap in the Pacemaker specific puppet-tripleo profile instead. Change-Id: Ia5ca4fe317339dd05b0fa3d5abebca6ca5066bce Depends-On: Ie215289a7be681a2b1aa5495d3f965c005d62f52 Depends-On: I0b077e85ba5fcd9fdfd33956cf33ce2403fcb088 Implements: blueprint composable-services-within-roles
2016-11-01Merge "Add Barbican to the overcloud"Jenkins3-0/+256
2016-10-21Composable Mistral servicesBrad P. Crochet3-0/+265
Adds new puppet specific services for Mistral API and Mistral Engine. This submission enables the mistral service by default in the overcloud, a following submission will disable it and make it optional by enabling it on demand based in an environment file. Depends-On: Iae42ffa37c4c9b1e070b7c3753e04c45bb97703f Depends-On: I942d419be951651e305d01460f394870c30a9878 Depends-On: I6cb2cbf4a2abf494668d24b8c36b0d525643f0af Implements: blueprint composable-services-within-roles Co-Authored-By: Carlos Camacho <ccamacho@redhat.com> Change-Id: Id5ff9cb498b5a47af38413d211ff0ed6ccd0015b
2016-10-19Add Barbican to the overcloudAde Lee3-0/+256
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com> Depends-On: If2804b469eb3ee08f3f194c7dd3290d23a245a7a Depends-On: I091ecfbcb2e38fe77203244ac7a597aedcb558fb Change-Id: Iacc504fc4fa2d06893917024ce2340d3fb80b626
2016-10-06Merge "Select per-network hostnames for service_node_names"Jenkins1-1/+26
2016-10-05Fix OpendaylightApiNetwork key namingSteven Hardy1-1/+9
This captialization won't work with the CamelCase to snake_case conversion we do, as the required name is opendaylight_api_network Adds some clarification to the ServiceNetMap description to hopefully avoid future confusion. Change-Id: Ife04ee2185e81009ebef55ad521aef799251e002 Closes-Bug: #1629408
2016-10-05Select per-network hostnames for service_node_namesSteven Hardy1-1/+26
Co-Authored-By: Juan Antonio Osorio Robles <jaosorior@redhat.com> Depends-On: Ic6fec1057439ed9122d44ef294be890d3ff8a8ee Change-Id: I754c4a41d8a294a4c7c18bd282ae014efd4b9b16 Closes-Bug: #1628521
2016-10-05j2 template per-role ServiceNetMapDefaultsSteven Hardy1-5/+6
The *HostnameResolveNetwork should default to a sane value for all roles, including those specified by the user. We choose internal_api by default (maintaining the existing special-case for the CephStorage role which uses the storage network), but users can of course override the default with a network of their choice. Change-Id: Ib240f56c1db5842b953fa510316e75fd53f24735 Closes-Bug: #1629827
2016-09-30Make keystone api network hiera composableSteven Hardy1-2/+25
These hard-coded references to the Controller role mean that things won't work if the keystone service is moved to any other role, so we need to generate the lists dynamically based on the enabled services for each role. Change-Id: I5f1250a8a1a38cb3909feeb7d4c1000fd0fabd14 Closes-Bug: #1629096
2016-09-29Merge "Add gateway_ip in OS::Neutron::Subnet"Jenkins11-1/+24
2016-09-23Add FixedIPs parameter to from_service.yamlBen Nemec2-0/+12
Without this, deployments using the from_service.yaml port for service VIPs will fail with: "Property error: : resources.RedisVirtualIP.properties: : Unknown Property FixedIPs" Change-Id: Ie0d3b940a87741c56fe022c9e50da0d3ae9b583b Closes-Bug: 1627189
2016-09-16Fix _from_pool_v6.yaml str_splitGiulio Fidente6-6/+6
Previously [1] we updated from_pool_v6 to use str_split but mistakenly copy/pasting lines referencing an attribute which isn't created in these templates. 1. I282dbc025500b1628d4f08a49b54a2adefd38b5f Closes-Bug: 1624412 Change-Id: I409ff5b36eab2a791db4d352dea5b68096c2dc21
2016-09-14Merge "Add support for deploying Ceph RGW role"Jenkins3-0/+265
2016-09-10Add support for deploying Ceph RGW roleKeith Schincke3-0/+265
This patch add support for deploying Ceph RGW. Co-Authored-By: Giulio Fidente <gfidente@redhat.com> Change-Id: I88c8659a36c2435834e8646c75880b0adc52e964
2016-09-10Add Heat's Cfn and Cloudwatch networks to ServiceNetMapJuan Antonio Osorio Robles1-0/+2
these are needed if we want to be able to generate which nodes the service and which VIP are they binding to. Change-Id: I9d40459406f15db3ad9229c75392c4d959d44b3b Closes-Bug: #1621371
2016-09-08Convert SwiftDevicesAndProxyConfig to composable formatSteven Hardy1-1/+2
Make use of the new composable per-service node_ips lists by adding a ServiceNetMap entry for SwiftStorage, then pass the data to construct the raw device list into puppet-tripleo instead of mangling it in t-h-t inside the role templates. This will allow running swift storage services on nodes other than the Controller and ObjectStorage roles, and is required to enable custom roles. Depends-On: I11deed1df712ecccf85d36a75b3bd2e9d226af36 Change-Id: I1bf5f8a9d34b1a5d64ab8656b386226b54ec1a27 Partially-Implements: blueprint custom-roles
2016-09-06Merge "Add constraint to prohibit balance-tcp from BondInterfaceOvsOptions"Jenkins7-0/+35
2016-09-03Create NetIpListMap for all rolesSteven Hardy1-6/+12
This allows us to create $service_node_ips and $service_node_names hiera entries for services not deployed on the Controller role. Co-Authored-By: Thomas Herve <therve@redhat.com> Change-Id: I688618dda05ff908293c32b9d8518697d57e9eb0 Partially-Implements: blueprint custom-roles
2016-09-02Generate composable service node_names listsSteven Hardy1-0/+13
Some puppet interfaces require a comma separated list of hostnames where a service is running, so generate it in a similar way to th service ips. Change-Id: Icdf5d993d089dc94035194bdbd52299fcbc793be Partially-Implements: blueprint custom-roles
2016-08-31Merge "Fix Ironic service bind IPs"Jenkins1-1/+2
2016-08-30Merge "Move ceph cluster config out of allNodesConfig"Jenkins1-1/+2
2016-08-30Merge "Added DPDK environment file and nic configs samples"Jenkins1-0/+192
2016-08-30Mv Nova, Neutron, Horizon out of controller.yamlDan Prince1-0/+1
This patch moves the settings for Nova, Neutron, and Horizon out of controller.yaml. Also fixes the NovaPassword settings in nova-base.yaml so they don't use get_input. Also, creates a new apache.yaml base service to contain shared apache settings for several services which use Apache for WSGI. Co-Authored-By: Giulio Fidente <gfidente@redhat.com> Change-Id: I35d909bd5abc23976b5732a2b9af31cf1448838e Related-bug: #1604414
2016-08-30Move ceph cluster config out of allNodesConfigSteven Hardy1-1/+2
Pass the list of ceph nodes to the ceph_mon profile via the service template - this requires some fixup to the profile to handle the ipv6 case. Note this also aligns the ServiceNetMap keys so that the composable node_ips logic will generate the lists when the ceph_mon service is enabled. Change-Id: If8a5c65f17e677fe62243b3aa746fd642f72d2b0 Depends-On: I481dd2cd2cde7f1491080e6d9c7dcb7047c22de1 Partially-Implements: blueprint custom-roles
2016-08-30Added DPDK environment file and nic configs samplesSaravanan KR1-0/+192
Added an environment file to configure DPDK with OVS by overriding ComputeNeutronOvsAgent. Also added nic configs for configuring DPDK bridge and bond with numbered nic format. Implements: blueprint tripleo-ovs-dpdk Co-Authored-By: Vijay Chundury <vchundur@redhat.com> Change-Id: I82b6f66394a8928f8524706c939508edd08afa9b
2016-08-29Fix Ironic service bind IPsDan Prince1-1/+2
This patch removes the get_input's in the service templates and instead uses our new bind IP string replacement mechanism to correctly set the local bind IPs for the Ironic API. It also avoids using MysqlNetwork to set Ironic my_ip. This patch adds a new IronicNetwork setting which is used to control which network Ironic will use for its PXE network traffic. Change-Id: Ic848ec77b0106279c5d963504798c05110aa1440
2016-08-28Create composable mapping between enabled services and role ipsSteven Hardy1-1/+36
Currently we have a hard-coded list of ips for various services that run on the controller, instead we can dynamically generate that list of per-service ips, initially only for the controller but this approach can be extended so it works for any role. Change-Id: I3c8a946e439539d239ad7281a1395414df0893eb Partially-Implements: blueprint custom-roles
2016-08-26Merge "Adds OpenDaylight composable service"Jenkins1-0/+1
2016-08-26Merge "Enable usage of FQDNs for the endpoints"Jenkins2-266/+1044
2016-08-26Adds OpenDaylight composable serviceTim Rozet1-0/+1
Introduces environment files for deploying OpenDaylight in two ways: - ODL only managing L2 as an ML2 plugin - ODL managing L2 and L3 DVR, by replacing NeutronL3Agent Two services are added. One to install ODL and configure OVS on the Controllers, and another service to only configure OVS on compute nodes. Paritally-Implements: blueprint opendaylight-integration Depends-On: I666dc0874f1d11a72a62d796f4f6d41f7aa87a3f Change-Id: Ide69e20cbf2ec6151953cb23e51478b770aca17f Signed-off-by: Tim Rozet <trozet@redhat.com>
2016-08-25Add constraint to prohibit balance-tcp from BondInterfaceOvsOptionsBrent Eagles7-0/+35
This patch adds an allowed_pattern contraint that uses a negative lookahead assertion to only allow options strings that do not contain the 'balance-tcp' option. Change-Id: Icf8874e4e585f9a42d38091f8b38c3685f403cf1 Partial-Bug: #1612786
2016-08-25Merge "Updates and fixes to NIC config template routes"Jenkins26-43/+730
2016-08-24Enable usage of FQDNs for the endpointsJuan Antonio Osorio Robles2-266/+1044
The endpoint map has the capability of using the cloud's name for the endpoint. This is broken, however, since this has the problem that we only take into account the overcloud's external endpoint name, which we then cannot use if we have network-isolation enabled, which is the most common use-case for real deployments. So this change proposes the following: * The external endpoint is still CloudName. * We can now set different (or the same if we want) names for the different VIPs of the network. * Using CLOUDNAME for the endpoint map will get a name for the appropriate network. bp tls-via-certmonger Change-Id: I3e7144653f0a1d783d87e6f638304b297f718929
2016-08-16Remove deprecated net_ip_uri_map outputGiulio Fidente3-45/+10
Takes the net_ip_uri_map value from the *_uri values emitted by net_ip_map instead. Also removes TenantIp and TenantIpUri from net_vip_map_external templates as there won't be any VIP on the tenant network. Change-Id: Icdac3d58162891f5ca3d5c20f14fcdff1781996f