186 Commits

Author SHA1 Message Date
Graham Steffaniak
1157d95b71 Create Openstack common components umbrella chart
ADD openstack chart with values_overrides
    * rabbitmq
    * mariadb
    * memcached
    * keystone
    * heat
    * glance

    This adds umbrella chart that references other charts via
    symlink and include global values.

    Because chart valeus_overrides yaml apply to the main chart,
    the umbrella chart has a chart-scoped replacement

  ADD openstack.sh deploy script
    This script deploys all components with a single release.

  ADD corresponding release notes

  CHG wait-for-pods-sh to accept timeout arguement

  CHG get-values-overrides.sh to modify file path for subchart

Change-Id: I25cd9d6785c61540d6329657c0358f27299d3647
2022-04-05 09:47:06 -05:00
Thiago Brito
d8b1f217c8 Enable taint toleration for keystone
This changes use the helm-toolkit template for toleration
in openstack services

Signed-off-by: Lucas Cavalcante <lucasmedeiros.cavalcante@windriver.com>
Story: 2009276
Task: 43531
Depends-On: I168837f962465d1c89acc511b7bf4064ac4b546c
Change-Id: I30ca8050e02a5deeec52319d45025f4af7139059
2022-03-22 18:45:05 +00:00
Gage Hugo
537716e157 Revert "fix(log): reduces chattiness in keystone log"
This reverts commit 73531436e975e6091df0f501239159c0df69e3e3.

Reason for revert: When the keys are rotated, the links become
broken and keystone only uses the 0 key.

Change-Id: Iffc4ab5d659b01babe7b4f9ee35b0a5789dac3ec
2022-02-01 23:19:56 -06:00
Gage Hugo
073d9a14ee Remove default policy in keystone chart
Keystone has default policy defined in code, this change
removes the outdated values set in values.yaml in order to fall
back onto the in code values for policy.

Change-Id: If27eb0aa312b52c6fddd3811f10bc6207c7dfe27
2022-01-05 16:46:50 +00:00
Gage Hugo
9a89037615 Update default image references
This change updates the image references in the keystone chart
to the latest supported releases of both openstack and ubuntu.

Change-Id: If4f30252b5d839cfe517ee57cbef96e7775e7ec5
2021-10-28 18:15:38 +00:00
Gage Hugo
613fecd37f Remove extra fsGroup
The keystone chart recently had a change to fix the world
readable warning message, but an extra fsGroup entry causes
the chart to fail to deploy when using helm3.

This change removes the offending entry from the values file
in the keystone chart.

Change-Id: I540854da7123f413215b627d3bfb077c6f4864c6
2021-10-23 05:37:20 +00:00
Tin Lam
73531436e9 fix(log): reduces chattiness in keystone log
Current implementation of Keystone prints a warning message if the
directory containing the fernet keys is world readable (o+r). As OSH
uses a volumeMount to handle fernet keys and is by default readonly,
there is no meaningful way to make the directory (not the keys) world
unreadable. Consequently, keystone just keep logging that warning,
adding no particular value besides flooding the log.

Rather than disabling the log message in keystone (as that warning is
meaningful from a security standpoint), this patch set changes the way
we deal with the secret volume so the directory is no longer world
readable, so keystone will stop issuing that warning message.

Signed-off-by: Tin Lam <t@lam.wtf>
Change-Id: Id29abe667f5ef0b61da3d3825b5bf795f2d98865
2021-10-20 09:21:50 -05:00
ericxiett
c5105fd9da Add missing slash
The default of 'domain_config_dir' in keystone is '/etc/keystone/domains'.
This patch adds the missing slash.

Change-Id: I30523ec3fd3144811a76b9078e915eff4ffa2b66
2021-09-21 09:44:59 +08:00
Gage Hugo
87b39c553d Remove member bootstrap logic
As of Rocky, keystone creates the member role by default. Since
our removal of pre-Train support, the logic we have in the
bootstrap script is no longer needed.

This change removes the member user and role logic.

Change-Id: Ide3af5c47c6b45c013b4dee08076d11bcfe87c53
2021-07-19 03:11:25 +00:00
Gage Hugo
c1c6cb8300 Modify default probe timings
This change modifies the keystone probe timings to be less
aggressive. This should prevent the probes from restarting any
keystone-api pods that are under a high volume of traffic as well
as reduce the amount of log spam.

Change-Id: Icce06bf2247591a7b603aa32ded254ce7b6cc67a
2021-06-18 19:14:55 -05:00
Thiago Brito
8ab6013409 Changing all policies to yaml format
In the Victoria cycle oslo.policy decided to change all default policies
to yaml format. Today on openstack-helm we have a mix of json and yaml
on projects and, after having a bad time debugging policies that should
have beeing mounted somewhere but was being mounted elsewhere, I'm
proposing this change so we can unify the delivery method for all
policies across components on yaml (that is supported for quite some
time). This will also avoid having problems in the future as the
services move from json to yaml.

[1] https://specs.openstack.org/openstack/oslo-specs/specs/victoria/policy-json-to-yaml.html

Signed-off-by: Thiago Brito <thiago.brito@windriver.com>
Change-Id: Id170bf184e44fd77cd53929d474582022a5b6d4f
2021-05-26 18:15:41 -03:00
Haider, Nafiz (nh532m)
c900712f30 feat(tls): Make openstack services compatible with rabbitmq TLS
Depends-on: https://review.opendev.org/c/openstack/openstack-helm-infra/+/770678

Co-authored-by: Sangeet Gupta <sg774j@att.com>

Change-Id: I11e9ad3f4079b0e12e498f9ed57e5b87ae9dc66a
2021-05-21 01:27:18 +00:00
Gage Hugo
17eff06bb3 Remove keystone paste ini file
With keystone moving to flask back in Stein, the paste pipeline
configuration and file are no longer needed. With OSH no longer
supporting those older releases, this change removes the paste ini
settings and file mounts since they are no longer used.

Change-Id: Idacd973f090562eaee28567d9422eb761951096f
2021-05-05 16:42:28 -05:00
Gage Hugo
0f6f83dcdc Add conditional wrapper to helm hook
The pre-install hooks for several of the keystone templates
cause upgrade failures when using helm2. This change wraps them
in a conditional that can be toggled off for anyone still
using helm2.

Change-Id: I179583bd595bc8ed1e4c29eb7c2a744e3c6a5708
2021-04-19 20:29:22 +00:00
Gage Hugo
de912628ca Move rabbit-init to dynamic dependency
With a previous change[0] that moved rabbit-init jobs to dynamic
in helm-toolkit, this change continues that work by moving the
keystone rabbit-init job to dynamic as well.

[0] https://review.opendev.org/c/openstack/openstack-helm-infra/+/671727

Change-Id: Iec2ea3fdf36e19ac4f2e203389dbe19737d14c3a
2021-02-25 19:15:49 +00:00
Gage Hugo
fe53b5e559 Add blank access_rules file
When starting the keystone-api pod, the service checks for a
access_rules file for application credentials during startup.
If the file does not exist, keystone emits a warning saying the
file is not found:

WARNING keystone.access_rules_config.backends.json [-] No config
file found for access rules, application credential access rules
will be unavailable.: FileNotFoundError: [Errno 2] No such file
or directory: '/etc/keystone/access_rules.json'

This change adds in a blank access_rules.json file to the
keystone etc directory in order to surpress this message.

Change-Id: I63ac153cc91ac45b3fd223f8a54b933b5cbffac4
2020-10-15 21:13:34 +00:00
okozachenko
a8fc28696d Sync logging values with upstream repos
Some OSH charts have diffferent values for logger_root
handler from upsgream repo config defaul values.
Exactly, logger_root handler values.
This leads double logging finally.
To fix this, set logger_root as null like upstream repos.

Change-Id: I20e4f48efe29ae59c56f74e0ed9a4085283de6ad
2020-09-15 19:15:05 +03:00
PrateekDodda
fc5712909e Add missing security context to Keystone pods/containers
This updates the Keystone chart to include the pod
security context on the pod template.

This also adds the container security context to set
readOnlyRootFilesystem flag to true

Change-Id: I0e00571d4060cca914d1bdb4f36e736fa8501130
2020-08-05 13:37:33 -05:00
Gage Hugo
44882d60e2 Update xrally version to 2.0.0
This change updates the xrally image from 1.3.0 to 2.0.0
in order to better match the current versions of openstack
we are running in the gate.

Change-Id: I3f417a20e0f6d34b9e7ed569207a3df90c6ddfd2
2020-07-31 20:00:24 +00:00
DODDA, PRATEEK REDDY (pd2839)
46afde4c6d Add missing security context to Keystone pods/containers
This updates the Keystone chart to include the pod
security context on the pod template.

This also adds the container security context to set
readOnlyRootFilesystem flag to true

Change-Id: I655ef19a3c187e3462ff8ec1a54bc9691ca64d41
2020-07-21 17:33:15 +00:00
DODDA, PRATEEK REDDY (pd2839)
2eaa98ecf1 Add missing security context for Keystone rally tests
Change-Id: I29a432f28a4d8dd57341152d60b34c5a391e872f
2020-07-16 13:11:49 -05:00
sgupta
702c17eb78 feat(tls): Make openstack services compatible with mariadb with TLS
Depends-on: https://review.opendev.org/#/c/741037/
Change-Id: I21f4ede3bd18c0af8da1eba60cd0b7b932a31410
2020-07-14 23:32:03 +00:00
Zuul
f9862e221e Merge "Add missing security context to Keystone pods/containers" 2020-07-13 18:57:52 +00:00
Tin Lam
918a307427 feat(tls): add tls support to openstack services
This patch set enables TLS for the following OpenStack services: keystone,
horizon, glance, cinder, heat, nova, placement and neutron for s- (stein)
and t- (train) release. This serves as a consolidation and clean up patch
for the following patches:

[0] https://review.opendev.org/#/c/733291
[1] https://review.opendev.org/#/c/735202
[2] https://review.opendev.org/#/c/733962
[3] https://review.opendev.org/#/c/733404
[4] https://review.opendev.org/#/c/734896

This also addresses comments mentioned in previous patches.

Co-authored-by: Gage Hugo <gagehugo@gmail.com>
Co-authored-by: sgupta <sg774j@att.com>

Depends-on: https://review.opendev.org/#/c/737194/

Change-Id: Id34ace54298660b4b151522916e929a29f5731be
Signed-off-by: Tin Lam <tin@irrational.io>
2020-07-10 09:36:31 -05:00
DODDA, PRATEEK REDDY
cba3deb94e Add missing security context to Keystone pods/containers
This updates the Keystone chart to include the pod
security context on the pod template.

This also adds the container security context to set
readOnlyRootFilesystem flag to true.

Change-Id: I2ac3a4efa6798e263de19f0db444f37c5236d121
2020-07-09 18:20:23 -05:00
Andrii Ostapenko
8cfa2aa390 Enable yamllint checks
- brackets
- braces
- colon
- commas
- comments
- document-end
- document-start
- empty-lines
- hyphens
- indentation
- new-line-at-end-of-file
- new-lines
- octal-values
- trailing-spaces

with corresponding code adjustment.

Also add yamllint.conf under the check.

Change-Id: Ie6251c9063c9c99ebe7c6db54c65d45d6ee7a1d4
2020-05-27 19:16:34 -05:00
Gage Hugo
db79e79788 Remove OSH Authors copyright
The current copyright refers to a non-existent group
"openstack helm authors" with often out-of-date references that
are confusing when adding a new file to the repo.

This change removes all references to this copyright by the
non-existent group and any blank lines underneath.

Change-Id: Ia035037e000f1bf95202fc07b8cd1ad0fc019094
2020-04-03 20:53:32 +00:00
Tin Lam
12bee1bb97 Migrate default release to Stein
This patch set updates the default job to use OpenStack Stein release.
The previously default Ocata release will be place in separate job.

Change-Id: I489324f762a179a2cab5499a6d8e57e97c81297f
Signed-off-by: Tin Lam <tin@irrational.io>
2020-01-09 10:00:31 -06:00
Tin Lam
a25eccb7cb Implements egress network policy
This patch set adds in the egress policy for core OpenStack Services.

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

Change-Id: I585ddabcbd640db784520c913af8eddecaee3843
Signed-off-by: Tin Lam <tlam@omegaprime.dev>
2019-11-22 01:16:49 +00:00
Steve Wilkerson
9736f5f544 Update kubernetes-entrypoint image reference
This updates the kubernetes-entrypoint image reference to consume
the publicly available kubernetes-entrypoint image that is built
and maintained under the airshipit namespace, as the stackanetes
image is no longer actively maintainedy

Depends-On: https://review.opendev.org/688435

Change-Id: I8e76cdcc9d4db8975b330e97169754a2a407341f
Signed-off-by: Steve Wilkerson <sw5822@att.com>
2019-10-21 13:58:22 +00:00
Vasyl Saienko
86ff8cccec [Keystone] Fix indentation in values.yaml
Change-Id: I6d9ea0ea581016d5cb3ef447c9d8da6fb291e8da
2019-10-02 20:39:53 +00:00
Zuul
24f9b2322a Merge "Add network policy nonvoting checks" 2019-09-27 14:06:26 +00:00
Gage Hugo
c3e085b800 Add network policy nonvoting checks
This change adds two network policy zuul checks, one for the compute-kit,
and one for cinder/ceph, to test network policy for each OpenStack
service. These checks will be non-voting initially.

The network policy rules for each service will initially allow all
traffic. These ingress/egress rules will be defined in future changes
to only explicitly allow traffic between services that are explicitly
allowed to communicate, other traffic will be denied.

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

Change-Id: Ide2998ebb2af2832f24ca7abc398a82e4a6d70e3
2019-09-26 11:57:15 -05:00
Itxaka
b4eaa63548
Keystone: allow probes configuration
Probe configuration is now available for keystone for both liveness and
readiness checks.

Change-Id: I1f0e0a1ff9cd10c5acbec33af87aa9e59959b2d2
2019-09-25 12:17:43 +02:00
Zuul
3af5f78f5c Merge "Remove dependency for db_sync on keystone-rabbit-init" 2019-08-02 13:09:14 +00:00
Pete Birley
59a017d834 RabbitMQ: Dont mirror reply queues
This PS updates the default RMQ policy to not mirror reply queues
as they cause signifigant blocking when resorting a rabbit node to
a cluster, with no advantage.

Change-Id: I6f8d4eaa482fcdf3e877bd38caa9b24358ea5be0
Signed-off-by: Pete Birley <pete@port.direct>
2019-07-30 09:54:16 -05:00
Oleh Hryhorov
ab7c203cf9 Remove dependency for db_sync on keystone-rabbit-init
The patch adjusts dependency and removes dependency for db_sync on
keystone-rabbit-init job.

Change-Id: I83f5de1c32201a7534a65667b87b90bd46e156a8
2019-07-26 13:29:42 +03:00
Manuel Buil
0a965cf4c7 Allow keystone pods to connect to kube-dns
When deploying keystone, two pods fail with error:

Temporary failure in name resolution

These pods are executing fernet_manage.py and fetch secrets using:
https://github.com/openstack/openstack-helm/blob/master/keystone/templates/bin/_fernet-manage.py.tpl#L60

However, the current network policy blocks the connection to kube-dns.
This patch fixes it

Change-Id: I4ae6722a5bcb350e64995fbd2e1010153b0c29e6
Signed-off-by: Manuel Buil <mbuil@suse.com>
2019-07-04 14:14:42 +00:00
Dejaeger, Darren (dd118r)
aa0d80c59d Add node selector to Keystone test pod
This PS looks to add a node selector into the Keystone test pod's
spec.

Change-Id: If92e0eb6814e25ba108f36298ba01044d42ced33
2019-06-20 11:58:41 -04:00
Itxaka
d4b8f16f26 keystone: default domain fix
Provide the default domain id and assign the admin
role to it on bootstrap.
Currently we cannot provide domain scoped tokens with
the admin user due to it not being assigned the admin
role for the default domain.

This patch makes it so we assign the proper role on bootstrap.

Depends-on: https://review.opendev.org/662992
Change-Id: Ide1918c1ed264ccc2998008b2334542e3d683bfc
2019-06-19 13:05:05 +00: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
Pete Birley
d0b135cd77 AMPQ: update ha policy regex
Change-Id: I2f023c2e41a52b5753cdb77e93c9e876bc60a87d
Signed-off-by: Pete Birley <pete@port.direct>
2019-06-11 12:17:22 -05:00
Gage Hugo
976cab856c Create separate users for helm test
Currently each service uses the same name for their helm test user,
"test". While this works when services are ran sequentially, when
multiple services are deployed and tested at the same time, it can
lead to a race condition where one service deletes the user before
the other is done testing, causing a failure.

This change makes it so that each service defines its own test user
in the form of [service]-test.

Change-Id: Idd7ad3bef78a039f23fb0dd79391e3588e94b73c
2019-06-03 11:26:18 -05:00
sg774j
7a57dcf33a Keystone: Enable Proxy Header Parsing
Setting enable_proxy_headers_parsing to true under oslo_middleware

Change-Id: I50a72129d25fe1812a2c1d0adb736024349108af
2019-05-22 08:22:24 -05:00
Zuul
f8adab245b Merge "Point to OSH-images images" 2019-05-18 19:12:58 +00:00
Jean-Philippe Evrard
1d335146fa Point to OSH-images images
We now have a process for OSH-images image building,
using Zuul, so we should point the images by default to those
images, instead of pointing to stale images.

Without this, the osh-images build process is completely not
in use, and updating the osh-images process or patching its
code has no impact on OSH.

This should fix it.

Change-Id: I672b8755bf9e182b15eff067479b662529a13477
2019-05-13 10:58:02 +02:00
Roy Tang (rt7380)
5df6fa3789 Expose Anti-Affinity Weight Setting.
Add weight default setting to anti-affinity.

Depends-on: Id8eb303674764ef8b0664f62040723aaf77e0a54
Change-Id: I09f96522cddf3a77dae73daca4557877eda5df50
2019-05-10 22:05:24 -05:00
Zuul
72e45b8ad4 Merge "Let keystone make rabbitmq queues HA when available" 2019-05-02 22:14:32 +00:00
Gage Hugo
05dff0139e Reenable rally ec2 create/list test
This change reenables the create and list ec2 credential test.

The previous issue of undecryptable credential blobs being
left over was fixed in a previous change.

Change-Id: I81014489dd16d6c57a89ddb3ac3d205209e4acdf
2019-04-25 15:23:03 -05:00
clare cheng
dc92161b4e Let keystone make rabbitmq queues HA when available
Change-Id: I62454ef081d5f296d4f850baa67e9d2602461314
2019-04-23 13:10:33 +00:00