summaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes
AgeCommit message (Collapse)AuthorFilesLines
2017-09-22Pod Descriptor File compatible reclass structureGuillermo Herrero13-114/+206
Implementation for baremetal-mcp-ocata-ovs-ha scenario JIRA: FUEL-275 Change-Id: Id6ab5697f993ac9faa019c3c10ba4ed4b7b6db01 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com> (cherry picked from commit 5c0a09fbd0f377df56bfcfe94b262225a34f98ff)
2017-09-22[virtual] Alter haproxy entry type of odl rest apiMichael Polenchuk1-3/+3
Change-Id: Iedb9a57f7ed4b7483bf629225fb2f3470e7de97e Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit 80024618fbda8422ba758d667073ad07c6f69542)
2017-09-15[ovs/dpdk] Fix location of libvirtd configMichael Polenchuk2-0/+2
Change-Id: If2e3736af02bb0ca53667116377f2fed4385b048 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-14Merge "Tune up mysql options"Alexandru Avadanii4-0/+13
2017-09-14[baremetal] Switch from 1Gb to 2Mb hugepagesMichael Polenchuk1-3/+3
Employ 2Mb hugepages for physical computes as well since functest suite uses less than 1Gb memory flavors. Change-Id: I7e96dd73df7d9e7274247b4faba15ee9bd362e40 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-14Tune up mysql optionsMichael Polenchuk4-0/+13
Change-Id: Ib4d787c45434243d0dc29d517a73224cf4f9d1c1 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-13Merge "[virtual] Setup nfs for nova instances"Alexandru Avadanii2-0/+21
2017-09-13Merge "[virtual] Add haproxy entries for opendaylight"Alexandru Avadanii1-0/+25
2017-09-13[baremetal] Setup glusterfs for nova instancesMichael Polenchuk6-0/+78
Live-migration feature requires shared storage on compute nodes, so configure glusterfs volume for nova instances. Change-Id: Id6b9b5aad89f5b4aefbef71e4ba7247a441873b0 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-13[virtual] Add haproxy entries for opendaylightMichael Polenchuk1-0/+25
Change-Id: Id0303d217dbe71e4b04834e545feae0660172b23 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-13[virtual] Setup nfs for nova instancesMichael Polenchuk2-0/+21
Configure nfs shared storage for nova instances to support live migration feature. Change-Id: I777d5725e45d03325507d3ecc8dd59a28cbc188f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-12Add proxy entries for opendaylight endpointsMichael Polenchuk1-0/+27
Change-Id: I8ebe4dedb9601ae0f45922fd30a34c67382755fc Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-12reclass, states: Parametrize runtime configurationAlexandru Avadanii11-19/+34
mcpcontrol virsh network, as well as MaaS PXE network are installer specific, and not POD specific. Therefore, these should be easily parametrized without the PDF, using only installer inputs (e.g. env vars passed via Jenkins). - add new <all-mcp-ocata-common.opnfv.runtime> reclass class; - parametrize at runtime new reclass class based on global vars; - factor out MaaS deploy address / config using new mechanism; - parametrize at runtime virsh network definitions based on template; - add new "maas.pxe_route" sls for configuring routing on cfg01; - replace env vars with the new sls in "maas" state; NOTE: baremetal parametrization will be handled later. Change-Id: Ifd61143d818fb088b3f4395388ba769bbc49156e Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-11salt master, maas: Move mcpcontrol to 10.20.0.0/24Alexandru Avadanii4-4/+4
Use INSTALLER_IP Jenkins param instead of SALT_MASTER_IP, allowing us to drop SALT_MASTER_IP completely from releng. mcpcontrol IP changes: - 192.168.10.100 becomes 10.20.0.2 (align with legacy Fuel master); - 192.168.10.3 becomes 10.20.0.3 (baremetal MaaS address); JIRA: FUEL-285 Change-Id: I6e2d44c3a8b43846196bd64191735214167a76ce Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-11reclass: virtual: Factor out VM interface namingAlexandru Avadanii8-14/+40
Define two groups of VM interface naming: - ens3..ens6 - used by infra VMs, virtual node VMs; - ens2..ens3 - used by VCP VMs (spawned by salt.control); Parametrize newly defined interface names throughout the cluster models. While at it, add AArch64 default values for above iface names. NOTE: baremetal clusters will be parametrized later, after common config is factored out into <baremetal-mcp-ocata-common>. Change-Id: I89aba9aaf85b585cc510302eb76d7810fbf60679 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-11reclass: Multiarch support for arch specific paramAlexandru Avadanii13-3/+37
Introduce a simple mechanism that simulates an 'if-arch-then' cond for reclass models: - add new <all-mcp-ocata-common> class hierarchy; - at runtime (via <salt.sh>) make 'all-mcp-ocata-common.arch' point to 'all-mcp-ocata-common.$(uname -i)' dynamically; - inherit new 'arch' class in all cluster models; - factor out current x86_64 default for "salt_control_xenial_image"; - add AArch64 default for param "salt_control_xenial_image"; Change-Id: I3b239b28d0fd1cc2ced8579e2e93b764eb71ffc3 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-09reclass: virtual: Factor out common infra configAlexandru Avadanii10-200/+64
Change-Id: I669a81cf46a4ac988a1ea04c3b9d297ae67a0a62 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-09log.sh: Collect /var/log from cluster nodesAlexandru Avadanii4-0/+7
Bring back <ci/deploy.sh> parameter `-L`, which is already passed by releng deploy script. Since we need to enable file_recv on salt master, do so by adding a new class in <virtual-mcp-ocata-common/infra/config.yml>, which will be inherited by all scenario reclass models. JIRA: FUEL-288 Change-Id: I9b649315984fb8580b63883d0e06c1e1efd11057 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-08[ovs/dpdk] Mend dpdk settingsMichael Polenchuk5-6/+29
* add vcpus to virtual compute * re-pin dpdk core & pmds * switch to UCA repos * disable apt-daily cron job Change-Id: Ia23100b846d8954e3d5e8a264a6b8518402b2fa6 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-07Merge "cleanup: Rename ODL-L3 to ODL, drop ODL-L2"Alexandru Avadanii8-201/+0
2017-09-06Configure SubjectAltName for the proxy certMichael Polenchuk3-0/+18
In order to avoid SubjectAltName warnings, bring it into proxy ssl certificate. Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> Change-Id: I46fe9697469354bc028039cc1f030baae1ccd7fb
2017-09-05cleanup: Rename ODL-L3 to ODL, drop ODL-L2Alexandru Avadanii8-201/+0
JIRA: FUEL-279 Change-Id: Ia8bed5e09937a1ffd29a15d40f610d4b0c8f0a17 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-09-05[baremetal] Enable ceilometer/aodh servicesMichael Polenchuk11-48/+72
Change-Id: I34706afbdbcbdaace0b0ae6c2c2e8cb932812d4e Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-04[baremetal] Enable cinder-volume serviceMichael Polenchuk6-3/+15
Change-Id: I60a5566de43ca58f3f172611c95546b1353f8406 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-09-01[baremetal] Tune dpdk/compute cpu pinningMichael Polenchuk2-6/+6
Change-Id: I733c6c9f1f5aa559084998aa9bc639079bda83a5 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-31[baremetal] Adjust vcp nodes memory sizeMichael Polenchuk4-9/+9
Change-Id: I8937f4f676a48c852bece0680da0b559df7c2e7c Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-30Update salt init scripts sourceMichael Polenchuk1-0/+0
Change-Id: I269e397b78d55794b1c49bf582cc0e663cbe9ca6 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-29reclass: virtual-mcp-ocata-ovs: Fix yaml typoAlexandru Avadanii1-1/+1
Change-Id: Icc283315bbf0df825e9836913deff821bad1123a Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-29Merge "[virtual] Apply ceilometer/aodh services"Alexandru Avadanii21-1366/+423
2017-08-29[baremetal] Return back custom image for vcp nodesMichael Polenchuk4-3/+21
Virtual node based on cloud ubuntu image won't register as a minion on salt master. Change-Id: Ia32eae01a5633042189cdebebcba8043cae61503 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-29[virtual] Apply ceilometer/aodh servicesMichael Polenchuk22-1366/+423
* run ceilometer/aodh states * wrap common virtual cluster options * get the source image based on timestamps Change-Id: I88f1d63ed4a94eba4ec0a9cf33d36d51c75ae355 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-28Sync os cacert from proxy to salt masterMichael Polenchuk7-0/+12
JIRA: FUEL-274 Change-Id: I2c8161b24cb18a0d1f9dc6fd509ce18af7ea8cf5 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-28[baremetal] Add required user on vcp nodesMichael Polenchuk5-8/+17
* add user of "ubuntu" so that functest gets cluster credentials * reduce cpu resources for vcp nodes in nofeature scenario * tune salt targets for maas state * specify ntp servers Change-Id: I433a1de1cd2c69c6747c62c3359f5485dee3bfa4 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-24[baremetal] Bring in ovs/dpdk scenarioMichael Polenchuk17-0/+1168
Change-Id: Ia0d828fa31549a12b6740e0edeeba2ab13a9b998 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-23[baremetal] Bring in opendaylight scenarioMichael Polenchuk18-0/+1240
Change-Id: I3a9bb25fc7514055da588b9047f61af178eff222 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-22Configure neutron gatewayMichael Polenchuk4-57/+35
Change-Id: I01744bd5728d6fc4c8cd3792aee9759434d18645 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-22Return back infra interfaces configMichael Polenchuk2-2/+2
Change-Id: I4baa9940ae14ef6e084fda7169ec43be7cf3f449 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-22Shift vcp nodes interfacesMichael Polenchuk7-19/+19
* shift vcp nodes interfaces since names started from ens2 * add extra salt sync before vcp start up * run rabbitmq state on 1st node beforehand then the rest Change-Id: Ic2c174c288a5e89f2f28c0d9aa573340190a61d3 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-21reclass: baremetal: openstack: Fix eth assignmentAlexandru Avadanii6-11/+17
Baremetal support introduced a couple of VCP VMs, which have 2 network interfaces: - primary (ens3 inside x86 VM) - connected to "br-mgmt" bridge on each kvm node, serves for MaaS DHCP / connection to salt master; - secondary (ens4 inside x86 VM) - connected to "br-ctl" bridge on each kvm node, serves for Openstack Management network; However, the reclass model was configured to use a single IP address on the primary interface, breaking the connnection to salt master, while also not connecting the Openstack Management network properly. Fix this by configuring the primary interface for DHCP, while the secondary gets a static IP in Openstack Management network. Change-Id: I9f1d6f080e882bfaae7b5f209bc3c5536826ba06 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-21Swap vcp nodes interfacesMichael Polenchuk1-2/+2
In order to connect to right underlay bridge, swap interfaces. Change-Id: I0ae1f50e8d1f3485404bd7e6eea772cab555b313 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-21Merge "virtual: odl-router: Stop overriding Ubuntu repos"Alexandru Avadanii1-1/+0
2017-08-19MaaS: Add support for dynamic fabric numberingAlexandru Avadanii1-3/+7
Previously, we hardcoded the fabric name for our 3rd interface (which serves PXE/DHCP for the target nodes) to "fabric-2", relying on predictable index numbers to be provided by MaaS based on the interfaces defined in /etc/network/interfaces. However, the fabric IDs/names generated by MaaS are not predictable, and therefore cannot be hardcoded in our reclass model / scripts. Work around this by: - adding support for fabric ID deduction based on CIDR matching during subnet create/update operation in MaaS py module; - adding support for VLAN DHCP enablement to MaaS py module, which was previously handled via shell MaaS API operations from maas/region.sls; While at it, revert previous commit that disabled network discovery ("MaaS: Disable network discovery"), since it turns out that network discovery was not the culprit for subnet creation failure, but wrong fabric numbering. This reverts commit 8cdf22d1a1bae4694a373873cab4feb6251069b7. Change-Id: I15fa059004356cb4aaabb38999ea378dd3c0e0bb Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-19MaaS: Disable network discoveryAlexandru Avadanii1-1/+1
In case nodes are already powered on and have an IP in the same range as the new MaaS DHCP one (e.g. from a previous deploy), MaaS API will reject the subnet creation due to overlapping addresses. Try to work around this by disabling network discovery. Change-Id: I70a33c552bf38a7ccbc1bb7e90c21f424f082bc5 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-18MaaS: DHCP iprange fix: use dynamic, not reservedAlexandru Avadanii1-0/+1
Without the 'type' parameter set to 'dynamic', MaaS was configured to reserve the IP range instead of allocating it dynamically. This led to IP exhaustion warnings in MaaS dashboard, as well as wrongful IP allocation. Change-Id: I1f2b90bf4cd2393cfab6d4bc17771cef009701c0 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-18MaaS node: Fix dhcp_interface configAlexandru Avadanii1-1/+5
Explicitly configure dhcp_interface for mas01, in order to allow the interface name to be parametrized via "dhcp_interface" _param. Change-Id: I6a2750adc1941c0aa1f94ac9b39133b5bd2388c6 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-18Apply network config on kvm nodesMichael Polenchuk2-1/+1
* re-assign ip from interface to bridge - install bridge utils - make a reboot straight away after network config * change image source for vcp Change-Id: I34506ee161337b5d3a4088cfdf3c082d99ccb695 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-17Bring in baremetal supportAlexandru Avadanii19-0/+1321
- 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>
2017-08-13virtual: odl-router: Stop overriding Ubuntu reposAlexandru Avadanii1-1/+0
Keep UCA default apt sources, instead of overriding them with arch specific values from: - system.linux.system.repo.ubuntu Change-Id: I1edc725a97ae6290d316a7916c27fd904f59db04 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-08-09Synchronize down all of the dynamic modulesMichael Polenchuk1-0/+0
Sync all of the salt dynamic modules to make sure custom modules, states, grains & etc. are on the target nodes. Change-Id: I04f2ac0465d5381c4c07623e9383619d9b9731de Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-08Switch distrib revision to testingMichael Polenchuk1-0/+0
In order to avoid bleeding edge issues with nightly version of salt formulas, switch to "safe" testing repo source. Change-Id: I9d12f337c3952711cb8843943c23315795064016 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>