Commit Graph
7961 Commits
Author SHA1 Message Date
Travis Nielsen 68f8d5c217 Merge pull request #9235 from rook/snyk-fix-764e1f7e4c3e1bb5ec7e16c52097dba6
[Snyk] Security upgrade ubuntu from 16.04 to xenial-20210114
2021-11-24 10:19:09 -07:00
Travis Nielsen 9d3bcb4a78 Merge pull request #9243 from LittleFox94/9241-update-prometheus
monitoring: update label on prometheus resources
2021-11-24 10:16:45 -07:00
Mara Sophie Grosch 733878b1eb monitoring: update label on prometheus resources
Updating the promethes reources (PrometheusRule and ServiceMonitor) is
done by fetching the current resource from the server and updating the
spec on it. This commit makes it also apply the labels, so users can
update them via rook CRDs.

Closes: https://github.com/rook/rook/issues/9241
Signed-off-by: Mara Sophie Grosch <littlefox@lf-net.org>
2021-11-24 17:17:02 +01:00
snyk-bot 38b2af711a build: images/cross/Dockerfile to reduce vulnerabilities
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-UBUNTU1604-LIBGCRYPT20-1585790
- https://snyk.io/vuln/SNYK-UBUNTU1604-SYSTEMD-1320131
- https://snyk.io/vuln/SNYK-UBUNTU1604-SYSTEMD-1320131
- https://snyk.io/vuln/SNYK-UBUNTU1604-SYSTEMD-1320131
- https://snyk.io/vuln/SNYK-UBUNTU1604-SYSTEMD-1320131

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-11-24 15:38:15 +01:00
Sébastien Han e008464327 Merge pull request #9224 from leseb/fix-9205
nfs: only set the pool size when it exists and always run default pool creation
2021-11-24 14:36:14 +01:00
Sébastien Han f3142847d3 nfs: always run default pool creation
Previously, if the pool was present we would not run the pool creation
again. This is a problem if the pool spec changes, the new settings will
never be applied.

Signed-off-by: Sébastien Han <seb@redhat.com>
2021-11-24 14:04:19 +01:00
Sébastien Han b38f430c26 core: fix openshift security context
The MKNOD capability was missing and due to recent addition some pod now
only require this cap as well as privileged.
The cap must be explicitly exposed so it can be requested by a pod.

Closes: https://github.com/rook/rook/issues/9234
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-11-24 11:22:47 +01:00
Sébastien Han 12638cb56f Merge pull request #9233 from arugal/typo
helm: update comments to match the default image in the code
2021-11-24 09:28:37 +01:00
zhangwei d63d3cf0c4 helm: update comments to match the default image in the code
update comments to match the default image in the code.

Signed-off-by: zhangwei <zhangwei24@apache.org>
2021-11-24 11:07:43 +08:00
Travis Nielsen ba54567e8f Merge pull request #9176 from TomHellier/9174-ingress-support-more-k8s-versions
helm: Allow further configurability of the ingress version
2021-11-23 13:47:33 -07:00
Travis Nielsen d340bccd44 Merge pull request #9202 from thotz/hpakedadoc
docs: add details about HPA via KEDA
2021-11-23 10:42:03 -07:00
Travis Nielsen 801b5d65a7 Merge pull request #9180 from LittleFox94/8502-monitoring-labels
#8502: Make monitoring object labels overridable
2021-11-23 09:44:06 -07:00
Sébastien Han f1c896af72 Merge pull request #9226 from leseb/fix-9166
docs: move the test readme to the official doc
2021-11-23 16:36:47 +01:00
Sébastien Han f9f08c88ca docs: move the test readme to the official doc
The instructions to deploy a developer environment are useful and should
be part of the official documentation instead of being hidden in the
repo's README.md. Also, remove ancient documentation to deploy with
kubespray a multi-node env.
Also, add a warning to always run tests env in a virtual machine.

Closes: https://github.com/rook/rook/issues/9166
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-11-23 15:56:28 +01:00
Jiffin Tony Thottan d32c837e35 docs: add details about HPA via KEDA
By default HPA can use details about memory or CPU consumption for
autoscaling, but also it can use custom metrics as well. There are alot
provides supports HPA via customer and one of them is KEDA project. Here
it is done with help of Prometheus Scaler

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-11-23 16:50:18 +05:30
Sébastien Han c3accdcc3a nfs: only set the pool size when it exists
For CRD not using the new nfs spec that includes the pool settings,
applying the "size" property won't work since it is set to 0. The pool
still gets created but returns an error. The loop is re-queued but on
the second run the pool is detected so no further configuration is done.

Closes: https://github.com/rook/rook/issues/9205
Signed-off-by: Sébastien Han <seb@redhat.com>
2021-11-23 11:07:43 +01:00
Sébastien Han e9f9a40138 Merge pull request #9212 from travisn/admin-test-cluster
core: Ensure cluster name is available on cluster info
2021-11-22 11:50:55 +01:00
Tom Hellier ba44602477 helm: allow further configurability of ingress version
The ingress api version changed when it went to v1, and this has caused some upheaval
throughout the kubernetes ecosystem. This commit uses a common method of deciding which
ingress api to use, and allows the optional override of the kubernetes version
presented to helm using the helm build-in capabilities.
also add an ingress into the helm integration tests so any regressions to how ingresses
are handled in the future are caught easier.

Closes rook#9174

Signed-off-by: Tom Hellier <me@tomhellier.com>
2021-11-22 10:03:02 +00:00
Blaine Gardner fcd0d90c3a Merge pull request #9094 from BlaineEXE/clean-up-resource-health-checkers-when-removing-finalizers
pool: file: object: clean up health checkers for both types of deletion
2021-11-19 11:57:25 -07:00
Blaine Gardner 03ba7dec64 pool: file: object: clean up stop health checkers
Clean up the code used to stop health checkers for all controllers
(pool, file, object). Health checkers should now be stopped when
removing the finalizer for a forced deletion when the CephCluster does
not exist. This prevents leaking a running health checker for a resource
that is going to be imminently removed.

Also tidy the health checker stopping code so that it is similar for all
3 controllers. Of note, the object controller now uses namespace and
name for the object health checker, which would create a problem for
users who create a CephObjectStore with the same name in different
namespaces.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-11-19 10:29:12 -07:00
Blaine Gardner e80368674d test: run RGW multisite test in nightly job
In the nightly job, run the test with the latest Ceph version so we can
detect if there are RGW changes in Ceph that might break multisite. Use
a reusable GitHub action workflow to duplicate as little code as
possible.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-11-19 09:56:41 -07:00
Travis Nielsen 1afd322650 core: ensure cluster name is available on cluster info
The cluster info is important context for the cluster controller to
create the cluster, and all the fields must be properly set.
A test cluster name was being set temporarily, resulting in
mons incorrectly getting the wrong cluster CR name. There is no
known issue from the temporary value, it was just exposed by
https://github.com/rook/rook/pull/8678 setting the value to a label.

Now the functions are more clearly named so only unit and
integration tests should be using the test value for the cluster
name where it is not important.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-11-18 15:30:26 -07:00
Blaine Gardner b9faa9d82f Merge pull request #9187 from BlaineEXE/bluestore_fsck_quick_fix_on_mount-upgrade-warning
docs: add OMAP quick fix warning to upgrade guide
2021-11-18 12:47:11 -07:00
Blaine Gardner cd832e5832 Merge pull request #8579 from thotz/vaultsslsupport
ceph: add support in RGW to communicate vault with TLS
2021-11-18 12:32:38 -07:00
Travis Nielsen 3367f7e30b Merge pull request #9203 from parth-gr/mon-clusterInfo-cr
mon: set cluster name to mon cluster
2021-11-18 10:57:08 -07:00
Blaine Gardner 1f8719650a docs: add OMAP quick fix warning to upgrade guide
Ceph has recently reported that it may be unsafe to upgrade clusters
from Nautilus/Octopus to Pacific v16.2.0 through v16.2.6. We are
tracking this in Rook issue https://github.com/rook/rook/issues/9185.
Add a warning to the upgrade doc about this.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-11-18 10:04:25 -07:00
parth-gr aea2856566 mon: set cluster name to mon cluster
the mon cluster clusterInfo is intiated seprately,
and misses out to set the cluster name and use default name as testing
from AdminClusterInfo.

Part-of: https://github.com/rook/rook/issues/9159
Signed-off-by: parth-gr <paarora@redhat.com>
2021-11-18 20:28:51 +05:30
Blaine Gardner d62abfd98d Merge pull request #9201 from BlaineEXE/move-rbd-csi-nodeplugin-clusterrolebinding-in-charts
helm: move rbd-csi-nodeplugin from PSP resources
2021-11-17 17:43:28 -07:00
Blaine Gardner dd85bd2d33 helm: move rbd-csi-nodeplugin from PSP resources
Move the rbd-csi-nodeplugin ClusterRoleBinding from the chart PSP
resources to its proper place with the rest of the operator-wide
ClusterRoleBindings.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2021-11-17 16:34:54 -07:00
Mara Sophie Grosch 00a5debbab monitoring: allow overriding monitoring labels
The templates for the mgr-generated ServiceMonitor and PrometheusRule objects included the labels
prometheus and team, making it impossible to override them as user.

This adds a new method `OverwriteApplyToObjectMeta` to
pkg/apis/ceph.rook.io/v1.Labels, which, contrary to the existing
`ApplyToObjectMeta` method, overwrites existing labels.

Closes: https://github.com/rook/rook/issues/8502
Signed-off-by: Mara Sophie Grosch <littlefox@lf-net.org>
2021-11-17 17:32:05 +01:00
Travis Nielsen 6b32755db7 Merge pull request #9190 from subhamkrai/fix-dev-doc
docs: remove old commitlint component `ceph` from doc
2021-11-17 09:18:31 -07:00
subhamkrai 951940805d docs: remove old commitlint component ceph from doc
Removing `ceph` component from doc as component
`ceph` was removed from commitlint bot earlier.

Signed-off-by: subhamkrai <srai@redhat.com>
2021-11-17 21:24:28 +05:30
Travis Nielsen 075b82b0f8 Merge pull request #9191 from Omar007/fix/blkdevmapper-openshift-fallback
osd: add privileged support (back) to blkdevmapper securityContext (work-around)
2021-11-17 07:54:04 -07:00
Omar Pakker 8f9055809f osd: add privileged support (back) to blkdevmapper securityContext (work-around)
The blockdevmapper securityContext was changed to request a minimal set of
required capabilities for its operation and drop running as privileged.
While the base change works and is valid in terms of the container's copy operation,
it turns out that OpenShift may require some additional configuration not
currently covered by the limited securityContext and the capabilities granted.

To not break those OpenShift deployments, make the blkdevmapper securityContext
listen to the ROOK_HOSTPATH_REQUIRES_PRIVILEGED flag again to set privileged mode.
This flag is true on OpenShift deployments and running as privileged
works around the (missing) configuration problem for now.
To properly drop privileged completely some additional investigation needs
to be done on OpenShift deployments without relying on privileged execution.

Signed-off-by: Omar Pakker <Omar007@users.noreply.github.com>
2021-11-17 12:25:13 +01:00
Jiffin Tony Thottan aba50d3ca9 object: add support in RGW to communicate vault with TLS
From ceph v16.2.6 onwards the vault TLS suppport in RGW was added,
include similar changes for RGW.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2021-11-17 10:19:28 +05:30
Travis Nielsen 2d03a8e30f Merge pull request #9181 from travisn/helm-ingress-https
helm: Set correct ingress endpoint protocol
2021-11-16 10:46:21 -07:00
Travis Nielsen ae89658b2f helm: set correct ingress endpoint protocol
In the helm chart, the ingress for the dashbard was always referring
to the http-dashboard port on the dashboard service. If ssl is enabled
the https-dashboard port must be specified, or else the dashboard
will not be available through the ingress.

The default is also changed from http to https when the dashboard
is installed through the cluster helm chart.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-11-15 15:09:20 -07:00
Travis Nielsen bb7306e6ee Merge pull request #9178 from travisn/master-doc-links
docs: generate correct doc links to master github branch
2021-11-15 14:36:14 -07:00
Travis Nielsen ad2a1eb2ec docs: generate correct doc links to master github branch
The latest docs should link to the master examples on github.
Only the docs were renamed to latest, but not the github branch.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-11-15 13:49:17 -07:00
Travis Nielsen 54a2b56b0c Merge pull request #9167 from parth-gr/mons-CRname
mon: update mons Cluster ClusterInfo with CR name
2021-11-15 11:11:09 -07:00
Sébastien Han 2a5cbe9401 Merge pull request #9140 from travisn/default-s5-arch
build: Default to amd64 arch for the the s5cmd tool
2021-11-15 16:42:33 +01:00
Sébastien Han c5783a77cf Merge pull request #9163 from y1r/add-context-k8sutil-node
core: add context parameter to k8sutil node
2021-11-15 16:25:13 +01:00
Travis Nielsen 716baf7785 Merge pull request #9158 from Omar007/fix/blkdevmapper-capabilities
osd: set blkdevmapper capabilities
2021-11-15 08:05:12 -07:00
Sébastien Han d5643b439d Merge pull request #9161 from y1r/add-context-k8sutil-daemonset
core: add context parameter to k8sutil daemonset
2021-11-15 15:14:44 +01:00
Sébastien Han f44b943a7c Merge pull request #9162 from y1r/add-context-k8sutil-job
core: add context parameter to k8sutil job
2021-11-15 15:13:54 +01:00
Satoru Takeuchi 07e1ca678a Merge pull request #9168 from cybozu-go/core-fix-unnecessary-option
core: remove unnecessary option
2021-11-15 22:50:08 +09:00
Yuichiro Ueno 4cc716a7ca core: add context parameter to k8sutil node
This commit adds context parameter to k8sutil node functions. By this,
we can handle cancellation during API call of node resource.

Signed-off-by: Yuichiro Ueno <y1r.ueno@gmail.com>
2021-11-15 22:45:59 +09:00
Yuichiro Ueno 3799542356 core: add context parameter to k8sutil job
This commit adds context parameter to k8sutil job functions. By this, we
can handle cancellation during API call of job resource.

Signed-off-by: Yuichiro Ueno <y1r.ueno@gmail.com>
2021-11-15 22:39:08 +09:00
parth-gr 242f98e94b mon: update mons Cluster ClusterInfo with CR name
the mons re-initialize its ClusterInfo which results in missing
CR name on the ClusterInfo
Set the CR name to the mons cluster ClusterInfo

Closes: https://github.com/rook/rook/issues/9159
Signed-off-by: parth-gr <paarora@redhat.com>
2021-11-15 18:52:55 +05:30
Omar Pakker 4726d39688 osd: set blkdevmapper capabilities
The OSD blkdevmapper init container relies on the MKNOD capability,
which it does not actually request.
As a result, deployments fail on Kubernetes clusters that do not
happen to assign this capability to all containers by default.
Solve this by updating the container spec securityContext to
explicitly request the capability it relies on.

Closes: https://github.com/rook/rook/issues/9156
Signed-off-by: Omar Pakker <Omar007@users.noreply.github.com>
2021-11-15 13:11:19 +01:00