aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/reclass/classes/cluster
AgeCommit message (Collapse)AuthorFilesLines
2020-01-14fdio noha: Workaround tap MAC generation issuesAlexandru Avadanii1-0/+10
systemd 230..241 has issues generating persistent MAC addresses for bridge/tap/etc network devices, causing trouble for VPP agent hooking tap devices to the bridges it creates on the fly. Work around this by disabling the faulty policy, as suggested in [1]. [1] https://github.com/systemd/systemd/issues/3374 Change-Id: I8d568bc0a859256d1493bf9f8261d60943fa60e0 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2020-01-09baremetal, virtual: Bump kernel to hwe-18.04 (5.0)Alexandru Avadanii1-1/+2
On some aarch64 platforms (e.g. ThunderX 1), lvcreate manifests some spurious timing issues resulting in incomplete/corrupted LVM thin creation and eventually to transaction ID mismatch between userspace and kernel space. This eventually leads to cinder-volume issues, either when creating the thin storage pool (vgroot-pool) and/or when creating the LVs inside said pool. The issue manifests spuriously on Ubuntu Bionic + UCA, so until a working combination of userspace/kernel is found, work around this by bumping the kernel package to hwe-18.04 (kernel 5.0), effectively bypassing the timing issues during volume creation. This affects all cluster machines (both HA and NOHA scenarios, baremetal and virtual, x86_64 and aarch64, baremetal and virtualized nodes). Note: Ubuntu Bionic cloud image partition handling requires e2fsprogs 1.43, not currently available on Ubuntu Xenial / CentOS 7. Change-Id: I839e03080104c391fe18185b9544c9df43c114e6 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2020-01-08ha, noha: Fix Horizon stale cache after installAlexandru Avadanii6-22/+2
Partially revert more from commit 63b712d, it turns out static files were not always up to date after the package install, so force a refresh. While at it, fold some common libvirt pillar configuration. Fixes: af1a4adf Change-Id: I1b4c20cfa9ae08d1cd7b0b774b544b76fc73a715 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2020-01-03aarch64: Workaround broken lshw CPU detectionAlexandru Avadanii1-1/+1
On some aarch64 platforms (e.g. ThunderX), the DMI tables parsed by lshw lead to wrong CPU capabilities detection, breaking our MaaS tag filtering (which used to rely solely on CPU having asimd caps). Extend the tag filtering condition to also include nodes that report `cp15_barrier` platform capability. Note that not all aarch64 systems include this cap explicitly (especially since it's been deprecated in ARM v8), but it is currently reported by the platforms where asimd is not properly detected. This is merely a workaround for the broken lshw version in Ubuntu Bionic (B.02.18). Change-Id: I4a5c0d6af4d863d2ca094d6926a65ee90dee0e07 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-12-30noha: Re-enable Horizon dashboard, fix CSSAlexandru Avadanii2-0/+13
- ha, noha: Fix misaligned python 3 requirement for Horizon: * python3-pylibmc - ha, noha: Partially revert commit 63b712d: "[Horizon] Drop the obsolete Horizon workaround" Since we switched back from MCP Horizon package to UCA, fix misaligned expected static resources location. - noha: Enable nginx proxy on ctl01 node for serving the Horizon dashboard at http://<cluster public VIP>:80 (http only, no SSL). Change-Id: I5f930a5826a818791183d3910aa0e5607924e8f3 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-12-30aarch64: Pin qemu-efi from Armband reposAlexandru Avadanii2-4/+18
Upstream (UCA) qemu-efi (AAVMF) package is incompatible with most cloud images, e.g. Cirros used by Functest, resulting in kernel boot issues and/or missing serial console output. Work around this by pinning the qemu-efi Debian package from the old Armband repositories. This should fix singlevm1 functest testcase. Change-Id: Ibbe2218d99881f6fec89846497c2cc248aab5031 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-12-19[fdio] Bump VPP to 19.08.1-releaseAlexandru Avadanii1-8/+69
- refresh formula patches with new package names where necessary; - switch to packagecloud.io repositories; Change-Id: I1178a387891d34117c162380d8247eb7a4212359 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-10-30[ha] [odl] Patch hostconfig for py3 compatAlexandru Avadanii1-0/+17
Change-Id: Id6754dec226e75b9ee1e8c19ac04531b9f277e0f Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-10-25[baremetal] Stein, Bionic, py3 supportAlexandru Avadanii16-65/+130
Change-Id: If3f8cb6bfeedeb766a050d5a271b21c90bb3ba1c Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-08-08Conform ovsdb listen port to os-vif defaultsMichael Polenchuk2-0/+8
Nova (by means of os-vif lib) uses 6640 port by default to connect to remote ovsdb over tcp/ssl. Change-Id: I1372d8a3170b00243a5756b15a140aafe03dc268 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-08-02[k8s] Adjust scenario for bionicMichael Polenchuk2-6/+6
Change-Id: I5c7a1e827446189b98b924ffd4272acf1a794697 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-07-29Merge "Update OpenDaylight version to Neon"Michael Polenchuk4-2/+24
2019-07-12Update OpenDaylight version to NeonMichael Polenchuk4-2/+24
Change-Id: I6cbbceb9b4a88f527d8dd800b0650f31a3dc1364 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-07-12Align python3 packages with stein requirementsMichael Polenchuk2-7/+3
Change-Id: Ib2b1525957929c39e4b602ad1b7f4fbfd16a375c Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-07-11Add extra bionic repoMichael Polenchuk2-0/+13
Change-Id: I06577fa93e895a7c5940dac41b4f9c24b455f455 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-07-10[virtual] Update OpenStack version to SteinMichael Polenchuk10-18/+48
Change-Id: I9c1e97144ffd46040d32a0edf8253fc393b73c89 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-06-28[iec] Add basic CentOS support (virtual only)Alexandru Avadanii1-7/+33
- reclass: iec: CentOS compatibility changes: * drop `proto: static` in favor of letting the linux formula set the appropiate default based on target OS; * replace `proto: manual` with `proto: none` on RHEL systems; * system.file: Avoid using non-existing `shadow` group for system files; * load br_netfilter kernel module to avoid `linux.network` state failures; * disable `at`, `cron` due to incomplete defaults in salt-formula-linux (since we don't use them on iec nodes anyway); - jumpserver/VCP VMs: centos: enable predictable interface names: * CentOS cloud image defaults to old 'eth' naming scheme; * add necessary kernel boot options via linux state; * cleanup auto-generated udev rules for old eth interface names; - salt-formula-linux: network: RHEL: Set bridge for member interfaces * Find the bridge containing the interface being currently configured (if any) and pass it to the `network.managed` Salt call; - deploy.sh: Add new deploy argument `-o` for specifying the operating system to preinstall on jumpserver and/or VCP VMs; * defaults to 'ubuntu1604'; * only iec scenarios will also support 'centos' for now; - user-data: minor tweaks for CentOS compatability: * use `systemctl` instead of `service` utility; * explicitly enable `salt-minion` service, since it defaults to disabled on RHEL systems; * explicitly call `ldconfig` to work around stale cache on RHEL, preventing `salt-minion` from using OpenSSL library; - states: virtual_init: Skip non-existing sysctl options on CentOS: * CentOS currently uses a 3.x kernel which lacks certain sysctl options that were only introduced in 4.x kernels, so skip them; - state: akraino_iec: Add centos support: * move iec repo to `/var/lib/akraino/iec` on both Salt Master and cluster nodes; - scenario defaults: Add CentOS configuration: * OS-dependent configuration split; * CentOS base image, default packages etc.; - AArch64 deploy requirements: Add `xz` dependency * CentOS AArch64 cloud image is archived using xz, install xz tools for decompression; - xdf_data: Make yaml parsing OS agnostic: * rename `apt` to `repo` where appropiate; * OS-dependent configuration parsing; - lib_jump_deploy: CentOS handling changes: * skip filesystem resize of cloud image for CentOS; * add repo handling, package intallation/removal handling for CentOS; * unxz base image if necessary (CentOS AArch64 cloud image); Change-Id: Ic3538bacd53198701ff4ef77db62218eabc662e7 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-06-10[ha] Disable apache's status moduleMichael Polenchuk1-1/+2
To avoid ports conflict of nginx/apache disable unused apache's status module, which is binded on 80 port by default. Also remove patch with double locations content (formula already has such configuration). JIRA: FUEL-408 Change-Id: Ib06dac8abe36299cf77747bdb3fc0fe7216b6096 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-06-06Merge "[ha] Re-enable nginx proxy for Horizon"Alexandru Avadanii1-0/+1
2019-06-05[ha] Re-enable nginx proxy for HorizonAlexandru Avadanii1-0/+1
Starting with MCP 2019.2, Horizon was moved under haproxy in Active/Active mode by default via upstream changes: - Adding haproxy class for horizon [1]; - Cleanup nginx horizon sites by default [2]; This change re-enables the old behavior where Horizon is served by nginx instead of haproxy. While at it, fix missing support in salt-formula-apache for wsgi `locations`, so Horizon dashboard can access '/static' resources (e.g. CSS/images). JIRA: FUEL-408 [1] https://github.com/Mirantis/reclass-system-salt-model/commit/81c4c21a [2] https://github.com/Mirantis/reclass-system-salt-model/commit/a3b38f46 Change-Id: I9b35d5d0ce4e0b53dae808c2620a31ca80290b55 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-06-04Merge "Revert "Disable block migration explicitly""Michael Polenchuk2-2/+0
2019-06-03Revert "Disable block migration explicitly"Michael Polenchuk2-2/+0
This reverts commit 430a0aee9e8c7400d698f460406152aa70349b6c. Superseded by the patch into releng https://gerrit.opnfv.org/gerrit/67975 Change-Id: Ibeb8419fa0ebc8eebe255e7535d775458f560ad0 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-05-31Merge "Revert "Patch dhcp agent to avoid unwanted resync""Michael Polenchuk2-22/+0
2019-05-29Revert "Patch dhcp agent to avoid unwanted resync"Michael Polenchuk2-22/+0
This reverts commit 7522bdb0e898144da2b6dc361dbdd549b39bc025. The original patch has been merged (https://review.opendev.org/661011) Change-Id: I9a1c04590145800523d546e36e9462fa7074922c Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-05-29Disable block migration explicitlyMichael Polenchuk2-0/+2
Functest enabled block migration by default recently but it can't be used with shared storage. Change-Id: I15fd5459df91cece02e87cda9d1ed6e575194667 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-05-09[fdio] Bump compute RAM defaults for virtual PODsAlexandru Avadanii2-0/+2
Hugepage count has been recently bumped for virtual PODs via IDF changes in Pharos, so align our FDio scenarios with the new RAM requirements. While at it, fix wrong pod_config template evaluation by moving it after the templated scenario files are expanded, since pod_config relies on scenario node definition. Also, configure VPP to use decimal interface names by default to align with Pharos macro for the VPP interface name string. Change-Id: Ib3a89c294a3a2755567fdbe07e3be2b8ca1a5714 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-04-25Patch dhcp agent to avoid unwanted reschedulingMichael Polenchuk4-6/+22
Change-Id: Id49f26a2615e2fc06e94eeaf2e9200e83625e6c9 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-04-12Merge "[odl] Disable timeout for learnt flows of snat"Michael Polenchuk2-2/+6
2019-04-12[baremetal] Tune up dpdk optionsMichael Polenchuk2-10/+10
Optimized for LF-POD2 as nic assigned to private/dpdk interface and pinned cores resides on numa #0. Core #11 is for DPDK, the rest four cores for PMDs. Change-Id: Icca701bc1a66f3672b8511e0245c82ca29788a8b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-04-12[odl] Disable timeout for learnt flows of snatMichael Polenchuk2-2/+6
Set timeout value for snat punts to zero to turn off the rate limiting and installation of learnt flows. Change-Id: I79dad8fd0f925bfc11d7dc1678c3a414dc35fa56 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-04-11[ha] Take out class with backports repoMichael Polenchuk3-6/+10
* update system reclass * rectify telemetry redis options Change-Id: I6dca1ae52e7f7d73a90e53fceddca8e86872651b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-04-10Merge "Setup repository with backports"Michael Polenchuk12-11/+33
2019-04-09Merge "[VCP VMs] AArch64: Switch seeding back to qemu-nbd"Alexandru Avadanii1-0/+2
2019-04-08Setup repository with backportsMichael Polenchuk12-11/+33
Change-Id: I791436f512dea6c6bc61133c4122ac872950af8e Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-04-08[VCP VMs] AArch64: Switch seeding back to qemu-nbdAlexandru Avadanii1-0/+2
Upstream change [1] switched from old qemu-nbd preseeding of VCP VMs to using a cloud-init + configuration drive. This breaks on AArch64 with "IDE controllers are unsupported for this QEMU binary or machine type", so switch back to using qemu-nbd. [1] https://github.com/Mirantis/reclass-system-salt-model/commit/c0e4807 Change-Id: I0dfeb638d408343c76a73fafa503048a79ce1f6e Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-04-04Define stub for cinder service in keystoneMichael Polenchuk2-0/+8
Required only for Rally validation in cinder scenarios, there is no useful functionaly in terms of cluster. Change-Id: Idc4d62cbbc9974972e9d492b5a419342077e3d9a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-04-03[noha] Deploy dhcp/metadata agents on computesMichael Polenchuk2-0/+6
Sometimes instance doesn't get ip address from dhcp server, which resides only on gateway node, so run additional dhcp/metadata agents on compute nodes to handle tenant networks in place. Change-Id: If1d74af665cf8db64b09f846fac7192f76abdb25 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-03-29[akraino] Add IEC K8-calico scenariosAlexandru Avadanii12-1/+355
- bump Pharos git submodule to allow PODs with fewer nodes; - add `k8-calico-iec-noha` scenario definition for Akraino IEC basic configuration; - add `k8-calico-iec-vcp-noha` scenario definition for Akraino IEC nested (virtualized control plane) configuration; - add `akraino_iec` state, which will leverage the Akraino IEC bootstrap scripts from [1]; - replace system.reboot salt call with cmd.run 'reboot' as it's more reliable; - use kernel 4.15 for AArch64 K8 IEC scenarios; NOTE: These scenarios will not be released in OPNFV since don't rely on Salt formulas but instead of Akraino IEC scripts to install K8s. [1] https://gerrit.akraino.org/r/#/q/project:iec Change-Id: I4e538e0563d724cd3fd5c4d462ddc22d0c739402 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-03-29Bring in kubernetes scenarioMichael Polenchuk7-0/+398
Change-Id: I2b41ce2e275bb053fa2590654ea7fa432b0c857f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-03-27Rectify system reclass after updateMichael Polenchuk8-1/+23
* add opendaylight password (removed from system level) * get updated ovn system class w/o mysql settings * enable ceilometer user back (removed along with outdated service/endpoints) * adjsut check interval of haproxy for noha scenarios since there is only one backend for services, i.e. failover ain't expected Change-Id: Iedee290e1cfcf838998bd44dc09a729d143974ac Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-03-25Update system reclassMichael Polenchuk12-14/+14
Change-Id: I745a838b1f2f294b6c455700509ddf4b0264446f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-03-14Smooth down telemetry servicesMichael Polenchuk7-20/+2
* update gnocchi to 4.3 * remove outdated ceilometer api Change-Id: I7adaf3ddc76d93531b6b0997b684672b80f2992f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-03-04Turn off meltdown/spectre patchesMichael Polenchuk4-0/+12
Change-Id: Id75ffe4db808a4ec250ba8b86c5d49f1206c3784 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-02-28Tune up nova/neutron intervalsMichael Polenchuk5-0/+9
Also re-align resources for virtual scenarios. Change-Id: Id0d55407fd5b1720a24e30c364219f8b08e89d06 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2019-02-19Merge "[baremetal] Containerize MaaS"Alexandru Avadanii16-76/+29
2019-02-15[cfg01] Schedule x509.get_pem_entries mine updateAlexandru Avadanii1-0/+4
Previously, Salt Master CA mine was only sent once, during salt.minion.ca state execution at cfg01 bringup / bootstrap. This causes possible issues with: - Salt Master container restart (mine data is lost); - UNH Lab deployment (uknown rootcause, might be related to XFS and overlay2 being used with Docker on CentOS); To bypass this issue, make x509.get_pem_entries module send mine data at the default mine interval (60 minutes). Change-Id: I5f6334ae18f5af6cbe0a164791603b67f0a3668f Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-02-14[baremetal] Containerize MaaSAlexandru Avadanii16-76/+29
- replace mas01 VM with a Docker container; - drop `mcpcontrol` virsh-managed network, including special handling previously required for it across all scripts; - drop infrastructure VMs handling from scripts, the only VMs we still handle are cluster VMs for virtual and/or hybrid deployments; - drop SSH server from mas01; - stop running linux state on mas01, as all prerequisites are properly handled durin Docker build or via entrypoint.sh - for completeness, we still keep pillar data in sync with the actual contents of mas01 configuration, so running the state manually would still work; - make port 5240 available on the jumpserver for MaaS dashboard access; - docs: update diagrams and text to reflect the new changes; Change-Id: I6d9424995e9a90c530fd7577edf401d552bab929 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-02-05Merge "[odl/noha] Make vif_plugging non-fatal"Michael Polenchuk2-2/+6
2019-02-04[fdio] Fix VPP package pinningAlexandru Avadanii1-2/+2
Previously, Ubuntu ignored the VPP pinning with: N: Ignoring file 'fdio.ubuntu' in directory '/etc/apt/preferences.d/' as it has an invalid filename extension Change-Id: I5ee60c1715bea3b4180b55125dc72962a70c2754 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2019-02-04[odl/noha] Make vif_plugging non-fatalMichael Polenchuk2-2/+6
In order to mitigate live migration procedure make VIF plugging event non-fatal for nova-compute. Also align max value of memory for instance of ODL controller. Change-Id: I0d00cc97c652eef3bd3404fac4715e2e7f2f02c7 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>