aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster/baremetal-mcp-ocata-common
AgeCommit message (Collapse)AuthorFilesLines
2017-12-31Rename reclass models to add "-ha" or "-noha"Alexandru Avadanii16-1614/+0
Parse all reclass j2 templates, not only common + current scenario (useful when adding new scenarios later). JIRA: FUEL-310 Change-Id: I8e87af702f83c42cb8f766bf6f121449aa5f2c26 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 09dce2a2643223d66aa1ac3a0ad8feebc082f521)
2017-12-31[baremetal] MaaS: Fix DHCP dynamic range (2)Alexandru Avadanii1-1/+1
- reduce range to silence bogus MaaS warning about address exhaustion; - regenerate pod_config.yml.example to reflect the changes; - drop `opnfv_infra_maas_pxe_address` (duplicate of `opnfv_infra_maas_node01_deploy_address`); - add `opnfv_infra_config_pxe_address` for future usage; JIRA: FUEL-316 Change-Id: I981fc8c7c550c2917b07dd5f2c83896def013fa7 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 215a37d55356333f9fd0a96118c9a00d588eca62)
2017-12-31[baremetal] Move all MaaS PXE net config to PDFAlexandru Avadanii2-5/+5
- s/opnfv_maas_pxe_/opnfv_infra_maas_pxe_/g to align with other vars; - patches: pharos: Add MaaS PXE network to installer adapter; - runtime.yml{,.template}: move to installer adapter, update pod_config.yml example; - drop MAAS_PXE_NETWORK global env var, now read strictly from PDF; JIRA: FUEL-313 Change-Id: I46d7510bd53fba7890c411d36bc28fd6ff6f3648 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 15e982f0d00dbcc72be2f5b25dab34b3f3efd912)
2017-12-31[netconfig] APT: Prefer ipv4 connections over ipv6Alexandru Avadanii1-0/+4
Ubuntu prefers ipv6 connections therefore in some networks, this breaks software updates (it does a AAAA DNS lookup before A record lookups). Let's prefer old style ipv4 connections over the new ipv6 in order to save some processing and resource utilization. Based on previous work from [1] (but without /etc/gai.conf, only APT). [1] https://review.openstack.org/#/c/462502/ JIRA: FUEL-321 Change-Id: Ic3dff3baa1c0be9ac95972557d6a2d26641bfe1b Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 4d604967adde375eb24ae165aff83c11be89ca30)
2017-12-14[baremetal] idf support for different board typesGuillermo Herrero1-1/+1
This modification enables having different models of target nodes but restricts them to two groups of the same kind assuming: - 3 KVMs will be same model and have the same NIC names - 2 Compute nodes will be the same model and have same NIC names This is an ad-hoc change for arm-pod7. Will work for all other setups but the jinja2 logic should be evetually extended to support a per board approach, allowing any board to be any kind Change-Id: Ie994d661e3dbe5b9a33d290a850a6152cf320c86 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit ee149500e0e6bde0152aa56140046a2d1b995eb4)
2017-12-12Revert "[baremetal] Migrate public bridge to ovs"Michael Polenchuk1-25/+10
Vlan tagging on ovs+linux ports doesn't work as expected. This reverts commit c3316c713c936b154b979aa985a400f4b791c0cb. Change-Id: I339cd741c83781e4a946bfde40f7f2551bb9cf02 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-12-12pod_config: cleanup: Drop infra_compute_*_addressMichael Polenchuk1-3/+0
Our PDF installer adapter defines 3 unused reclass params that are misleading, so drop them (infra_compute_node{01,02,03}_address). Change-Id: I0ca49b73add543c8f03b14ed4d805ce55f973bb5 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit e48d4876833270b9139ca8196eef2c13f44effcc)
2017-12-11[baremetal] Migrate public bridge to ovsMichael Polenchuk1-10/+25
Get rid of "ovs-to-linux" links, instead of this setup native ovs bridge for public interface and link it with neutron external bridge. Change-Id: I483881e78f22fc035107a622307d95761c4a5667 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit bcba227e4947bf1e6976b2a743b87c28ae9645c9)
2017-11-27Align options of glusterfs nova_instances volumeMichael Polenchuk1-3/+4
Change-Id: If0558afd37f16678290353fa9c5e6c4163f814a0 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 74a5bd6ae60916c664b0ec902418e3fae234b0c1)
2017-11-27Revert "Apply apache state on proxy nodes"Alexandru Avadanii1-8/+0
Upstream fixed the salt-formula-horizon in commit 95387ec, by defining 8078 (and only that) port in Apache's ports.conf. This fixes the port 80 overlap, so running the `apache` high state after the `horizon` high state not only is unnecessary now, but also would lead to new breakage, since `apache` state would overwrite the ports.conf (removing 8078 and adding 80), i.e. creating a new port conflict and breaking Horizon port completely. This reverts commit eb4645206d6d74992fca3b8726ee2eebca97205f. Conflicts: mcp/config/states/openstack_ha mcp/reclass/classes/cluster/baremetal-mcp-ocata-common/openstack_proxy.yml Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Change-Id: Iea8f0bd90ee8d12f399aad16247dda274d6a907a (cherry picked from commit 0c71112ec06bd73a3ddc42ba0aacd666e9a00553)
2017-11-25Bring in newer glusterfs for mtime unsplit brainAlexandru Avadanii3-0/+6
Recent commit 8ba3a1a (Switch nofeature-ha compute nodes to UCA repo) bumped the reclass/system submodule and brought in upstream commit 2ee306b (Glusterfs: use automatic mtime-based split-brain resolution) which requires support for "cluster.favorite-child-policy", not available in Glusterfs 3.7.x available in Ubuntu Xenial. NOTE: UCA does not provide glusterfs for "Ocata", only for "Pike"+. Instead of reverting the commit switching to mtime brain un-split, bump glusterfs to a version that is not EOL (3.10) using their official PPA. Change-Id: I4606dda2f3d4b7563eea793cc8e5d1380f336f24 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 8a867449217151f59766a74c6165ffc26c7f50b4)
2017-11-24Switch nofeature-ha compute nodes to UCA repoMichael Polenchuk1-1/+0
Employ UCA repo on computes nodes for nosdn-nofeature-ha scenario as well to prevent a regression (creation of ports failed for 1+n instances) of neutron ovs agent from mcp/openstack repos. Change-Id: Ie65ae122096c0d3a93c09d46191787a934bd7d4f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 8ba3a1a4ed0ce41a76fa6d712778904bb56b60ac)
2017-11-21[baremetal] public gateway setup on prx nodesGuillermo Herrero3-39/+22
- prx: add route for public traffic to public interface - prx: add route towards salt master through maas - remove dashboard class from proxy node (already implements horizon) - remove dashboard (and benchmark) class definitions (no longer used) - (temporary) backport Pharos change for adapter template JIRA: FUEL-305 Change-Id: Ia14a18ac0123c1134d8d99dc43da9a1f770001d0 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com> (cherry picked from commit 07f4e0238646fcb77072769feb8a0b68df52caca)
2017-11-17[baremetal] MaaS: Remove curtin netconfig via SaltAlexandru Avadanii2-0/+7
JIRA: FUEL-301 Change-Id: Id6b2b423b8045c581fa5c02133cf91702d9915c9 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 4010ea45c703d82e2fb95dcc869ff72bbca088b7)
2017-11-17Merge "[baremetal] Re-assign mgmt network to proxy nodes" into stable/euphratesAlexandru Avadanii4-4/+26
2017-11-17Merge "Update opendaylight/neutron patch" into stable/euphratesMichael Polenchuk1-9/+0
2017-11-16[baremetal] Re-assign mgmt network to proxy nodesAlexandru Avadanii4-4/+26
- extend arch-specific list of predefined VM iface names (2 -> 3); - add extra vnet iface for prx0* VCP VMs, connected to br-ctl (mgmt); - add mgmt address to pod_config.yml template (and sample); - add mgmt address to reclass.storage prx nodes; JIRA: FUEL-302 Change-Id: I17ce65eade7f69219fc27264363364e3c47d8f3f Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 35041f05e790f8c13782eb4956b991a97fdec853)
2017-11-16Update opendaylight/neutron patchMichael Polenchuk1-9/+0
Align opendaylight support patch with latest neutron formula. Employ native ML2 backend/engine option as is instead of bringing in the "opendaylight" keyword into reclass model. Unfreeze the maas & neutron formulas versions. Change-Id: I2807dcf9f83b01d453bca6453524f840c378972f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 1a8153f6391bdde1bab21f7831841f5b6070832d)
2017-11-15Enable neutron trunk portsMichael Polenchuk2-0/+6
The network trunk service allows multiple networks to be connected to an instance using a single virtual NIC. JIRA: FUEL-303 Change-Id: Id9e7c122bc1a32a59f18167e332ceaaa3897b5ef Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 66e745c73ac2aba1ef93ba90db4b167e49813863)
2017-11-12salt formulas: Pin via reclass instead of salt.shAlexandru Avadanii1-0/+9
Previous commit pinned the salt-formula-package by installing a specific version after OPNFV-specific patches were applied by `patch.sh`. To prevent patch bypass, move the pin to reclass model. While at it, also move salt-formula-neutron pinning to reclass to bypass wrong minimum length of 2 for version-pinned formula pkgs. Change-Id: I35c2773c130d79ec919685cd771311d6c11e11a8 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 1058c7ee35d64f38d978db2b3f840afca2facdef)
2017-11-12[baremetal] prx: Fix empty Apache module listAlexandru Avadanii1-1/+2
On low state expansion, apache.server.modules is iterated, and since reclass transforms '~' into 'null', an exception is thrown. Use an empty string instead (different type will still ensure reclass overrides variables from apache service instead of merging the lists). While at it, add missing version 'latest' for mod-wsgi pkg. Change-Id: I7913483b6a1be545b96de2958c39840940d9c557 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 40f907255380dbfc4d808d9f3c768db80c4c8158)
2017-11-10Apply apache state on proxy nodesMichael Polenchuk1-0/+8
Apache module will take care of ports.conf file to prevent bind socket conflict between apache & nginx services. Change-Id: Ia76ec356002e1db0dabd20d8f355a1b16fc07b30 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit eb4645206d6d74992fca3b8726ee2eebca97205f)
2017-11-01Connect proxy nodes to public networkMichael Polenchuk2-1/+17
cloudify vnf requires public enpoints to be available from instance with manager, so connect nodes w/ nginx to routed public network. JIRA: FUEL-286 Change-Id: Id0caa699519b9b46dad51deac6955afe6a0050de Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 0861ea0799114d9c59499f2c52a9c7a79fb1bbb7)
2017-10-18[baremetal] PDF-based network configAlexandru Avadanii4-85/+199
This change extends current PDF/IDF support with: - dynamic interface / vlan definition; - dynamic interface and/or bridge allocation of installer networks on top of interfaces (physical or vlans); This allows us to drop hardcoded interface names and vlan / bridge configuration in favor of a runtime determined model based on PDF/IDF. For now, we duplicate common jinja variable definitions in each template, but this will later be moved to a common include file. JIRA: FUEL-275 Change-Id: Ia80a66dbdf898b0bd0a4fb99d069ce9ebe33fa65 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit c360b972649028d2613fc8561899c2c8b7f71832)
2017-10-18Return back glusterfs client stateMichael Polenchuk1-2/+0
In order to set properly keystone fernet keys, apply glusterfs client state before second keystone server state. Also leave out user/group settings for glusterfs volume of nova instances as it will be set later by nova compute packages themselves. Change-Id: I069e37c67f08c51ed29f45cf6f92d4a00a1ac97b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 0224929b3a87d0e0ec011311c46872e6142497cf)
2017-10-18[baremetal] reclass: Fix class order for commonAlexandru Avadanii10-2/+21
Inheriting classes in the wrong order led to params being silently overriden by defaults in the system reclass classes, leaving some mismatched values between the controller nova config and the compute conunterpart (e.g. metadata_password had different values). Always inherit the common class first, so scenario-specific config is applied on top. NOTE: {dhcp,single}_nic are not used for mas|kvm|cmp nodes, but they are referenced in inherited classes, so keep them for now. Change-Id: I6cb90d5c832ffc8ab731bd9e3cd38ede858dba5c Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 92530f89c061b0070766e431f839feb368e2e4ac)
2017-10-15Add license headers where missingAlexandru Avadanii16-1/+112
While at it, compact 'set' into bash shebang where possible and add `make patches-copyright` target to simplify adding patch license headers. Change-Id: I0c841de72e5709e5eef915a52c5ec4a7fc0f7c37 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 644e5fdfa2f49b988a5150e2a4eefc12daecd845)
2017-10-15reclass: baremetal: Factor out common codeAlexandru Avadanii15-0/+1163
While at it, add .yamllint file (copied from releng repo). Change-Id: I39630c0043fe2fd601510969c401e6cc9efbf69a Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit a75af3d4c30af050dd15c0f875142f6328874fe4)
2017-09-26Fix or silence all yamllint warningsAlexandru Avadanii1-87/+88
Change-Id: Iface28ab770beee00374afb902ef4f9c983538f5 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 597e4b55f57001ead8e90f30e2e3211c7d705ca8)
2017-08-17Bring in baremetal supportAlexandru Avadanii1-0/+166
- ci/deploy.sh: fail if default scenario file is missing; - start by copying reclass/classes/cluster/virtual-mcp-ocata-ovs as classes/cluster/baremetal-mcp-ocata-ovs; - add new state (maas) that will handle MaaS configuration; - Split PXE network in two for baremetal: * rename old "pxe" virtual network to "mcpcontrol", make it non-configurable and identical for baremetal/virtual deploys; * new "pxebr" bridge is dedicated for MaaS fabric network, which comes with its own DHCP, TFTP etc.; - Drop hardcoded PXE gateway & static IP for MaaS node, since "mcpcontrol" remains a NAT-ed virtual network, with its own DHCP; - Keep internet access available on first interfaces for cfg01/mas01; - Align MaaS IP addrs (all x.y.z.3), add public IP for easy debug via MaaS dashboard; - Add static IP in new network segment (192.168.11.3/24) on MaaS node's PXE interface; - Set MaaS PXE interface MTU 1500 (weird network errors with jumbo); - MaaS node: Add NAT iptables traffic forward from "mcpcontrol" to "pxebr" interfaces; - MaaS: Add harcoded lf-pod2 machine info (fixed identation in v6); - Switch our targeted scenario to HA; * scenario: s/os-nosdn-nofeature-noha/os-nosdn-nofeature-ha/ - maas region: Use mcp.rsa.pub from ~ubuntu/.ssh/authorized_keys; - add route for 192.168.11.0/24 via mas01 on cfg01; - fix race condition on kvm nodes network setup: * add "noifupdown" support in salt formula for linux.network; * keep primary eth/br-mgmt unconfigured till reboot; TODO: - Read all this info from PDF (Pod Descriptor File) later; - investigate leftover references to eno2, eth3; - add public network interfaces config, IPs; - improve wait conditions for MaaS commision/deploy; - report upstream breakage in system.single; Change-Id: Ie8dd584b140991d2bd992acdfe47f5644bf51409 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> Signed-off-by: Guillermo Herrero <Guillermo.Herrero@enea.com> Signed-off-by: Charalampos Kominos <Charalampos.Kominos@enea.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>