285 Commits

Author SHA1 Message Date
Zuul
000485bf97 Merge "Fix network policy job" 2020-03-17 15:34:09 +00:00
Tin Lam
f1bdcc3251 Fix network policy job
This patch set addresses an issue with the placement component of nova
breaking the network policy job.

Also, make the network policy jobs voting to ensure things do not break.

Change-Id: I41dfa6a335a915dbaf08114c2e14e906c76e85ba
Signed-off-by: Tin Lam <tin@irrational.io>
2020-03-16 16:05:06 +00:00
Huang, Sophie (sh879n)
8a7b7ba086 Enable Cinder backends to use iSCSI for data traffic
In this patchset, the iSCSI protocol support is added
to enable Cinder to use iSCSI based storage backends.

Bootable volumes are not supported, only VM attached
volumes are supported for this initial patchset.

Change-Id: I1b35290b62d2cebae4bd8be62126a53f230ac6c0
2020-03-16 14:23:23 +00:00
Zuul
3c093d2dea Merge "Revert "Modify files related to overrides."" 2020-03-13 22:41:15 +00:00
Pete Birley
728b3739cf Revert "Modify files related to overrides."
This reverts commit 0389b54578dc9efb670fcacb1097daf008d7cdcc.

Change-Id: I91f2c87f51978fe0a35143757c19fe789f7e0669
see: https://review.opendev.org/#/c/712959/1
2020-03-13 14:08:31 +00:00
dt241s@att.com
ef1f5ec153 Enable Apparmor to Nova components
Change-Id: Icefa9c91899110d7560dae7e73f9dd932e88e3fa
2020-03-10 02:24:58 +00:00
KAVVA, JAGAN MOHAN REDDY (jk330k)
394fdb3b9f Enable Docker default AppArmor profile to nova-placement-api
This adds default Apparmor profile to nova-placement-api.

Change-Id: I075c4639c692eafbc4cdd692420e9cbfac0285fd
2020-03-07 00:16:25 +00:00
songgongjun
0389b54578 Modify files related to overrides.
As the functions of overrides are upgraded,the
files that depend on the functions of overrides
need to be modified synchronously.This patch and
https://review.opendev.org/#/c/707788/ depend on
each other.

Story: 2007291
Task: 38753
Depends-on: https://review.opendev.org/#/c/707788/
Change-Id: I048c8fe73f8f85df465f2c829812b75be1e4f130
Signed-off-by: songgongjun <gongjun.song@intel.com>
2020-03-03 20:06:45 +08:00
Tin Lam
2aa32665b4 Add train release support
This patch set adds in job to test the OpenStack train releases.

Depends-On: https://review.opendev.org/#/c/706456/
Change-Id: I89fef1264f68dab7e921a9e5503c29d6a051f342
Signed-off-by: Tin Lam <tin@irrational.io>
2020-02-28 20:19:58 +00:00
Zuul
a5ffce4327 Merge "Add placement chart" 2020-02-28 20:14:30 +00:00
Gage Hugo
f9dbba7043 Revert "Revert "Keystone Authtoken Cache: allow universal secret key to be set""
This reverts commit 90d070390db08abf9da42a2bac54397112bbcd48.

Change-Id: I017c6e9676b872e1aab21f9dc8aa2f93db58d49f
2020-02-21 11:16:55 -06:00
zhipengl
4925e1c47e Add placement chart
This commit adds a helm chart to deploy placement.

Related test pass on simplex and multi-node setup

Story: 2005799
Task: 33532

Depends-On: https://review.opendev.org/#/c/672678/

Change-Id: Ife908628c6379d2d39d15f72073da3018cc26950
Signed-off-by: zhipengl <zhipengs.liu@intel.com>
Co-Authored-By: Jean-Philippe Evrard <jean-philippe@evrard.me>
2020-02-20 08:27:51 +00:00
Sangeet Gupta
414b10fab0 Fix health-probe concurrency and timings
Changed Nova and Neutron health-probe script to exit if previous
probe process is still running.
The health-probe has RPC call timeout of 60 seconds and has 2
retries. In worst case scenario the probe process can run a little
over 180 seconds. Changing the periodSeconds so that probe starts
after previous one is complete. Also changing timeoutSeconds value
a little to give little more extra time for the probe to finish.
Increasing the liveness probe periods as they are not do critical
which will reduce the resource usage for the probes.

Co-authored-by: Randeep Jalli <rj2083@att.com>

Change-Id: Ife1c381d663c1e271a5099bdc6d0dfefb00d8d73
2020-02-18 17:24:23 +00:00
Vasyl Saienko
90d070390d Revert "Keystone Authtoken Cache: allow universal secret key to be set"
This reverts commit 1c85fdc390e05eb578874e77fad9d4ec942da791.

Do not use randomly generated strings in configmaps as this leads to
whole helm release redeployment even no values are changed. The random
items have to be generated outside of helm chart and provided via
values.
Also previous behaviour didn't allow to use cache during rolling upgrade
as new pods were spawned with new key.

Change-Id: I423611b18fca0d65e2e721a9c6a0c3d8df0813d2
2020-02-12 11:18:06 +00:00
Zuul
a7fcc03112 Merge "Move apparmor to use feature gates" 2020-02-04 17:31:04 +00:00
Gage Hugo
a1fc694ae9 Move apparmor to use feature gates
This change refactors the apparmor job to utilize the feature
gates system instead of relying on separate scripts.

Also disabled barbican running in the apparmor job temporarily
until the correct profile gets used and it can deploy
succesfully.

Change-Id: Iadacd214de3fdb06e4acde4433c5fa86973371d5
2020-01-31 22:24:55 +00:00
Oleksii Grudev
d467d685a3 Fix health probe for several conductor workers
It was observed that when increasing amount of
conductor workers from default "1" to higher value
the readiness probe fails to check rabbitmq connections
for conductor processes - it happens since the script is trying
to obtain rabbitmq connections for parent conductor process
which in case of workers>1 doesn`t open rabbit connections
but spawns child processes which handle rabbitmq
connections instead.
This patch removes the "check-all-pids" option, keeps the logic
but simplifies and fastens he code - instead of checking all
processes when "check-all-pids" option was set (however
regardless of "sock_count value" if only one process opens connection
the check returns positive result) processes will be checked one-by-one
until the first one with open rabbitmq connection(s) is
found.

Change-Id: I72be0bbdefcba77a55b6ceed6e192c9621c069eb
2020-01-31 10:43:06 +00:00
Tin Lam
bf434ffd67 Add capability for using FQDN in nova compute
This patch set adds in a capability for the user to defaultly use a
FQDN for the nova compute hostname and the hypervisor hostname when
the host is not explicitly specified in the .Values.conf override.

Change-Id: I3243068dfe91ebb97b3885002296a0f454822ec5
Co-authored-by: Drew Walters <andrew.walters@att.com>
Signed-off-by: Tin Lam <tin@irrational.io>
2020-01-01 20:01:25 +00:00
sungil
620286117b Improve accuracy for version detection on nova
Because it's almost time for expiring on some python version, OpenStack client
running on that version generates some messages for warning. Two scripts on
nova Fixed by this PS get version information using the OpenStack client
without any protection for this kinds of messages. This PS gives a little
more sophisticated way of it.

Change-Id: I2896c76e012b9acbf1e725276ba9c0b74789fa54
2020-01-01 01:11:05 +00:00
Cliff Parsons
58291db1a6 Add capability to wait on compute nodes
This patchset adds the capability to the Nova chart to be able to wait
for a percentage of the compute nodes/hypervisors to become ready/available
before continuing on with the deployment. It will be disabled by default,
because this is a feature that may or may not be needed in production
deployments.

Change-Id: I971151a663afc87e7d62efa4ab3723c5472a3736
2019-12-17 02:48:49 +00:00
Zuul
f09e805abf Merge "Implement Security Context for Nova" 2019-12-02 23:40:13 +00:00
Prateek Dodda
4fdbf3c07a Implement Security Context for Nova
Implement container security context for the following Nova resources:
 - Nova server deployment

Change-Id: Ide4f413d4b27bfbffd4e941ff4f87aefe5a319a8
2019-11-27 15:30:32 -06:00
Pete Birley
b4248a51b6 Nova: Update compute start script to accomodate multiple default routes
This PS udpates the nova compute start script to account for cases where
there may be multiple default routes to the outside world.

Change-Id: Ibd051c2577a0ab67aa2a5284fc9ccab799c28953
Signed-off-by: Pete Birley <pete@port.direct>
2019-11-26 15:09:16 -06:00
zhipengl
20deb70c75 [Nova] Fix a bug introduced in implementing security context for nova
In daemonset-compute.yaml, it uses a wrong application name
Bug introduced in commit-id:9b42e8a1c0e68404bf13487dbfb699b1bd0e4c01

Change-Id: I614dc9d52d6dd7b346aa0b3f5e0012686de93ced
Signed-off-by: zhipengl <zhipengs.liu@intel.com>
2019-10-12 01:11:36 +00:00
Hemachandra Reddy
3ba23f7ab0 Fix psutil inconsistencies
Python psutil library has not been consistent in behavior
a. gives trucated process names at times
b. the truncated names sometimes contain path to Python instead
of the program name Python runs

Change-Id: I99b77a4c28761a2187e59be4e562d5893ef3caa9
2019-10-07 21:43:15 +00:00
Tin Lam
4817d1de28 Remove explicit call to py2
Python 2 is sunsetting in Jan 2020. We should not be finding python 2
explicitly. This patch removes those calls.

Change-Id: Ie6c9ad77097e662393c5fdd26490ebef25bdc3de
Signed-off-by: Tin Lam <tin@irrational.io>
2019-09-20 13:46:23 +00:00
zhipengl
494212423a Add a config item for novncproxy
In deployment-novncproxy.yaml, it set hostNetwork = true.
In some cases, we may want to let it use cluster network instead of
hostNetwork.
We'd better add a config item, so that client can override it to use
cluster network based on an operators preferences.

Story: 2006490
Task: 36439

Change-Id: Ia235d4e9542bd9242f9d2713ad1e67870f3016e2
Signed-off-by: zhipengl <zhipengs.liu@intel.com>
2019-09-12 11:57:30 +00:00
Pete Birley
09616b4f3f Nova: Update Cell management to allow db updates and improve rabbit
This PS allows the db connection string for the singular cell that OSH
currently supports to be updated, and also uses the full connection
string for the transport url.

Change-Id: I700133263273e04dad5b3e69d5e1f8255323e560
Signed-off-by: Pete Birley <pete@port.direct>
2019-07-25 12:30:06 +00:00
Pete Birley
467b81a3e4 Nova: Update DB sync job to update transport url
If the transport url changes, cell needs to be updated to use new
transport.

Change-Id: I1a931b5ce272a731be710c43f3fea08abc79af71
Signed-off-by: Pete Birley <pete@port.direct>
2019-07-24 20:49:12 +00:00
Gerry Kopec
34cc0104c8 Nova: add service token
Add capability for nova to send service token.  Default to disabled.
Config setup is similar to keystone_authtoken.

Change-Id: I666f8f52fed50c61f67397b3da58133a2f9b49d3
Signed-off-by: Gerry Kopec <Gerry.Kopec@windriver.com>
2019-07-04 14:10:26 +00:00
Hemachandra Reddy
287602fe20 Support for RabbitMQ HA
There can be more than one RabbitMQ node in
transport_url in conf file when RabbitMQ is
configured in HA mode.

Change-Id: I9721e2e33212918d402bce295c02b1869dce67f7
2019-07-02 16:10:44 +00:00
Pete Birley
fd37d61b12 Nova: Provide method for removing sections from nova compute conf
This PS provides a method to redact sectionf from the nova compute
configuration file. By default this is configured to redact the
db connection strings, and sections.

Change-Id: Ifb50b932155c166634bb8a88363f6c02fbde8389
Signed-off-by: Pete Birley <pete@port.direct>
2019-06-28 16:55:29 -05:00
Pete Birley
9bcf0df94c Messaging: use htk function to directly hit RabbitMQ servers
This PS updates the charts to use the htk function recently introduced
to allow oslo.messaging clients ans servers to directly hit their
backends rather than using either DNS or K8S svc based routing.

Depends-On: I5150a64bd29fa062e30496c1f2127de138322863

Change-Id: I458b4313c57fc50c8181cedeca9919670487926a
Signed-off-by: Pete Birley <pete@port.direct>
2019-06-18 21:47:45 +00:00
Zuul
cd460f12c2 Merge "Rafactoring volume mount variables in db sync job" 2019-06-18 18:24:18 +00:00
Oleh Hryhorov
89f5bfe3ac Creating directory from ${APACHE_RUN_DIR} variable
If an image is built with python3 therefore libapache2-mod-wsgi-py3
module have to be installed accordingly but the module doesn't create
/var/run/apache2 directory which is APACHE_RUN_DIR in apache configuration
file so apache can't start without it due to the fact that the directory
is used to make there pid, run, etc files.

Change-Id: Ic92b095e9d7636c3ed833241bd3badbb4bb6e552
2019-06-18 06:02:47 +00:00
Pete Birley
31bd9c832d Logs: Make it optional to use log_config_append option
This PS enables the use of simple logging options if desired.

Change-Id: If6ea420c6ed595b3b6b6eedf99a0bf26a20b6abf
Signed-off-by: Pete Birley <pete@port.direct>
2019-06-17 13:51:21 -05:00
Pete Birley
5ccd3a9e95 Nova: Fix metadata deps
This PS fixes the nova metadata deps to permit operation without
and ingress controller and prevent a circular dep chain.

Change-Id: I265d488e8024967685c5587d7a7cd24281011f3b
Signed-off-by: Pete Birley <pete@port.direct>
2019-06-17 17:07:50 +00:00
pd2839
9b42e8a1c0 Implement Security Context for Nova
Implement container security context for the following Nova resources:
 - Nova server deployment

Change-Id: I02743cff46d9a043ccb029547c819fafd9da3611
2019-06-03 12:31:18 -05:00
John Haan
0ea9be7ade Rafactoring volume mount variables in db sync job
This patch make the db sync job template follows the same pattern
that other templates utilize the variables to make in a predictable
pattern.

Change-Id: Idbedd046c6b4fd001cf63004ffac792173a5778b
Story: 2005754
Task: 33457
2019-05-22 17:47:03 +09:00
JohnHaan
8157acc618 fix wrong mount key for scheduler and consoleauth
nova-scheduler and consoleauth define wrong
name for value of volume mount.

Change-Id: I398596fa65b15cae35e5df5a23bafd8e8db077a2
2019-05-17 16:35:05 +09:00
Zuul
02af9df330 Merge "Use nova's ping method to find out if the service is alive" 2019-05-08 00:37:34 +00:00
Jiří Suchomel
baf5356a4f Use nova's ping method to find out if the service is alive
Currently there is fake rpc call "pod_health_probe_method_ignore_errors"
that is passed to the service, just to find out if it is responding. Because
such method does not exist, it is needed to catch and handle the exception
that is inevitably thrown by the service.

While this is technically working correctly, the exceptions pollute the
log files and make it harder for user to see possible real errors.

This is how the error looks like:

ERROR oslo_messaging.rpc.server [-] Exception during message handling: oslo_messaging.rpc.dispatcher.UnsupportedVersion: Endpoint does not support RPC version 1.0. Attempted method: pod_health_probe_method_ignore_errors
ERROR oslo_messaging.rpc.server Traceback (most recent call last):
ERROR oslo_messaging.rpc.server   File "/var/lib/openstack/lib/python3.6/site-packages/oslo_messaging/rpc/server.py", line 163, in _process_incoming
ERROR oslo_messaging.rpc.server     res = self.dispatcher.dispatch(message)
ERROR oslo_messaging.rpc.server   File "/var/lib/openstack/lib/python3.6/site-packages/oslo_messaging/rpc/dispatcher.py", line 276, in dispatch
ERROR oslo_messaging.rpc.server     raise UnsupportedVersion(version, method=method)
ERROR oslo_messaging.rpc.server oslo_messaging.rpc.dispatcher.UnsupportedVersion: Endpoint does not support RPC version 1.0. Attempted method: pod_health_probe_method_ignore_errors

This situation is new since https://review.openstack.org/#/c/639711/
which (correctly) increased the default level of logging. Before 639711
error messages from oslo (both real and ones that could be ignored) were not
present in nova logs at all.

Fortunatelly, nova's BaseAPI class provides 'ping' method that is can
be used for this basic purpose by all nova components.

Change-Id: I0062e74bed399206becb8d9e00f9ec805da864a3
2019-05-02 10:26:47 +02:00
Zuul
778f13f568 Merge "Start nova sshd container only if enabled" 2019-05-01 15:09:37 +00:00
Zuul
22289a945c Merge "OSH: Add emptydirs for tmp" 2019-04-20 15:27:24 +00:00
Pete Birley
623c131292 OSH: Add emptydirs for tmp
This PS adds emptydirs backing the /tmp directory in pods, which
is required in most cases for full operation when using a read only
filesystem backing the container.

Additionally some yaml indent issues are resolved.

Change-Id: I9df8f70e913b911ff755600fa2f669d9c5dcb928
Signed-off-by: Pete Birley <pete@port.direct>
2019-04-20 08:55:44 -05:00
hagun.kim
360ee8255e Fix novnc init asset copy options
When novnc pod is re-run because of host reboot and so on,

novnc pod has existing volume /tmp/usr/share, which has 0444 permissions.

So init container occurs an error while it tries to copy asset files.

cp: cannot create regular file '/tmp/usr/share/novnc/index.html': Permission denied

With -f option, the init container can copy without errors.

Change-Id: I56d928b7f4a30a6be29b47560357a3b4f5eec764
Signed-off-by: hagun.kim <hagun.kim@samsung.com>
2019-04-19 16:48:50 +09:00
Zuul
3dfb927c2b Merge "Add an option to the health probe to test all pids" 2019-04-18 06:17:03 +00:00
Zuul
9928f5c819 Merge "Allow more generic overrides for nova placement-api" 2019-04-17 05:48:43 +00:00
Zuul
55b0f8aa0f Merge "Enable audit pipeline for nova" 2019-04-13 01:33:47 +00:00
Itxaka
6d7a909447 Allow more generic overrides for nova placement-api
With this patch we allow for a more easy way of overriding some of
the values that may be used in other distros while maintainting the
default values if those values are not overriden

The following values are introduced to be overriden:

conf:
  security:
  software:
    apache2:
      conf_dir:
      site_dir:
      mods_dir
      binary:
      extra_flags:
      a2enmod:
      a2dismod:

On which:
 * conf_dir: directory where to drop the config files for apache vhosts
 * site_dir: directory where to drop the enabled virtualhosts
 * mods_dir: directory where to drop any mod configuration
 * binary: the binary to use for launching apache
 * extra_flags: any flags that will be passed to the apache binary call
 * a2enmod: mods to enable
 * a2dismod: mods to disable
 * security: security configuration for apache

Notice that if there is no overrides given, it should not affect anything
and the templates will not be changed as the default values are set
to what they used to be

Change-Id: I4fcfde78c5c8fa65956aeae55108ffa1f10e6972
2019-04-12 14:03:36 +02:00