aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/config/states
AgeCommit message (Collapse)AuthorFilesLines
2019-01-10[noha] Bring in FDIO (VPP+DPDK) scenarioAlexandru Avadanii2-2/+2
- cmp, gtw: bump RAM allocation to accomodate hugepages/VPP; for now we overcommit, gtw01 resources can probably be lowered; - submodule: add salt-formula-neutron so we can locally patch it; - repo: * FD.IO repos for VPP packages; * networking-vpp PPA for python-networking-vpp Neutron driver; - use vpp-router for L3, disable neutron-l3-agent; - baremetal_init: apply repo config before network (otherwise UCA repo is missing when trying to install DPDK on baremetal nodes); - arm64: iommu.passthrough=1 is required on ThunderX for VPP on newer kernels; Design quirks: - vpp service runs as 'neutron' user, which does not exist at the time VPP is installed and initially started, hence the need to restart it before starting the vpp-agent service; - gtw01 node has DPDK, yet to configure it via IDF we use the compute-specific OVS-targeted parameters like `compute_ovs_dpdk_socket_mem`, which is a bit misleading; - vpp-agent requires ml2_conf.ini on ALL compute AND network nodes to parse per-node physnet-to-real interface names; - vpp process is bound to core '1' (not parameterized via IDF); Change-Id: I659f7dbebcab7b154e7b1fb829cd7159b4372ec8 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 455b46a6be4bca145c047ed6957727c119285796)
2018-12-14Merge "[ha] barbican, nova targeting: use server:role" into stable/gambiaCristina Pauna1-3/+4
2018-12-13[VCP] Reboot all VCP VMs after network configAlexandru Avadanii1-2/+2
Currently, PXE/admin on VCP nodes still uses MaaS DHCP before the new network configuration is enforced. A live network refresh would break minion registration with the Salt master, so perform a node reboot instead. Change-Id: I1c25f63f6c98a9fff98108d3fad9550dd4468355 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 59cc3ee4457005bdea78b2a407243d4fcb32f177)
2018-12-10[ha] barbican, nova targeting: use server:roleAlexandru Avadanii1-3/+4
Instead of matching the hostname to determine the primary barbican node, rely on pillar data. While at it, apply the same logic to nova:controller states. Change-Id: Ia4ac391927a8b4b223febff106b400e84d264f7a Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit a4d64c6ff23dd2957b34ebc303c16ee640d709e6)
2018-12-08[cfg01] reclass: Apply broken default patch firstAlexandru Avadanii1-3/+0
reclass settings.py should be patched before the salt-master service is started (since we can't restart it inside the container without killing the tini init). Fixes: 2de5348a Change-Id: Id62d8f9f12fd72ef60322dd9907f26907231c4a7 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 137d0635cc47ae2e0b86c97ee13e93bf2bf94f51)
2018-12-08Merge "[ha] fix barbican server install error" into stable/gambiaAlexandru Avadanii1-1/+2
2018-12-07[cfg01] Patch reclass settings.py broken defaultAlexandru Avadanii1-0/+3
Until a new reclass release including the fix for [1] is published, patch settings.py explicitly. [1] https://github.com/salt-formulas/reclass/issues/77 Change-Id: If93848a6b6f084c76e64ddcf7bfdfa52b7d59050 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 2de5348a8b267a1742154dd6d5c4f5bd3a2983ab)
2018-12-07[ha] fix barbican server install errorGuillermo Herrero1-1/+2
Ensure installation happens first on node 1 first, run as batch on the rest after. Change-Id: I1ac3f516c35c4941b343e88d47c78b19d13d7b90 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com> (cherry picked from commit 73b02742d463fc2932ef66baee7123fc773c1b0c)
2018-12-01[state] maas: Retry first state apply on mas01Alexandru Avadanii1-1/+1
Change-Id: I6d2fab853b25d2f235e27c83a355ebc2c520771c Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit 20dcc03e2acd0d143723c3c319f73c19d894718c)
2018-11-21[vcp] kvm: Re-apply sysctl settings after libvirtAlexandru Avadanii1-1/+1
libvirt postinstall script configures `virbr0` by default, which we later remove & disable. However, on network creation, libvirt also enables ip_forward, so re-run kernel.sls to force it to 0 without a reboot. Change-Id: Ie27fbf995c10ad9cd0fa0c28c29bd88161f04fd7 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> (cherry picked from commit dc2e7381046ef617d1bf1af2261e9e84627bb8c4)
2018-11-06[opendaylight] Update SQLAlchemy libraryMichael Polenchuk1-0/+16
To conform to the changes in networking-odl driver: https://review.openstack.org/604755 Change-Id: I6aaefe9d6d4f26652464f82b7c7e45694387c8af Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com> (cherry picked from commit aa0ccb8daea30e290cf5824e639ddd153f2da3fe)
2018-10-30Add odl bgpvpn noha scenario to fuelStamatis Katsaounis1-0/+12
JIRA: FUEL-393 This patch adds support of os-odl-bgvpn-noha scenario to fuel installer. Change-Id: I4e053e38aac70023b0a81f9a41b415c7a1aae3af Depends-On: I57288bbb42f4c75af19f3807f8f15b44482c066c Signed-off-by: Stamatis Katsaounis <mokats@intracom-telecom.com> (cherry picked from commit 7f41e5fde88df7c312175a90c536550763d4c271)
2018-09-21[state] virtual_init: Limit to mas01 on baremetalAlexandru Avadanii1-0/+1
`virtual_init` state file tries to ping all FN VMs, but that won't work on hybrid PODs since all FN VMs but mas01 require MaaS DHCP to be already configured (i.e. FN VMs in question will be reset after mas01 is fully configured). Limit virtual node queries in `virtual_init` to mas01 VM, as the rest of FN VMs will be handled via `baremetal_init` state. While at it, move _param:apt_mk_version def to common reclass to avoid an undef reference in NOHA hybrid deployments; set MCP_VCP to 0 for non-HA scenarios. JIRA: FUEL-385 Change-Id: I582bca6864e9bfed23baf26f9b66e6e95e986c58 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-19[noha] Bring in OpenDaylight SFC scenarioMichael Polenchuk1-0/+12
- bump formulas baseline during docker build; - refresh patches; Change-Id: I0a54863f57344c5f8897dc981f704c4d265c5522 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-13[ha] Get OVS 2.9 & DPDK 17.11 from UCA repoMichael Polenchuk1-4/+0
* to be compatible with HWE kernel * make neutron balancing to RR back * turn off glance v1 api support (doesn't relevant for now) Change-Id: I916aae10f523be339c20de32218ce03c245afe72 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-06[dpdk] Check whether public bridge existsMichael Polenchuk1-1/+1
Change-Id: I5aad512b5761deaa30522b6939bf245ecb1ec681 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-04[noha] Set MTU on tenant/private dpdk interfaceMichael Polenchuk2-3/+3
Enable jumbo frames on tenant/private interface as well so that an instance can get the DHCP response from gateway node. Change-Id: I9407fa67e9e0cdbe50335e4430748b0e45ba841a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-03[odl/dpdk] Make dedicated public network schemeMichael Polenchuk1-0/+3
In order to avoid TCP connection checksum issue (i.e. TX offloading on ovs bridges) add linux bridge connected with ovs public bridge. Change-Id: I4d266dd92756d5326dfa3d74fe2f376b26415812 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-01[docker] Cleanup, minor fixes, formula bumpAlexandru Avadanii1-3/+3
* ship prebuilt salt master conf for better readability: - enable x509.sign_remote_certificate (for prx VCP nodes); * refactor Salt master CA handling: - preinstall `salt_minion_dependency_packages` and `salt_minion_reclass_dependencies` inside docker image; - persistent /etc/pki; - run salt.minion on cfg01 to generate master keys; * bump container formulas to 1 Sep 2018 versions or newer: - inject date into Docker makefile, forcing a fresh fetch of all salt formulas from upstream git repos; * workaround broken salt-formula-designate's meta/sphinx.yml: - the DEB package version of salt-formula-designate uses `cmd.shell` to query dpkg on the minion, while the git repo version still uses `cmd.run`, running into parsing issues; - temporarily disable sphinx metadata generation for designate until upstream git repo syncs with the DEB version; * upstream: salt-formula-salt AArch64 salt.control.virt support: - retire salt-formula-salt git submodule and related patches; * skip installing reclass distro package (already installed via pip inside the container); * limit initial pillar_refresh call to nodes on jumphost; * remove unused salt-formula-nova git submodule; JIRA: FUEL-383 Change-Id: I883b825e556f887a5e31f8a43676dcd8ece6dfde Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-01[AArch64] vcp: Fix up vcp_nodes awk query conflictAlexandru Avadanii1-1/+1
JIRA: FUEL-404 Change-Id: I12acc90cdb17ecc090a993e1be41d13ad81dbb9d Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-29[salt-formulas] Add & enable armband formulaGuillermo Herrero3-1/+13
AArch64 specific formula, mostly tweaking nova conf / installing virtualization layer prerequisites: - install qemu-efi; - install vgabios; - fix missing link for vgabios binary blob; - nova conf: cpu_model=cortex-a57 (only for virtual deploys); - nova conf: virt_type=qemu (only for virtual deploys); - nova compute conf: virt_type=qemu (only for virtual deploys); - nova conf: pointer_model=ps2mouse since AArch64 has no USB tablet; [1] https://github.com/openstack/nova/commit/f0f0953 Change-Id: I40515bdbd941850b103a86d51b347cc8610f5741 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>
2018-08-29[docker] Switch to containerized Salt MasterAlexandru Avadanii1-0/+39
* Refactor OPNFV salt-formulas mechanism to resemble upstream git structure: - git submodules: add new submodule for each formula we patch; - create salt-formula-x directories for OPNFV formulas; - move mcp/metadata/service contents to their each formula subdir; - use `make patches-import` for patches previously handled by patch.sh; - retire patch.sh * states: add virtual_init: - mostly based on old salt.sh, which is now obsolete; - exclude salt-master service restart (it would kill the container); * scenarios: cleanup (rm cfg01 virtual node def), adopt virtual_init; * reclass: align our model with prebuilt container's Salt config: - drop linux:network pillar data (handled by Docker); - stop applying linux.system state on cfg01; - align salt user homedir; - drop salt-formula packages (preprovisioned); * minor plumbing in deploy.sh and lib.sh; JIRA: FUEL-383 Change-Id: I28708a9b399d3f19012212c71966ebda9d6fc0ac Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-15Turn off default apache portsMichael Polenchuk2-2/+2
Change-Id: I0377615ff19e39aca74b90d2ff7e7b2cd5cd6ccb Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-08-13[states] virtual control plane: dist_upgrade=TrueAlexandru Avadanii1-1/+1
Change-Id: I9c5c6cf564245d497d5916cc7f902ac277105bc6 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-09[ha] Fix openstack_ha ovn setupGuillermo Herrero1-1/+2
Fix targeting for neutron.compute sls for ovn computes, avoiding interaction with ovs dpdk scenarios. JIRA: FUEL-329 Change-Id: Iffb07f6f0d4dc8071437adf59d4cd6982113b998 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
2018-08-07[states] baremetal_init: dist_upgrade=TrueAlexandru Avadanii1-1/+1
JIRA: FUEL-382 Change-Id: I9ace928ec5e04bee7ea9cfe1593b205802d7058a Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-07[states] baremetal_init: Parameterize kvm hostsAlexandru Avadanii1-11/+15
Instead of hardcoding the 'kvm' hostnames, use new targeting mechanism based on scenario-specific node names, preparing for baremetal noha scenario integration. JIRA: FUEL-382 Change-Id: If336aa1ac130749e4df7bffaf27a55513dd4f267 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-03[lib.sh] Reset virtual nodes after MaaS installAlexandru Avadanii1-1/+1
For hybrid PODs (e.g. x86_64 jumpserver + control nodes, aarch64 baremetal compute nodes), the virtual nodes rely on MaaS DHCP to be up when the OS boots, so issue a `virsh reset` accordingly. Instead of checking for online nodes using `test.ping`, use `saltutil.sync_all` to also sync Salt state modules to the virtual nodes (usually handled by baremetal_init state in HA deploys). JIRA: FUEL-338 Change-Id: If689d057dc4438102c3a7428a97b9638e21bfdc5 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-03[states] openstack_ha: Retry rabbitmq stateAlexandru Avadanii1-1/+1
For hybrid deployments, the first run of rabbitmq:server sls might lead to 'no response' and a retry of the whole `openstack_ha` state. JIRA: FUEL-338 Change-Id: I7ec663f9babc8c55d2c8a2b31a6e674452f04166 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-02[ha] Add OVN scenarioGuillermo Herrero1-0/+3
JIRA: FUEL-329 Change-Id: I46c7dbc791441c6b069a0d56373ff98a32a57e60 Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
2018-07-26Merge "Bring in Barbican service onboard"Michael Polenchuk2-0/+6
2018-07-24Bring in Barbican service onboardMichael Polenchuk2-0/+6
Change-Id: I68759360c9dd8f8cf422161e21ed15df6c694e84 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-07-16[salt-formulas] opnfv: Drop obsolete route_wrapperAlexandru Avadanii2-5/+1
Change-Id: I84a4789ff2155d7c14f9ffd9bfe54c5bca7a0d4f Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-06-19Enforce static configuration instead of DHCPAlexandru Avadanii2-7/+0
- noha: 'accept_policy: open_mode' to align with ha scenarios; - s/cmp01/cmp001/g to align all scenarios and allow code reuse; - rename network params: s/dhcp/mcpcontrol/g, cleanup; - computes XDF data: drop 'opnfv_*' layer of params, cleanup; - local vPDF: add comments with default roles by node index; - parameterize all netmasks; - drop unused address/netmask for 'proto: manual' interfaces; - virsh_net: cleanup definitions, remove hardcodes, align IP on jumpserver and DHCP range with MaaS for pxebr; - maas: parameterize hardcoded '/24' cidr for PXE/admin, refactor maas.region.machines parameterization; - merge <all-mcp-arch-common/infra/config_*pdf.yaml.j2> templates; - move reclass.storage definitions of compute nodes to common dir; - drop 'openstack_compute_*' reclass params in favor of expanding them via j2 directly in reclass.storage params; - adopt `nm.cluster.has_*_nodes` where possible; - obsolete `runtime.yml` from reclass model; - refactor arch-specific reclass param selection; - remove unused defaults in favor of mandatory IDF properties; - noha: prepare for baremetal node support in cinder_lvm_devices; - interfaces: add interface_mtu and 'noifupdown: true' everywhere; - interfaces: use j2 macros to generate eth/vlan config; - states cleanup: remove DHCP route disable workaround on prx/cmp; - allow configuring NTP servers via: `idf.fuel.network.ntp_strata_host{1,2}`; - ovs_bridge: Allow setting gateway, dns-nameservers - apache: Adjust module list for novcp class inheritance; - glusterfs PPA: pin with same prio of MCP repos for novcp scenario; JIRA: FUEL-319 JIRA: FUEL-326 JIRA: FUEL-337 Change-Id: Ia6ad64ba8cade85a75fb22c9a2505decc3834360 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-06-11[ha] Retry salt.minion state applyAlexandru Avadanii1-1/+1
Baremental compute nodes time out with 'Not connected' or 'No response' while trying to apply `salt.minion` highstate after the Salt 2017.7 bump, retry applying it up to 5 times. Change-Id: I67f74c65a7cebe0a0b4c2812fa0ced6c1144be58 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-06-08[state] Stop expecting linux.network failuresAlexandru Avadanii1-2/+2
Now that the `linux.network` state applies cleanly on all nodes, stop expecting failures to prevent false-positive passes. Change-Id: I8a283474e12b85deb95815e4e7a0af4a74d143ac Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-06-08Discover computes after they are registeredMichael Polenchuk1-0/+3
The "nova hypervisor-list" won't work (i.e. will result in an empty list) until discover_hosts is launched with compute nodes on board. Change-Id: I942c69645731b59a5cb9e5cf39a89b84def96b12 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-05-24Merge "[Horizon] Drop the obsolete Horizon workaround"Alexandru Avadanii2-22/+0
2018-05-24Merge "[maas] Adopt maas.machines.storage"Alexandru Avadanii1-10/+1
2018-05-24[maas] Adopt maas.machines.storageting wu1-10/+1
Replace MAAS CLI set_disk_layout with the new maas.machines.storage state JIRA: FUEL-364 Change-Id: I4d8cd9f473c5386ee7b32ad378ca1e02989233ca Signed-off-by: ting wu <ting.wu@enea.com>
2018-05-23[Horizon] Drop the obsolete Horizon workaroundting wu2-22/+0
Since we switch the Horizon package from Ubuntu/UCA repo to MCP repos, we can drop the obsolete Horizon workaround. JIRA: FUEL-374 Change-Id: I0b77a4f2158a972a5eb400919f2929c7bd8360cf Signed-off-by: ting wu <ting.wu@enea.com>
2018-05-21[ha] Bring in gnocchi/panko servicesMichael Polenchuk1-5/+4
JIRA: FUEL-372 Change-Id: I9083898f0179649d855750d48f3f9bc79caba50c Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-05-17[noha] Bring in gnocchi/panko servicesMichael Polenchuk1-1/+3
JIRA: FUEL-372 Change-Id: I4e322a4a2c84843e9350fe9b3b849cd0c5244a12 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-04-26Run galera state on slave nodes one by oneMichael Polenchuk1-1/+1
Apply galera state in consecutive order to avoid a race condition with database initialization. Change-Id: I877bad38777d8469c03cee3b7e96acc875a3a72a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-04-25[states] Catch more transient 'no response' respAlexandru Avadanii2-8/+8
Change-Id: Ie8e60a648fa28e59daa6e00f357df52b5821e833 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-04-24Mend OVN scenarioMichael Polenchuk1-15/+0
* setup HWE kernel to get suitable conntrack module * clean out outdated state with ovn ctl options * point SB remote source to local mgmt network Change-Id: I8986c227ce0a9a3b7ab3faf382760ec32e6e7c00 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-04-18[baremetal] cmp linux.system: catch 'no response'Alexandru Avadanii1-1/+1
Catch & retry transient errors / timeouts while applying the `linux.system` state on cmp nodes. Change-Id: Id314b5a29673e0bcaa78611fc787491056830952 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-04-06Update opendaylight version to oxygenMichael Polenchuk1-4/+0
JIRA: FUEL-362 Change-Id: Ib2621bca72d1ba376af5d369edcf5fcf37e9788b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-04-03Remove opendaylight service maskMichael Polenchuk1-3/+1
Nitrogen SR2 brought in weird behaviour into netvirt feature configuration causing malfunction tunnels between client nodes (e.g. gateway, computes). In order to work properly service of opendaylight requires an explicit restart or reload by means of salt formula. Change-Id: I277da5ad2787f1005647e500b64c7ffa6051443b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-03-30Re-order opendaylight stateMichael Polenchuk1-0/+3
* return back opendaylight state after neutron setup * sleep for awhile to let neutron api reconnect to the ODL controller and agents to register on server Change-Id: Ife0c7d3cc20574b0733e8e3064843c680379cc84 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>