path: root/firstboot
AgeCommit message (Collapse)AuthorFilesLines
2017-08-09Merge "Don't curl metadata server in userdata example"Jenkins1-2/+1
2017-07-26Don't curl metadata server in userdata exampleSteve Baker1-2/+1
The metadata server is switched off in I45ae6d0e3726cc71c7dc35a9a47da8b7a0bab9cb, so this example has been updated to use os-apply-config to fetch the ssh key instead. Change-Id: I82b05f9b35ffc6ea2cee9a64d5702c0404cd47de
2017-07-25Contrail network realignement + DPDK enablementMichael Henkel1-105/+0
This patch moves Contrail roles communication from public/external to internal_api network for OpenStack API. It also adds the option to enable dpdk. Monolithic firstboot script is broken down into small pre-network and per-node extraconfig scripts Change-Id: I296a3bf60cef6fa950fd71d6e68effe367d1e66b Closes-Bug: 1698422
2017-05-19Update the template_version alias for all the templates to pike.Carlos Camacho7-7/+7
Master is now the development branch for pike changing the release alias name. Change-Id: I938e4a983e361aefcaa0bd9a4226c296c5823127
2017-02-23Merge "Add support for node groups in NetConfigDataLookup"Jenkins1-5/+46
2017-02-08Re-organizes Contrail services to the correct rolesMichael Henkel1-0/+105
In current setup some Contrail services belong to the wrong roles. The Contrail control plane can be impacted if the Analytics database has problems. Change-Id: I0d57a2324c38b5b20cc687c6217a7a364941f7e6 Depends-On: Id0dd35b95c5fe9d0fcc1e16c4b7d6cc601f10818 Closes-Bug: #1659560
2017-01-04Add example showing how to set root password via cloud-initSteven Hardy1-0/+38
There have been some requests to enable this, and although it's not something we should enable by default, this shows how you can use the generic NodeUserData interface to have cloud-init do it. To use this you create an environment file like: resource_registry: OS::TripleO::NodeUserData: path/to/userdata_root_password.yaml parameter_defaults: NodeRootPassword: insecure_changeme Obviously this isn't that secure, and thus isn't intended for production environments, but it may be useful for debugging and as a further example showing how to configure things via cloud-init. Change-Id: If87a1e1dbfaf31b84cc0667c9a60bbd3c757d8cd
2016-12-23Bump template version for all templates to "ocata"Steven Hardy5-5/+5
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-05Add support for node groups in NetConfigDataLookupHarald Jensas1-5/+46
By using DMI String as identifier, such as 'system-product-name' or 'system-version' add support for node groups. This allow the use of a single entry in 'NetConfigDataLookup' to match a group of systems of the same model, vendor etc. Try to match on ethernet mac address first, then if no match is found 'dmiString' and 'id' is used, if the keys are set. Example: NetConfigDataLookup: node1: nic1: "00:c8:7c:e6:f0:2e" node2: nic1: "00:18:7d:99:0c:b6" node3: dmiString: 'system-version' id: 'ThinkPad T460p' nic1: enp0s31f6 # Dell PowerEdge R630 - nodegroup nodegroup1: dmiString: "system-product-name" id: "PowerEdge R630" nic1: em3 nic2: em1 nic3: em2 # Cisco UCS B200-M4 - nodegroup nodegroup2: dmiString: "system-product-name" id: "UCSB-B200-M4" nic1: enp7s0 nic2: enp6s0 Change-Id: Ie2547cd8805c57ed9afe7362eada802580ffc215
2016-11-17No longer hard coding to a specifc network interface name.Harald Jensas1-2/+2
Instead of using a specific network interface name, thi fix fetch all ethernet mac addresses. Then uses this list of mac addresses to do a check if any entries in the list match any of the values in NetConfigDataLookup for a node. If there is a match, the /etc/os-net-config/mapping.yaml file for the node will be written. This fix removes the hard coded interface name 'eth0' used to get a mac address as identifyer for the specific node before. Using a hard coded interface name such as 'eth0' would have failed on most hardware because of "consistent network device names". Fix Bug: #1642551 Change-Id: I6c1d1b4d70b916bc5d9049469df8221f8ab2eb95
2016-11-07Add an optional extra node admin ssh key parameterSteven Hardy1-1/+7
This can be used to pass the e.g. the tripleo-validations ssh key into the deployment. Change-Id: I861b9e2252a9c8122dcf7df261386f1ea5200c4f Related-Bug: #1635226
2016-07-01Add example of creating per-node os-net-config mappingsSteven Hardy1-0/+65
Adds an example of proving a mapping file for all nodes, then extracting the data for each node based on a lookup of the mac address. Some assumptions are made (e.g the hard-coded reference to eth0), but it should be easily modified to suit specific environments. Usage via an enviroment file will look like: resource_registry: OS::TripleO::NodeUserData: os-net-config-mappings.yaml parameter_defaults: NetConfigDataLookup: host1: nic1: "00:c8:7c:e6:f0:2e" host2: nic1: "00:18:7d:99:0c:b6" Note this version requires liberty heat in the undercloud due to the use of a new str_replace feature to serialize the json parameter. Change-Id: I7da9c9d8805e676a383e888a7d77f05d3432ab12
2015-11-24Update typosSwapnil Kulkarni (coolsvap)1-1/+1
Change-Id: Id63c1bcfc34058eb7285698ba9bf86d1cf2025a6
2015-09-03Add NodeAdminUserData interface for "heat-admin" userSteven Hardy1-0/+29
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-05-04Firstboot rsync for development purposesJiri Stransky1-0/+49
Could be used to e.g. make changes to the puppet modules on the fly without the need to rebuild images. Documented in the template description. Change-Id: I6a1fef20d4f4afa4bedac5ea520949697793f0ed
2015-04-24Enable passing optional first-boot user-dataSteven Hardy2-0/+80
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