Commit Graph
13292 Commits
Author SHA1 Message Date
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
Satoru Takeuchi 77e7c249cc core: remove unnecessary option
rook command doesn't interpret `logtostderr` option. It's OK to just
remove this option because `capnslog` outputs all logs to stdout
by default. It's better to keep `AddGoFlagSet()` call because
some libraries might define their own flags with Go's `flag` package.

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2021-11-15 11:53:45 +00:00
Sébastien Han 7d87de838e Merge pull request #8994 from parth-gr/external-cluster-permission
security: update auth permissions for external cluster
2021-11-15 12:32:39 +01:00
Sébastien Han ecd7fa7880 Merge pull request #9164 from y1r/add-context-k8sutil-pod
core: add context parameter to k8sutil pod
2021-11-15 11:58:36 +01:00
Sébastien Han 460cfad0de Merge pull request #9160 from y1r/add-context-k8sutil-deployment
core: add context parameter to k8sutil deployment
2021-11-15 11:44:20 +01:00
Yuichiro Ueno 0559977b8a core: add context parameter to k8sutil pod
This commit adds context parameter to k8sutil pod functions. By this, we
can handle cancellation during API call of pod resource.

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

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

Signed-off-by: Yuichiro Ueno <y1r.ueno@gmail.com>
2021-11-13 14:58:13 +09:00
Travis Nielsen c3b5d3b078 Merge pull request #9155 from travisn/latest-doc-links
docs: Fix the links from docs to github examples in master branch
2021-11-11 17:27:47 -07:00
Travis Nielsen 839fdfe95d docs: fix the links to examples in master branch
With the recent rename of master docs to the latest docs,
the links from the docs back to github need to be generated
with the latest url instead of master.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-11-11 15:32:29 -07:00
Travis Nielsen 480c7f89f2 Merge pull request #9147 from Madhu-1/fix-emp-link
doc: fix ephemeral link for rbd pod
2021-11-11 07:52:27 -07:00
Madhu Rajanna 953cabf999 docs: fix ephemeral link for rbd pod
fixed the ephemeral link for the rbd pod.
Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2021-11-11 20:04:55 +05:30
parth-gr 7d106c8e21 security: adding a cluster name suffix on ceph auth
Current auth names are inadequate for a ceph cluster
serving storage to muliple Openshift clusters
Added a clusterName as a suffix on ceph auth
principals for external cluster

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1996830
Signed-off-by: parth-gr <paarora@redhat.com>
2021-11-11 19:34:54 +05:30
Travis Nielsen 59729765bf build: default to amd64 arch for the the s5cmd tool
On mac, the docker build was failing due to an unspecified
S5CMD_ARCH. Now we default to build amd64 always and override
it if the arch is arm64.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-11-10 12:25:57 -07:00
Travis Nielsen 901263f8fd Merge pull request #9137 from travisn/raise-rgw-error
rgw: Raise errors when rgw daemon fails to be created
2021-11-10 10:00:17 -07:00
Travis Nielsen 9ecd0cbc75 rgw: raise errors when rgw daemon fails to be created
The generation of the rgw deployment spec was swallowing errors
if any issues are raised such as the tls cert not being found
as expected in some configurations. We need to fail the reconcile
so the error will be logged and the admin can identify the issue.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2021-11-10 09:13:03 -07:00
Sébastien Han f07c944aaa Merge pull request #9128 from travisn/cephfs-helm-expansion
helm: Enable cephfs volume expansion by default
2021-11-10 15:02:39 +01:00
parth-gr fc64ce3fc4 security: update rbd auth permissions for external cluster
The permissions set for ceph auth principals for
external storage are too broad, which leads to
maintenance and security risk
Modified auth principals permissions to specific pools

Closes: https://bugzilla.redhat.com/show_bug.cgi?id=1996829
Signed-off-by: parth-gr <paarora@redhat.com>
2021-11-10 14:23:04 +05:30
Blaine Gardner 9e3ee92152 Merge pull request #9081 from subhamkrai/composite-action
ci: use github composition to reduce duplication
2021-11-09 11:36:58 -07:00
Sébastien Han 7a4f3966c4 Merge pull request #9130 from leseb/fix-4968
core: add s5cmd binary to operator image
2021-11-09 17:33:31 +01:00