Age | Commit message (Collapse) | Author | Files | Lines |
|
We currently do not configure linux:network:resolv:dns via reclass
pillar data, so we don't actually enforce the public DNS set in
the IDF file, but instead leave it to the OS to figure it out, which
most of the time works fine, but it's not completely reliable.
Change that behavior to instead enforce it via linux.network.resolv
state across all cluster nodes.
Change-Id: I4f82315a473fcbdc8573380cfcac1e30b44c3dd4
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit 4deaa15d1e8a9e0e7e0bfb26d4cf3c1b2450c1a1)
|
|
Some PODs (e.g. ericsson-virtual*) use more than 5000 x 2M hugepages,
together with 3G+ per-socket dpdk memory. Adjust our FDIO scenario
definitions to accomodate such configurations without triggering the
OOM.
Change-Id: Ibce2316f158bde98ad8e54f3eec75a827982d417
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
(cherry picked from commit d1bc3bc3ce5460dcde97554780a3706fd510fe87)
|
|
|
|
|
|
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>
(cherry picked from commit f03bfd30206c1d21de7e5c9ef2f6ed79f6ee13f4)
|
|
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>
(cherry picked from commit 5527711008fdd6cb2558f18d901c40efbc5d522b)
|
|
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>
(cherry picked from commit d2573b60c9daf2c3b6434112d98b733388824b4f)
|
|
|
|
|
|
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>
(cherry picked from commit 73656638216987cc4e9c75468182f16b82cce5d1)
|
|
- 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>
(cherry picked from commit af1a4adfcc75b1dae16aee766679fcd224158d00)
|
|
- 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>
(cherry picked from commit 6203ecc1513994063a5f7916999657f528a37385)
|
|
Change-Id: Id6754dec226e75b9ee1e8c19ac04531b9f277e0f
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: If3f8cb6bfeedeb766a050d5a271b21c90bb3ba1c
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
When using Docker CE 19.x, `hostname -d` fails to properly resolve
the domainname due to changes in the way Docker sets it inside the
container.
Work around this issue by aligning the contents of `/etc/hostname`
with `/etc/hosts`, so `hostname -d` can properly determine the
domain name. This also requires calling `hostname -b` via cfg01
entrypoint.sh.
Change-Id: I697b5d9882e3d6641712a00bca10012800ee1898
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
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>
|
|
Change-Id: I5c7a1e827446189b98b924ffd4272acf1a794697
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
With DPDK 18.11 the vhost owner/perm options have to be removed
since libvirt creates the server side of the socket and OVS
connects to it using DPDK as a client.
Change-Id: Ic33de66dcc0830cd31fc54880c524f850e2c4ea1
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
|
|
With newer Ubuntu distros using netplan and systemd-resolve, we
can't rely on /etc/resolv.conf found on the Jumphost being usable
inside the guest VMs, so explicitly use the public network DNS
servers configured in PDF/IDF.
This will enable support for Jumpserver operating systems like Ubuntu
18.04.
Change-Id: I0c7e02d5c1b822f809ce818e739c19d0344f39f5
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
|
|
|
|
While at it, fix CentOS selinux preconfiguration on x86_64, which
was previously limited (incorrectly) to AArch64.
Change-Id: I2d6604d3eea2bfc11fdd5dd3aeb4e2c0c3ede4a2
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: I6cbbceb9b4a88f527d8dd800b0650f31a3dc1364
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
Change-Id: Ib2b1525957929c39e4b602ad1b7f4fbfd16a375c
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
|
|
Certain validation testing suites require the SSH RSA private key to
to be available on the K8s master node.
Change-Id: Ib496ac6b33642d86bfd0e0f72ee847a2f31ea952
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Change-Id: I06577fa93e895a7c5940dac41b4f9c24b455f455
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
Change-Id: I9c1e97144ffd46040d32a0edf8253fc393b73c89
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
The `apt` key has been renamed to `repo` in a previous change, but
we missed renaming some occurences in defaults.yml.j2 for AArch64.
Change-Id: Icf930371e9bc5253ea27e053933e1c012361f66e
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
All cloud images except Ubuntu Xenial (CentOS 7, Ubuntu 18.04) already
have enough free space on the predefined partitions, so skip the resize
to avoid dealing with the newer e2fsprogs required by Ubuntu 18.04.
Change-Id: I184590e631c76910e7c3169dc7bee3c5902ebaf1
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
Support Ubuntu 18.04 for virtual deployments (and implicitly for VCP
VMs). Note that MaaS-provisioned systems will require the same
changes being applied via curtin templates.
Change-Id: I7cbd7e7c4421f6b970ce6ef97c10d269fec5fca3
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
- 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>
|
|
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>
|
|
|
|
|
|
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>
|
|
|
|
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>
|
|
|
|
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>
|
|
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>
|
|
When multiple installers are used on the same jumpserver, it is
useful to have the ability of automatic cleanup after a previous
deploy.
Change-Id: Ib3249f53ee9d6b1ba2409dd71bd13480536faedc
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
When redeploying a cluster only (keeping the infrastructure containers
from a previous deploy), some things need to be adjusted:
- /entrypoint.sh exec permission;
- /etc/maas uid/gid re-align on new (fresh) deploy;
- account for different location of /usr/sbin/tcpdump apparmor profile
for CentOS jumpservers;
Change-Id: If51db0bc95eff1a497e1df5d457e26a7b902aa5a
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
|
|
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>
|
|
|
|
|
|
The per port model potentially requires an increase in memory
resource requirements (which is limited by labs) to support the
same number of ports and configuration as the shared port model.
Set linux:network:openvswitch:per_port_memory explicitly to true
to enable per port mempools support for DPDK devices.
Change-Id: I130885afc50e7a047f8835113d370840827ad718
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
Change-Id: Id49f26a2615e2fc06e94eeaf2e9200e83625e6c9
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|
|
Deploy the OpenStack API services based on roles to
prevent issues with absent database tables since db_sync
runs only on the nodes with primary role.
Change-Id: I04cf3ce0dd59afd93b8a0dfcf060fbd7e7411c82
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
|