aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2018-09-19Merge "Update system reclass model"Alexandru Avadanii7-75/+26
2018-09-19Merge "Use common way to detect dpdk feature"Alexandru Avadanii6-9/+8
2018-09-19Merge "[cleanup] Move default storage dir to /var/lib"Michael Polenchuk3-5/+8
2018-09-19Update system reclass modelMichael Polenchuk7-75/+26
In order to get tacker definitions and latest changes. Change-Id: Ib5bf5034f140e708fb596dd4b622f0b2bdee8a59 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-19Use common way to detect dpdk featureMichael Polenchuk6-9/+8
Change-Id: I55a3c10f275079b11b7456b28a2c846cb33c204a Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-18Make docker isolation chain go firstMichael Polenchuk1-1/+5
Restart docker service to refresh FORWARD chain and insert docker related rules on top. Change-Id: I971840f5979636c4ea8ae4d66a82982c24aa5f66 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-18[nosdn-noha] Meet EPA testcases requirements - pt2Stamatis Katsaounis2-0/+11
JIRA: FUEL-385 After successfully merging patch https://gerrit.opnfv.org/gerrit/#/c/61417/ a user can deploy os-nosdn-nofeature-noha scenario with numa topologies on compute nodes. In order to be able to run the EPA testcases, there are still some requirements (see [1]): - Testcases expect compute nodes to have hugepages enabled - Testcases expect compute nodes to have cgroup-tools package installed - Testcases expect to have NUMATopologyFilter added to enabled_filters in /etc/nova/nova.conf of the controller node This patch tries to meet the above requirements. First, it installs the cgroup-tools package on compute nodes. Secondly, it overrides the default enabled_filters of openstack nova salt package by appending NUMATopologyFilter in the end (see [2], [3]). Reference links: [1] https://docs.google.com/document/d/1sT63M6fnurn4rgYTiUd8ILuXORtx0oHA8Qe-nPeCr2Y/edit [2] https://github.com/salt-formulas/salt-formula-nova/blob/master/README.rst#custom-scheduler-filters [3] https://github.com/salt-formulas/salt-formula-nova/blob/master/metadata/service/control/single.yml#L20 Change-Id: I24eb86c53574c80ceb33ecd1bfcb9ef2727d4263 Signed-off-by: Stamatis Katsaounis <mokats@intracom-telecom.com>
2018-09-14Bug fix : Increase NUMA nodes RAMDimitrios Markou1-4/+4
Each compute node has 16 GB of RAM but those GBs are splited wrongly to each NUMA node (4 GB instead of 8 GB). JIRA: FUEL-387 Change-Id: Ibe784727c8a262b41add04ad3a41c70f25ded684 Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com>
2018-09-13[ha] Get OVS 2.9 & DPDK 17.11 from UCA repoMichael Polenchuk3-8/+1
* 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-12[docker] Relax verify check for docker pullAlexandru Avadanii2-2/+3
JIRA: FUEL-383 Change-Id: I9203aa8d20def5b78d261f8c6847ddc576f0feb7 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-12Merge "[docs] Update documentation on scenarios for MS6"Alexandru Avadanii13-14/+246
2018-09-12Merge "[cleanup] FN VMs: Fold user-data templates"Alexandru Avadanii8-33/+11
2018-09-12[docs] Update documentation on scenarios for MS6Cristina Pauna13-14/+246
Added/updated the scenario files for the scenarios we support in Gambia Change-Id: Ib463e3122999e0cf554599fb8637c20cf77b825d Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
2018-09-11[cleanup] Move default storage dir to /var/libAlexandru Avadanii3-5/+8
Since we switched to dockerized Salt master and mounting the full contents of the current git repo inside cfg01's /root/fuel dir, exposing temporary deploy artifacts should be avoided, i.e. the default temporary storage location (configurable via '-S' deploy arg) should be moved outside the git repo. JIRA: FUEL-383 Change-Id: I32f7197b018fd853867de42f5618650ac9022dc9 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-11[cleanup] FN VMs: Fold user-data templatesAlexandru Avadanii8-33/+11
While at it, retire obsolete MAAS_IP global variable and let mas01 VM get a DHCP address from virsh-managed mcpcontrol network. Change-Id: Ifd85dbcab10894a5d0d675d37f0c35f09776d9b4 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-11Update OpenDaylight version to FluorineMichael Polenchuk1-3/+3
Change-Id: Ie8ec7c94b2831dce88bde39c7fe219faaad21c5e Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-10Merge "[nosdn-noha] Meet EPA testcases requirements (NUMA)"Alexandru Avadanii5-8/+92
2018-09-10Merge "[submodule] Bump Pharos for maas:machines sync"Alexandru Avadanii4-35/+8
2018-09-10[nosdn-noha] Meet EPA testcases requirements (NUMA)Dimitrios Markou5-8/+92
Install in a local directory a newer version of virt-manager to workaround obsolete Ubuntu versions lacking --cpu cellN.* support. This change only affects CPU cfg of virtual compute nodes in nosdn-nofeature-noha scenarios with: - set default cpu_topology to dual socket (2 cores, 2 sockets, 2 threads); - bump default RAM to 16GB; - define 2 NUMA cells, each with half the resources; To keep the old behavior available (single socket), a new deploy argument has been added (`-m`). The RAM change is not configurable via deploy args. NOTE: The CPU topology for virtual nodes should later be read from PDF instead of hardcoding it on a per-scenario basis in the installer. NOTE: Default 'ram' unit is MiB, while cellN.memory default unit is 'KiB'. JIRA: FUEL-385 Change-Id: I7ca268b0a2052524cb7187a5cf9b6fa8a382c9f9 Signed-off-by: Dimitrios Markou <mardim@intracom-telecom.com> Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-10[docker] Add MCP_DOCKER_TAG env varAlexandru Avadanii4-4/+7
Allow skipping docker pull for verify jobs by setting the new env var to 'verify'. JIRA: FUEL-383 Change-Id: If8e2f66b5ccdac5c3911eeabfc2ba9c0eba61093 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-09[ovn-ha] ctl: neutron: Add msg cluster pillarAlexandru Avadanii1-0/+9
`system.neutron.control.cluster`, unlike `system.neutron.control.openvswitch.cluster` does not provide neutron:server:message_queue:members pillar data, letting it default to the wrong values (single rabbit instance on the same node). This led to neutron.conf on ctl nodes using: `transport_url=rabbit://openstack:***@172.16.10.35:5672//openstack` instead of `transport_url=rabbit://openstack:***@172.16.10.28:5672,...//openstack` Change-Id: Iad4b709d555b2bafafeb75fdecb831f7d4f5a504 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-07Merge "Update docs to new format"Alexandru Avadanii7-0/+61
2018-09-07[odl] Create parent directories for dhcp configMichael Polenchuk1-1/+5
Change-Id: I7d16bcd42a059817d7a4e6b06490e03001354f4f Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-07Merge "[opendaylight] Support built-in DHCP service"Michael Polenchuk3-5/+34
2018-09-06[submodule] Bump Pharos for maas:machines syncAlexandru Avadanii4-35/+8
Drop duplicate maas:machines definitions which could cause conflicts in rare corner cases. Slightly refactor j2 template expansion to make `conf.virtual.nodes` available during first stage. Change-Id: I04d56e346b12c6eb97da5c0c0ab1e3446e5fc1b8 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.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-06Update docs to new formatCristina Pauna7-0/+61
Change-Id: I023b7f47245691fe7377e53ca0bda15098c2978a Signed-off-by: Cristina Pauna <cristina.pauna@enea.com>
2018-09-05Merge "[ha] Fix ovn-ha scenario"Guillermo Herrero1-0/+2
2018-09-05[ha] Fix ovn-ha scenarioGuillermo Herrero1-0/+2
openstack/control.yml -redefine database host ip inherited from system.neutron.control.cluster Change-Id: Ic8e61c61c7ebb17f31e0c53f8d9e3a013f8a3e9e Signed-off-by: Guillermo Herrero <guillermo.herrero@enea.com>
2018-09-05[opendaylight] Support built-in DHCP serviceMichael Polenchuk3-5/+34
Change-Id: I448aa7f076e2c2d641a5326947852b3333728460 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-09-05Merge "[noha] Set MTU on tenant/private dpdk interface"Michael Polenchuk5-3/+6
2018-09-04Merge "[scenario] Factor out common nodes, states"Alexandru Avadanii14-127/+22
2018-09-04[noha] Set MTU on tenant/private dpdk interfaceMichael Polenchuk5-3/+6
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-03Merge "[docker] Fix untagged mgmt by default"Alexandru Avadanii1-0/+4
2018-09-03[odl/dpdk] Make dedicated public network schemeMichael Polenchuk2-4/+28
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-02[docker] Fix untagged mgmt by defaultAlexandru Avadanii1-0/+4
JIRA: FUEL-383 Change-Id: Ie635965cff3538d6e786f2b76fa4d175d1be1773 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-02[scenario] Factor out common nodes, statesAlexandru Avadanii14-127/+22
Make the bulk of scenario files static again by shifting out all common virtual nodes (mas01) and states (virtual_init, maas etc.) to default.yaml(.j2). This allows us to parse scenario-specific data during first j2 expansion, preparing for the new Pharos installer adapter that relies on `conf.virtual.nodes.control` length to construct the proper list of MaaS node definitions (kvm{01,02,03} vs {ctl01,gtw01}). Change-Id: I666ab5bd6bb2a42f98646af51950f6b9fffa0e8b Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-09-01[docker] Cleanup, minor fixes, formula bumpAlexandru Avadanii12-183/+57
* 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-31[docker] Cleanup hosts file on redeployAlexandru Avadanii1-1/+1
JIRA: FUEL-383 Change-Id: Ib01e78951403fbec2e0f588ae5a577bcbad1bd75 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-31[docker] Use distro docker-compose if not brokenAlexandru Avadanii1-9/+14
While at it, use explicit `docker-compose pull` call to maintain backwards compatibility with older docker-compose (1.8.0 on aarch64). JIRA: FUEL-383 Change-Id: I0f6ac4fb59c0a286ac99a1a0dc4484d00f3837fe Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-31[noha] Align MTU settingsMichael Polenchuk6-5/+20
* shift MTU from public bridge to physical interface * add neutron related settings Change-Id: Ia57d1ca7976968d6e7ee23f58a0abae1a1a256c0 Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
2018-08-30[AArch64] salt.control.virt supportAlexandru Avadanii5-14/+193
Salt relies on a limiting libvirt_domain j2 template to generate the XML it passes to libvirt for salt.control managed virtual machines. For AArch64, we need to set up 3 XML nodes in a non-default way: 1. UEFI firmware (AAVMF) should be enabled by passing a pflash loader; 2. CPU mode should be 'host-passthrough'; 3. QEMU machine type should be 'virt'; To allow configuring the above using pillar data: - virtng module: implement functionality similar to upstream changes: * 219b84a512 virt module: Allow NVRAM unlinking on DOM undefine in develop, not in 2018.2; * 9cace9adb9 Add support to virt for libvirt loader in develop, not in 2018.2; - virtng module: extend it with: * pass virt machine type to vm; * pass cpu_mode to vm; JIRA: ARMBAND-404 Change-Id: Ib2123e7170991b3dfbdb42bd1a2baa5a4360b200 Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-30[AArch64] Align armband repo name with MaaS nodesAlexandru Avadanii1-1/+1
curtin generates armband_3.list, which we aligned in the reclass model before, but not in the defaults yml used by cfg01/VCP VMs. Change-Id: Ibe8d5b79465b508e41c20ec08a98a96a1510da8d Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-29Add noifupdown for all br-floatingAlexandru Avadanii5-2/+6
Since we reboot all nodes, applying the network configuration via Salt before reboot is pointless and creates a race condition with OVS. While at it, add `--ignore-errors` to ifup call for OVS bridge to prevent a race condition during linux.network state apply. Change-Id: I22fe0afaffecd7b850a6b77d7b810ed296bfc9ca Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-29[salt-formulas] Add & enable armband formulaGuillermo Herrero10-2/+107
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[deploy.sh] Cleanup deploy arguments, rework -ffAlexandru Avadanii1-15/+13
* refactor & extend `-f` deploy argument; * retire INFRA_CREATION_ONLY env var, duplicated by NO_DEPLOY_ENVIRONMENT; * `-F` and `-e` deploy arguments are now equivalent; JIRA: FUEL-383 Change-Id: Ifc1527fa1e7d7486d1b7600772e2c5de34b1e52c Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-29[submodule] Cleanup: Retire scripts sub & patchesAlexandru Avadanii3-72/+0
Salt bootstrap scripts are no longer used directly, so it is now safe to retire the whole git submodule and its related patches. JIRA: FUEL-383 Change-Id: I1fbdfe4fbd4930bfb3c999a3a68033d12565682b Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
2018-08-29[docker] Switch to containerized Salt MasterAlexandru Avadanii47-369/+277
* 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-29[docker] Add docker-compose definitionsAlexandru Avadanii5-2/+147
Add configuration items for bringing up the Salt master Docker container using docker-compose: - mount <storage dir>/hosts as /etc/hosts - mount <storage dir>/salt as /etc/salt: * semi-persistent generated Salt information; - mount <storage dir>/nodes as /srv/salt/reclass/nodes: * semi-persistent generated reclass node data storage; - mount Fuel@OPNFV git repo in /root/fuel; - mount all other previously rsynced artifacts; - hook container to 3 networks/bridges: mcpcontrol, PXE/admin and management: * container IP addresses are managed by Docker, so no DHCP is used; - override upstream entrypoint.sh by mounting our own version on top; * run-time patch Salt to fix certain init system interactions due to 'Tini' looking like Upstart but behaving a bit differently; * work around directory traversal issues in Salt/reclass by using extensive `cp` (to be later mitigated at container build time); * overwrite reclass.system with our own version (patched), later to fetched pre-patched during container build; * overwrite salt-formulas with our patched versions; * create missing links for salt-formulas-* packages (e.g. gnocchi) which are not available as git repos upstream; - add mcp.rsa.pub to 'ubuntu' user's authorized_keys for SSH login to master node to remain backwards compatible; - mount configuration files for semi-persistent state preservation at container destroy/rebuild (using '-f' deploy argument); JIRA: FUEL-383 Change-Id: Ie17e578a7ebeb071b1c0e0a49ad58ffa6bbc89bb Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>