aboutsummaryrefslogtreecommitdiffstats
path: root/mcp/config
AgeCommit message (Collapse)AuthorFilesLines
2018-07-02[AArch64] Pin armband repo with highest prioAlexandru Avadanii1-1/+1
Mirantis repositories shadow certain packages from Armband repos (e.g. qemu-efi) if pinning is not set. Since MaaS does not allow configuring repo priorities via its API, use Salt pillar data to re-define the Armband repo and set its prio. Change-Id: Ic743f4b684b3f13552792f5f04097fac73171b37 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-06-20[noha] Rectify opendaylight+dpdk scenarioMichael Polenchuk1-4/+4
Change-Id: Ie707de90617e7080a5eb87cad69a604cf5e0f9fc Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-06-19Enforce static configuration instead of DHCPAlexandru Avadanii12-56/+27
- 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-14Get back to salt 2016.11Michael Polenchuk1-4/+4
Change-Id: Id024ed22dd1760f41ae18aeb8e680c2f07a5dc63 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.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-06-07[ha] Update OpenStack version to QueensMichael Polenchuk4-4/+4
* make cluster names version-agnostic * switch to mirror.mirantis.com * system reclass update Change-Id: I96394b3c9d8d38321289af8e3a4e8bbc5dd7a408 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-06-07[noha] Update OpenStack version to QueensMichael Polenchuk6-11/+11
* make cluster names version-agnostic * pre-install oslo-templates formula * salt version update to 2017.7 * system reclass update Change-Id: I903895f6bcd98a1062e66e3f14d23ec04dc1b869 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-05-24Merge "[Horizon] Drop the obsolete Horizon workaround"Alexandru Avadanii2-22/+0
2018-05-24Merge "AArch64: Switch back to hwe-16.04 kernel"Alexandru Avadanii1-2/+1
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-23AArch64: Switch back to hwe-16.04 kernelAlexandru Avadanii1-2/+1
Align kernel versions across architectures (where possible). Change-Id: I66a822611eb5e46f90b62f5d36df571ae75dcba3 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@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-05-10AArch64: Switch to upstream Saltstack repoAlexandru Avadanii1-1/+3
To work around the missing dependency of 'python-tornado' on 'python-features' provided by the binary-specific DEB package in amd64 Saltstack repository, pre-install the req explicitly on FN (jumpserver) and VCP VMs via lib.sh. JIRA: ARMBAND-382 Change-Id: I2dbd08a58f6cf57c2c48c2d7fc8d19ad4872e800 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-05-08[virtual] Bring in OpenDaylight DPDK scenarioMichael Polenchuk1-0/+38
Change-Id: If77ac85fa86e0a1a18c0cc2abff77d876cdb9e93 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 Polenchuk3-16/+1
* 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[reclass] Parameterize tenant VLAN rangesAlexandru Avadanii1-1/+1
Instead of hardcoding the VLAN ranges in reclass, read them from IDF. This is required when VLAN segmentation is used instead of VXLAN, as lab switches should be configured appropiately (e.g. Armband PODs use VLANs 2000+ instead of 1000-1030). Change-Id: I009ccea9b328c40f055a745791eafe3393b96390 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.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 Polenchuk3-6/+2
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 Polenchuk3-2/+5
* 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>
2018-03-28[odl] Setup manager target after ovs host configMichael Polenchuk3-4/+4
Change-Id: Ia517b7cf1723a5afaf43cb0709716f3a67a29e9f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-03-23Apply opendaylight state after ovs host configMichael Polenchuk3-3/+13
* employ GA kernel for baremetal computes as well * setup/start opendaylight server after ovs host config Change-Id: Ic772aed544b17be02e6ca9ccd175f2288b2128a8 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-03-13[vcp] Catch 'no response' for salt stateAlexandru Avadanii1-1/+1
JIRA: FUEL-358 Change-Id: I8dc89676aa777068d1a13168bf7b7d7156903c03 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-12[virtual/odl] Apply missing neutron.compute stateMichael Polenchuk5-15/+1
Change-Id: I078e11219fb8dea4505c46e7f75c295c5a72c59b Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-03-11[IDF] Move ip-range start higher for mgmt, publicAlexandru Avadanii2-1/+3
- move mgmt start to .10; - move public start to .100; - sync local idf-pod1; JIRA: ARMBAND-365 Change-Id: I5d93c4f486daf280d8bdbe92f5aa7edd8d020db0 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-08Revert "[baremetal] Retire mas01 NAT"Alexandru Avadanii1-0/+1
Bring back public internet access to all cluster nodes via NAT on mas01 node, required for NTP syncing. NOTE: Both mcpcontrol and PXE/admin networks are currently hard wired to using /24 netmask, so we leverage that in pxe_nat.sls. JIRA: FUEL-348 This reverts commit 9a6e655e0b851ff6e449027c01ac1a66188b0064. Change-Id: I7bab385f95f8c6d92cadc4e2149c2cd56e10c506 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-07[IDF] net_config: Add support for custom ip-rangeAlexandru Avadanii1-0/+2
- submodule: bump Pharos to pick up installer adapter support, as well as IDF updates for Ericsson baremetal pod1; - labs/local/virtual: Bump mgmt, public networks start addresses from .1 to .10, similar to ericsson-pod1; While at it, drop patch now upstream and instead adopt the new param 'neutron:server:root_helper_daemon'. JIRA: FUEL-351 Change-Id: I9bc244a7fd8698861a390ed2b6a27804be46c285 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-07[novcp] Add deploy argument `-N` (experimental)Alexandru Avadanii10-109/+217
Instead of duplicating scenarios for NOVCP, allow it to be specified using a new deploy argument, `-N`. Things are getting convoluted, so instead of creating dedicated '*_pdf.yml.j2' files for each group of similar features, apply the templating in-place and rename all affected files to ".yml.j2". This breaks .gitignore assumption of hiding only "*_pdf.yml" files, so extend (manually) the <mcp/reclass/classes/cluster/.gitignore> with `git ls-files --exclude-standard -o` after an expansion. - ha: move nfv.cpu_pinning to j2, conditioned by 'baremetal'; - ha: add cmp00* vnode definitions (hugepages need more RAM); - labs/local: enable hugepage params for non-dpdk noha; - salt.sh: add route_wrapper to all non-infra VMs; This change extends novcp support to all HA scenarios. Change-Id: I7a80415ac33367ab227ececb4ffb1bc026546d36 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-07[vnode parsing] Move core logic to j2Alexandru Avadanii2-30/+24
j2/python is easier to read and manipulate strings, although it does need some special care about undefined dict keys. With this in place, deploy.sh only contains the higher level logic for the deployment process. - merge arch-specific default configuration files into a singular file with arch name as main dict key of old config (also avoids creating duplicate 'virtual' YAML keys in $LOCAL_PDF); - move template handling to separate <lib_template.sh>; - decouple tight bash ordering of scenario expansion -> parse_yaml -> variable export (e.g. CLUSTER_DOMAIN) -> re-use in cluster j2s; however we can't parse *all* j2s in one go, as scenario j2s might expand to YAMLs needed while expanding cluster j2; - split `do_templates` into separate functions for each stage, with no coupling between them other then call order; Change-Id: I4b5e804094c00e5e918caf769fd85fa52181ad76 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-07[ha] Add route_wrapper to prx, kvmAlexandru Avadanii2-1/+2
Similar to cmp, when route already exists, networking service fails to start on 'nginx:server' slaves ('kvm' in novcp case). JIRA: FUEL-349 Change-Id: I2dc83ea78528533e92c9b9125e78b6e4387bdfe2 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-06[ha] Add ovn scenario placeholderAlexandru Avadanii1-0/+26
- dummy copy of os-nosdn-nofeature-ha masquerading as os-ovn-nofeature-ha scenario placeholder; JIRA: FUEL-329 Change-Id: Ic5e6d65cf057289bb13ce2fa157b6ba53d7dab80 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-03-05Align opendaylight settings with upstreamMichael Polenchuk1-4/+0
Change-Id: If7d51555bc13dbcaa63f93ab1993f3655e2ce643 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-03-03[j2 parsing] Adopt new generate_config featuresAlexandru Avadanii1-1/+1
- bump Pharos git submodule for j2 'do' extension + batch mode; - adopt j2 'do' in our templates; - use int filter for 'native' vlan check; - lib.sh: adopt `-i` to remove `ln` hack for net_map.j2; - lib.sh: adopt `-b` to speedup template parsing; NOTE: Bumping Pharos will also bring in the latest changes in pod_config.yml.j2, which include massive IP shifts and updates. JIRA: FUEL-335 Change-Id: I7d3a997b3d8659d5f09f867870fb3a148c1ec6df Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-25[ovs/dpdk] Parameterize node-specific compute argsCristina Pauna1-0/+18
- node-specific parameters (nova pinning, hugepages, dpdk) should be configurable via IDF, on a per-node basis; - keep default settings for lf-pod2, with and without DPDK, override them for virtual deploys via local-virtual1 IDF; - leave neutron_tenant_* vars hardcoded for now, as they are required on both ctl and cmp nodes - this way we'll deal stricly with cmp params, so we can nicely pass them via config.yml to reclass per-node (and not per-role), allowing mixed computes later; - add compute params for ovs/odl-noha, preparing them for deployment on baremetal later. JIRA: ARMBAND-343 Change-Id: I89a58b9565679ab3882d85f07ae817690ae85c67 Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
2018-02-25[ovs/dpdk] Add opnfv.route_wrapper slsAlexandru Avadanii3-15/+5
- fix `route-br-ex` if-up.d script failing when route already exists by adding a wrapper around distro's '/sbin/route' binary in '/usr/local/sbin/route', exploiting default order in Ubuntu PATH; - fix 'br-prv' duplicate entry in 'interfaces.d/ifcfg-br-prv' and 'interfaces' caused by upstream bug [1]; - add barrier waiting for all baremetal nodes online before attempting reboot, trying to catch rare failures which are undetectable in logs as both a succesful reboot and a disconneted minion report 'n/c'; With the above in place, networking service should no longer fail to start on cmp nodes w/ DPDK. [1] https://github.com/saltstack/salt/issues/40262 Change-Id: I6d4895376ce323c14c997e6c9af2ea3eeeee0184 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-20Reset kernel version to xenial image default oneMichael Polenchuk1-1/+0
Virtual compute nodes goes to kernel panic during nova instances ops under hwe kernel, so use the default one from xenial image. Change-Id: Iae100b68208cc1fb9e43e45f385e762cdbd6573a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-02-19Merge "[Horizon] Fix 'mcp' version check pattern"Alexandru Avadanii1-1/+1
2018-02-18[Horizon] Fix 'mcp' version check patternAlexandru Avadanii1-1/+1
Previous commit used a pattern that is too generic and always matches the substring 'mcp' vs the node hostname, not only pkg version. Fixes: 4658acf Change-Id: Ia4dcbbf7cdfa68574c86459217101d83d61add01 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-17[MaaS] Add maas.machines.set_storage_layout slsAlexandru Avadanii1-0/+10
On cmp nodes, allocate only 30GB (fixed for now) for / partition. The rest of the disk(s) can later be allocated via salt-formula-linux. JIRA: FUEL-330 Change-Id: Ie11c78791e60801719cd33475ff91fc003df5ffa Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-17[MaaS] Override failed testing by defaultAlexandru Avadanii1-1/+8
Some nodes fail automatic testing done by MaaS during commissioning, although running the testing suites one more time manually works. For now, just override all 'failed testing' nodes unconditionally. JIRA: FUEL-333 Change-Id: I13d3ee3d82550524480aa53aa8752ab90aa940cd Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-16Set nova disk cachemodes to file directsyncMichael Polenchuk1-0/+1
Set nova/libvirt disk cache modes to file directsync to bypass the host page cache & prevent instance's kernel panic due to absent /dev partition. Caching mode directsync effectively turns all guest I/O operations into direct I/O operations on the host, which is the NFS client (virtuals) or GlusterFS (baremetals). Also return back to hwe kernel as a golden mean between GA & Edge ones. Change-Id: I51ab7d0ee71c214ff16b756cfee16e918738b6fd Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-02-15Fix check if node type is baremetal for novcpDelia Popescu1-4/+5
Fixes: 86c8109 Change-Id: I0a947bd7db5dd7cb830cc932f5a0d16831551923 Signed-off-by: Delia Popescu <delia.popescu@enea.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-02-15Mask opendaylight serviceMichael Polenchuk1-1/+4
In order to avoid using cache data with initial/outdated configuration, mask opendaylight service before package installation. JIRA: FUEL-344 Change-Id: I71eb0b0a5af93d6d21698e76587b32098aba96b4 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>