setuptools 40.7.0 does not work with python-ldap 2.5.2
Added unit tests to verify the code calling the python-ldap
functions.
Closes-Bug: 1813668
Change-Id: I1e5c0bb7ec603d4d2e03032282e268cb2189775d
Signed-off-by: Al Bailey <Al.Bailey@windriver.com>
In some labs, the puppet manifest application during
config_controller results in the ::platform::network class
being applied after the ::platform::dns class. This causes the
/etc/resolv.conf file to be wiped (when the
apply_network_config.sh is run by the ::platform::network
class).
The fix is to introduce a dependency to ensure that the
networking config is completed before the dns config is done.
Change-Id: Ie4a8b67e5eb3594f5c21e22f8014d2b8162a0758
Related-bug: 1812449
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
Remove the automated creation of storage host aggregates and host
population in sysinv.
Story: 2004607
Task: 28505
Change-Id: I71a962297d5cdef9f27a3008a43321e577b6d954
Signed-off-by: Jack Ding <jack.ding@windriver.com>
This change broke the installation of kubernetes system (config_controller --kubernetes) when no docker proxy was specified.
This reverts commit e4086a073b.
Change-Id: I8343741a50fa0857fde9dfe0ee8f81de80a0ff13
In kubernetes deployments, a DNS server is required to locate
the registry servers used to download the kubernetes images.
Currently, when config_controller is run, the 8.8.8.8
nameserver is used, with no way to change it. Some users
need to specify their own name server to be used during
the execution of config_controller.
This change allows the user to specify up to three DNS
servers when running config_controller interactively or with
a config file. If using a config file, add the following
section to the config file (only one nameserver is required,
but up to three are allowed):
[DNS]
NAMESERVER_1=8.8.8.8
NAMESERVER_2=8.8.4.4
NAMESERVER_3=9.9.9.9
Change-Id: I59556138a11c6f627f45886a2da6b8a1ad9d89e1
Closes-bug: 1812449
Signed-off-by: Bart Wensley <barton.wensley@windriver.com>
Rework neutron system host management to operate on agent states
rather than an extended host entity, as it was agreed with the
neutron team that a new host level entity was not desired in the
neutron core.
This commit modifies the neutron override values to accommodate
the above.
Story: 2003857
Task: 26669
Depends-On: I441fcf3c186f68d17abafe337af71d0caf9c40da
Change-Id: I85943d5b6f421f4ef379694f21ad2d758bb5f38a
Signed-off-by: Kevin Smith <kevin.smith@windriver.com>
Commit to fix bug #1790159 causes retry handler to fail
because of mismatched function arguments. Remove 'self'
from retry handler and fix error message formatting.
Change-Id: Iedeb41451acd0f32b944b49d45f0c4b30a79ebc2
Closes-Bug: #1805678
On the worker and storage nodes, the mgmt interface should be
set to dhcp and the cluster host alias should be set to use static IP.
With mgmt and cluster host interface sharing the same interface,
the mgmt alias interface was incorrectly set to static instead of
dhcp which causes the default route to be removed during host unlock.
This commit is to set the address method of the alias interfaces
correctly.
Story: 2004273
Task: 27826
Change-Id: I6deee76a5ea25e7753bf0f53c499922bc5d66ec6
Signed-off-by: Teresa Ho <teresa.ho@windriver.com>
Current config_controller for containerization pulls kubernetes
images from public container registry. This requires controller
to access internet. If a host network is behind a proxy, there
is no chance to setup docker proxy configuration during config_
controller, therefore, kubernetes images are not accessible.
Docker proxy configuration questions were added to require users
input http/https proxy and no proxy settings. The docker proxy
configurations are added to service_parameter table in sysinv.
http-proxy.conf is the proxy info file required by docker daemon,
generated by docker puppet manifest. It consists of the user
input docker proxy configuration.
Tests:
AIO-SX: public k8s images accessible
AIO-DX: public k8s images accessible
AIO-SX without k8s config: config_controller successfully
Story: 2004710
Task: 28741
Change-Id: I9d301d105f9fe5e388a29dee03957514b9b44fa7
Signed-off-by: Mingyuan Qi <mingyuan.qi@intel.com>
Adds generation of public and private rsa ssh keys in nova overrides.
These will be used by nova helm charts (see dependent commit) to fill
appropriate files in all nova-compute pods in cluster. ssh keys are
stored in sysinv db to maintain consistency.
Also need to provide subnet used for ssh which will be cluster host
network per recent commit (If6b918665131f01bc62687fbdc7978c5c103e3b7).
Story: 2003909
Task: 28925
Depends-On: Id789ba051cec019e8b7564c713cf1b5296ecf9f6
Change-Id: I13aa90b1204e698846d4402048b3ca7f544da551
Signed-off-by: Gerry Kopec <gerry.kopec@windriver.com>
add args choice 'True' and 'False' for https_enabled and sdn_enabled
in 'system modify' and for dynamic in 'system network-add' command
to support input 'True' and 'False'.
make https_enabled and sdn_enabled to lower case in sys-api controller
Closes-bug: 1812268
Change-Id: If6411852edfc970ee1d749e4d4ccb8d045767bbc
Signed-off-by: sunausti <sunausti@starlingx.com>
Introduce the DataNetwork api, client, model to allow modelling of the
physical data network, with the following attributes:
datanetwork_name
mtu
datanetwork_type (flat, vlan, vxlan)
VxLAN specific attributes
- port_number
- multicast_group
- ttl
- mode ('dynamic' default, or 'static')
The system data network may then be assigned to interface.
This is part of the Story to "Move neutron provider network modelling
to system configuration".
The interface api is currently made compatible with current usage to
allow specifying datanetwork (formerly providernetwork).
The following new CLI commands and corresponding api are exposed:
datanetwork-add Add a datanetwork.
datanetwork-delete Delete a datanetwork.
datanetwork-list List datanetworks.
datanetwork-modify Modify a datanetwork.
datanetwork-show Show datanetwork details.
interface-datanetwork-assign
Assign a datanetwork to an interface.
interface-datanetwork-list
List datanetwork interfaces.
interface-datanetwork-remove
Remove an assigned datanetwork from an interface.
interface-datanetwork-show
Show interface datanetwork details.
'system datanetwork-add' must be run where
'neutron providernetwork-create'.
Tests Performed:
AIO Sanity
Sanity 2-controller, 2-compute
Sanity Storage lab
Interface Profile create and apply
Containers deployment
Change-Id: I630f90768647dbb414a60978bf8f8f641496afd5
Story: 2004455
Task: 28324
Signed-off-by: John Kung <john.kung@windriver.com>
- Allow the use of --reuse-values option in helm-override-update
when there is no user overrides to be consistent with Helm.
- Provide suggestion for correct usage of --set option.
Tests done:
The following commands were used to verify the changes:
system helm-override-update neutron openstack \
--reuse-values --values /home/wrsroot/vlans.yaml
system helm-override-delete neutron openstack
system helm-override-update neutron openstack \
--set conf.plugins.ml2_conf.ml2_type_vlan.network_vlan_ranges=\
"physnet0:10:11,physnet0:1050:1099,physnet1:1100:1124"
Story: 2004520
Task: 29035
Change-Id: Ic5d45f8e7e5e5df4b88468be2f7126c681a6e9cd
Signed-off-by: Tee Ngo <Tee.Ngo@windriver.com>
Currently, a DPDK enabled vswitch makes use of a fixed 1G hugepage to
enable an optimized datapath.
In the case of OVS-DPDK, this can cause an issue when changing the
MTU of one or more interfaces, as a separate mempool is allocated
for each size. If the minimal mempool size(s) cannot fit into the
1G page, DPDK memory initialization will fail.
This commit allows an operator to configure the amount of hugepage
memory allocated to each socket on a host, which can enable
jumboframe support for OVS-DPDK.
The system memory command has been modified to accept vswitch
hugepage configuration via the function flag. ie:
system host-memory-modify -f vswitch -1G 4 <worker_name> <node>
Story: 2004472
Task: 28162
Change-Id: Ie58d1b8317b4eb3c498524db6bd53ffff3bf1a39
Signed-off-by: Steven Webster <steven.webster@windriver.com>
registry"
The local docker registry authentication commit
https://review.openstack.org/#/c/626355/ is blocked to merge as
kubernetes is not passing credentials when pulling images from
local docker registry. The solution hasn't been decided yet,
one optional solution could be to make images pull wide open
(no authentication for pulling). Revert this commit as it fails
to pull images for custom apps. Will add the authentication back
after a proper solution decided for the local docker registry
authentication feature.
This reverts commit 6946ea845a.
Change-Id: I7e402421b3e8a88644c949a9ec57cbb091750e1e
During controller filesystem resizing, the drbd filesystem sizes are
not rounded correctly. This causes the resizing procedure to stuck.
Change-Id: Ie105714db8fd98e90c82e5c1ec72b1a1d75b8604
Closes-Bug: 1812682
Signed-off-by: Wei Zhou <wei.zhou@windriver.com>
When cgts-client builds, if the mock env does not have pbr
it will attempt to download it, which fails due to lack of
networking.
This fix properly adds the missing build requirement for pbr
Story: 2004515
Task: 28997
Change-Id: I758161526d11411654d5d404a2d0a95425e7117a
Signed-off-by: Al Bailey <Al.Bailey@windriver.com>
In order to enable Openstack's helm charts on StarlingX we need a
distributed persistent storage for Kubernetes that leverages our
existing storage configurations. For this stage we will enable CEPH's
RBD to work with Kubernetes RBD provisioner through a new Helm chart.
Since RBD will be the persistent storage solution, CEPH support has to
be extended to the 1, 2 node and Standard configurations.
This commit adds multiple semantic checks to make sure that Ceph on
a standard deployment works as expected.
Change-Id: I31786fa78e8c926a57077bb0a25f1e4cbf543cab
Co-Authored-By: Stefan Dinescu <stefan.dinescu@windriver.com>
Implements: containerization-2002844-CEPH-persistent-storage-backend-for-Kubernetes
Story: 2002844
Task: 28723
Depends-On: https://review.openstack.org/629512
Signed-off-by: Ovidiu Poncea <Ovidiu.Poncea@windriver.com>
This will simplify changes to the crushmap as we can keep
them as text in git.
Change-Id: I8957f27a7880fe1a7ee2f8102eb507fb9e950a6e
Story: 2002844
Task: 28723
Depends-On: https://review.openstack.org/629511
Signed-off-by: Ovidiu Poncea <Ovidiu.Poncea@windriver.com>
The functionality of local docker registry authentication is implemented
in commit https://review.openstack.org/#/c/626355/.
However, local docker registry is currently used to pull/push images
during application apply without authentication. This commit passes
user credentials when pulling/pushing images from docker registry,
otherwise application apply will fail after the above docker registry
authentication commit merged.
Change-Id: Ifd43631e6fb685aed45fd2ad90d74ef3658bdb99
Story: 2002840
Task: 28945
Signed-off-by: Angie Wang <angie.wang@windriver.com>
If the cluster host network is not specified in the config file
for config_controller, the cluster host parameters are set to the
defaults.
Story: 2004273
Task: 27826
Change-Id: I20f22dc38a55312485e1d2b9c0e728d927b804c6
Signed-off-by: Teresa Ho <teresa.ho@windriver.com>
This commit ensures that if resizing a drbd filesystem is not successful
the filesystem state will stay in "drbd_fs_resizing_in_progress" state
and the "controller configuration is out-of-date" alarm won't be cleared.
Change-Id: I9a655c4a97836b921b63f10fc425eebfbb5af17a
Closes-Bug: 1812235
Signed-off-by: Wei Zhou <wei.zhou@windriver.com>
The cluster-host floating IP is managed by SM.
This commit reuses the existing cinder-ip service to monitor the
cluster-host floating IP address for the kubernetes config.
This is a temporary change until a cluster-host-ip resource
is added to SM.
Story: 2004273
Task: 28962
Change-Id: Ibff1766e6115b946cba6f8f1289463ceb866d135
Signed-off-by: Teresa Ho <teresa.ho@windriver.com>
In order to enable Openstack's helm charts on StarlingX we need a
distributed persistent storage for Kubernetes that leverages our
existing storage configurations. For this stage we will enable CEPH's
RBD to work with Kubernetes RBD provisioner through a new Helm chart.
Since RBD will be the persistent storage solution, CEPH support has to
be extended to the 1, 2 node and Standard configurations.
This commit enables CEPH on a standard configuration without dedicated
storage by allowing users to add the 3rd Ceph monitor to a worker node.
It implements the puppet functional part that enables ceph to work on
a standard deployment.
Details:
* Update ceph.conf with the new monitor by removing unused ones
* Reserve space on any worker for ceph-mon-lv, this will make sure
that user is able to configure a ceph-mon at any time without the
need to extend platform-vg.
* In System Inventory make sure the correct IP addresses are
passed to the puppet yaml's.
Change-Id: I7b8a01a7f2cf18f20e3509c2416f038580b4a071
Implements: containerization-2002844-CEPH-persistent-storage-backend-for-Kubernetes
Story: 2002844
Task: 28723
Depends-On: https://review.openstack.org/629166/
Signed-off-by: Ovidiu Poncea <Ovidiu.Poncea@windriver.com>