aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster
AgeCommit message (Collapse)AuthorFilesLines
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 Polenchuk1-6/+6
Change-Id: I733c6c9f1f5aa559084998aa9bc639079bda83a5 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-31[baremetal] Adjust vcp nodes memory sizeMichael Polenchuk3-9/+9
Change-Id: I8937f4f676a48c852bece0680da0b559df7c2e7c 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 Polenchuk3-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 Polenchuk21-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 Polenchuk6-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 Polenchuk4-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 Polenchuk16-0/+1168
Change-Id: Ia0d828fa31549a12b6740e0edeeba2ab13a9b998 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-23[baremetal] Bring in opendaylight scenarioMichael Polenchuk17-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 Polenchuk1-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 Polenchuk1-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-03Merge "Set ntp servers list"Michael Polenchuk5-56/+22
2017-08-02Merge "reclass: opendaylight: Use UCA default repos"Alexandru Avadanii1-1/+0
2017-08-02Set ntp servers listMichael Polenchuk5-56/+22
* set ntp sweden servers list for virtuals * wrap common cluster init options Change-Id: I044802998d5498fed969e62bf1ea8c814652f34f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-02[odl-router] Bring up public network on computesMichael Polenchuk1-0/+28
* apply provider mappings on compute nodes as well * set default route of computes to gateway node Change-Id: I5715e34fd8ecbed87bd7f1b1ed488766af711bae Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-08-01reclass: opendaylight: Use UCA default reposAlexandru Avadanii1-1/+0
Current opendaylight pillar enforces a full apt repository cleanup, removing Ubuntu Cloud Archive (UCA) repos in favor of adding pre-hardcoded Ubuntu archive repos. Unlike UCA, main Ubuntu archive is split based on target arch, the main archive.ubuntu.com holding only x86 packages, while the other archs are hosted on ports.ubuntu.com. This leads to adding (only) x86-specific repositories to our AArch64 UCA image. Mitigate this by ommiting "system.linux.system.repo.ubuntu" from the opendaylight pillar, leaving the default UCA repos in place. Change-Id: Ia7033bcb544d8752d5557bbabc92c92c5008b00c Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2017-07-31Bring in opendaylight L3/router scenarioMichael Polenchuk9-1/+558
Change-Id: I8a3be1764de136e2ecf81f964233483be5d6655a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-07-13Tune network sysctl optionsMichael Polenchuk6-6/+26
* tune net/tcp opts * handle vcpus setting for vms * fix tempest issue with public subnets visible * set reclass data source to local to avoid git clone Change-Id: Ibac9eba8234ebb20854c03b399405968cb2069e8 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-07-11Set public endpoints to external interfaceMichael Polenchuk10-28/+262
In order to pass functest/api_check, configure public endpoints of openstack core services with external ip address. Change-Id: I519865df5700acbcf542ea71efd87780e9f1d9d5 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-07-10Align reclass cluster model of dpdk scenarioMichael Polenchuk6-72/+73
Change-Id: I4fc0c0e040c97e91c79aae2f0142fb6f025081f2 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2017-07-06Enable cinder volume serviceMichael Polenchuk6-12/+12
Change-Id: I29ad8fc0e504779184fdf3795dc82ce1b031dbf8 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>