Commit Graph
5036 Commits
Author SHA1 Message Date
Javier 661e476969 docs: auto-generate the documentation for CRDs
add generate-crd-docs.sh tool for auto-generate the documentation for CRDs automatically

Closes: #1873
Signed-off-by: Javier <sjavierlopez@gmail.com>
2023-05-01 19:23:27 -06:00
Travis Nielsen 844712a989 Merge pull request #12137 from travisn/active-mgr-default
mgr: Default to active mgr label
2023-04-25 10:31:12 -06:00
travisn db04b127b0 core: remove obsolete journal size config value
The journal size was only applicable to the filestore OSD
format which has not been supported by rook since v1.2.
Remove the remaining obsolete setting from the examples and
code.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-04-24 15:54:53 -06:00
travisn 1fa3c5ae18 mgr: default to active mgr label
The active and standby labels are updated on the mgr pods
by the mgr sidecar. In the case of a single mgr, there is
not sidecar, so the dashboard and other mgr services were
not available when there was a single mgr. Now the mgr
pod will default to the active mgr status label so that
the single mgr case will succeed. In the case of two mgrs,
the sidecar will immediately update the standby mgr to
remove the active status label.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-04-24 14:47:15 -06:00
Travis Nielsen 9794feba7c Merge pull request #12075 from sp98/obc-watcher
core: Skip OBC controllers based on env variable
2023-04-24 10:28:12 -06:00
Travis Nielsen 4ef0bbe4c5 Merge pull request #11976 from koor-tech/bugfix/issue-10340-allow-scanning-devices-with-filter
osd: allow scanning devices with filter
2023-04-24 09:25:05 -06:00
sp98 e87338fbc4 core: skip OBC and Notification controllers
Skip running Object Bucket and Object bucket notification
controllers based on env variable.

Signed-off-by: sp98 <sapillai@redhat.com>
2023-04-24 19:16:06 +05:30
Javier 884d5e9855 osd: allow to use filter device
this feature is to allow the use of filters using the deviceFilter flag
by skipping devices that do not match the filter

Closes: #10340
Signed-off-by: Javier <sjavierlopez@gmail.com>
2023-04-21 13:13:59 -06:00
avanthakkar 32b2445ee4 core: disable exporter service
Create the exporter service only if exporter pods are created.
Signed-off-by: avanthakkar <avanjohn@gmail.com>
2023-04-21 15:32:56 +05:30
Sachin Prabhu d3636aaf3e nfs: set nsswitch.conf to lookup local files
When using sssd, the /etc/nsswitch.conf should also include local files
for lookups. This is required when looking up uid 0 and the root user
which are not handled by ldap or other sources.

Closes: https://github.com/rook/rook/issues/11925
Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
2023-04-14 12:31:12 +01:00
Sachin Prabhu 08d83a33cd nfs: do not restrict search domain to localhost
Adding the search domain localhost causes lookup failures.

Many DNS servers have a wildcard entry *.localhost which returns
127.0.0.1. Adding a "search localhost" to resolv.conf appends a
".localhost" for every host lookup for which the DNS server returns
127.0.0.1 which causes failures further down the execution path.

example: with localhost in the search domains
 # ping google.com
PING google.com.localhost (127.0.0.1) 56(84) bytes of data.
64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.071 ms

Closes: https://github.com/rook/rook/issues/11870
Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
2023-04-14 12:31:12 +01:00
avanthakkar 3e46522423 core: disable exporter for Ceph v17.2.6
The expected ceph version for exporter is changed temporarily because
some regression was detected in Ceph version 17.2.6.
Thus, disabling ceph-exporter for now until all the regression are fixed.

Signed-off-by: avanthakkar <avanjohn@gmail.com>
2023-04-13 02:15:36 +05:30
travisn 609ac91cb1 core: update default image to ceph v17.2.6
With the release of ceph v17.2.6, the examples and the base
image for the operator are updated to pick up the latest
and greatest.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-04-11 14:07:11 -06:00
sp98 9e8e85d68b core: use clusterID for service nslookup
use ClusterID of the k8s cluster while doing nslookup of the
exported mon or osd service IP

Signed-off-by: sp98 <sapillai@redhat.com>
2023-04-11 15:24:08 +05:30
sp98 aefe0054c4 core: add clusterID to MCS spec
ClusterID uniquely identifies a cluster. It is used as a prefix to
nslookup exported services.
For example: <clusterid>.<svc>.<ns>.svc.clusterset.local

Signed-off-by: sp98 <sapillai@redhat.com>
2023-04-11 15:17:21 +05:30
Travis Nielsen 9f6923adfe Merge pull request #11932 from zhucan/fix-11931
mgr: failed to update the port of dashboard
2023-04-06 07:59:24 -06:00
zc caf7b8c753 mgr: failed to update the port of mgr's dashboard
if port was used by other daemon,the dashboard will start failed and the status of the ceph will be err,then we update the port to a unused port,the operator can not deal with it

Signed-off-by: zc <zc@zcdeMacBook-Pro.local>
2023-04-06 14:35:39 +08:00
Shachar Sharon 7b28f1de05 nfs: add support for nfs-ganesha metrics monitoring
NFS-Ganesha (as of V5-dev.2 [1]) supports Prometheus monitoring from
within the NFS server itself. It provides metrics for both connected
clients and active exports, via TCP port 9587. Expose those metrics via
existing nfs k8s-service.

[1] https://github.com/nfs-ganesha/nfs-ganesha/commit/b6c59df5a0b8a3ae5b2a87446f8906cb321ee026

Signed-off-by: Shachar Sharon <ssharon@redhat.com>
2023-04-02 17:57:30 +03:00
Travis Nielsen e85ef37de9 Merge pull request #11975 from thotz/bucket-notification-use-obc-from-rook
object: check obc provisioner for bucket notification
2023-03-31 15:14:24 -06:00
Travis Nielsen 87e836424e Merge pull request #11980 from thenamehasbeentake/support_disable_prometheus_module
mgr: disable the prometheus module by crds
2023-03-31 08:16:49 -06:00
xiaobaowen e7254c2a1b mgr: disable the prometheus module by crds
Signed-off-by: xiaobaowen <xiaobaowen@deeproute.ai>
2023-03-31 20:49:22 +08:00
Jiffin Tony Thottan 01a3dd0baf object: check obc provisioner for bucket notification
obc-label-controller needs to check only obc provisioned by Rook operator.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2023-03-31 14:56:18 +05:30
Travis Nielsen 68fa240a1e Merge pull request #11993 from heliochronix/ipv6-msgr2-mon-config
core: fix config format for msgr2 ipv6 monitors
2023-03-30 08:04:38 -06:00
Travis Nielsen 305aae552b Merge pull request #11992 from travisn/ipv6-msgr2
csi: IPv6 compatibility for requiring msgr2
2023-03-29 09:15:27 -06:00
Travis Nielsen e169e7086d Merge pull request #11966 from cybozu-go/fix-node-level-deviceclass
osd: handle global or node-local device class configuration correctly
2023-03-29 08:03:48 -06:00
Miles Simpson f99a8dea3f core: fix config format for msgr2 ipv6 monitors
Signed-off-by: Miles Simpson <miles@milessimpson.com>
2023-03-28 16:45:07 -07:00
travisn bbfba5425f csi: ipv6 compatibility for requiring msgr2
The msgr2 conversion assumed the endpoints were formatted
with a single :, which is not compatible with ipv6.
Now if the endpoint ends with the v1 port, it will
simply update the prefix to v2.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-03-28 15:13:51 -06:00
Travis Nielsen 4a23260955 Merge pull request #11845 from rkachach/fix_issue_11844
mgr: use mgr_role dynamic label to tag the active ceph manager
2023-03-28 13:08:18 -06:00
Redouane Kachach f00bd790a8 mgr: using dynamic mgr_role label to implement mgr HA
Closes: https://github.com/rook/rook/issues/11844

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
2023-03-27 18:38:55 +02:00
Satoru Takeuchi 3e34ebeff8 osd: handle global or node-local device class configuration correctly
Rook uses global or node-local device class configuration if device-level
configurations doesn't exist. However, after introducing device-class
level resource configuration, rook set the default value of device class.
So global or node-level device class configuration has never been used
after that.

Closes: https://github.com/rook/rook/issues/11871
Closes: https://github.com/rook/rook/issues/11826

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2023-03-27 04:28:45 +00:00
sp98 755135582f mon: remove condition to use 6790 mon port
PR #3143 added check to retain 6790 port for mons. Now
we can remove this check in Rook 1.11.

Signed-off-by: sp98 <sapillai@redhat.com>
2023-03-23 08:44:13 +05:30
Travis Nielsen 4811bb1b22 Merge pull request #11899 from Madhu-1/fix-11805
csi: make AttachRequired as configurable
2023-03-22 07:59:39 -06:00
Madhu Rajanna 4c710de791 csi: make AttachRequired as configurable
adding a option to make AttachRequired field
as configurable and added a comment to explain
the consequences of changing the default value

resolves: #11805

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-03-22 12:55:32 +01:00
Madhu Rajanna 3017d563f2 csi: remove default-fstype for cephfs
we dont need to have fstype for cephfs
pvc, removing the unwanted argument
for cephfs.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-03-22 12:55:32 +01:00
Madhu Rajanna 4bdab21db0 nfs: add csi-attacher to NFS provisioner
Add attacher sidecar to NFS provisioner pod
to avoid mounting RWO volumes on two nodes

details: https://github.com/rook/rook/issues/10692

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-03-22 12:55:32 +01:00
Travis Nielsen 473d8f89cf Merge pull request #11950 from avanthakkar/rm-ceph-conf-dir
core: remove ceph-conf-dir volume mount from exporter
2023-03-21 12:25:02 -06:00
travisn cd94ed7ddc core: set key rotation default in code instead of crds
The defaults in CRDs cause an update and trigger a new
reconcile if the value is not set. For the key rotation
setting, the default was only being updated when the kms
feature was enabled. This update was causing the reconcile
to fail in the kms tests. With the default now in code,
the default can remain empty and no cr update will trigger
a new reconcile unexpectedly.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-03-21 11:03:56 -06:00
avanthakkar 1a000673a4 core: remove ceph-conf-dir volume mount from exporter
Remove the `ceph-conf-dir` volume and volume mount from exporter
as it's no more required to spin up exporter daemon

Signed-off-by: avanthakkar <avanjohn@gmail.com>
2023-03-21 21:16:06 +05:30
Thomas Way ef60650f09 operator: log ceph error in monstore
Closes: #11795
Signed-off-by: Thomas Way <thomas@6f.io>
2023-03-20 17:44:01 +00:00
Thomas Way 891fdb3f77 operator: use msgr2 if compression is enabled
Closes: #11795
Signed-off-by: Thomas Way <thomas@6f.io>
2023-03-20 17:43:37 +00:00
Travis Nielsen e3fa098c1d Merge pull request #11908 from thenamehasbeentake/enableRGWDashboard_by_custom
rgw: enableRGWDashboard can be configured by custom
2023-03-17 08:18:52 -06:00
Travis Nielsen fd2f5c8abe Merge pull request #11904 from parth-gr/golang-ci-lint-update
ci: update golangci-lint version as it fails for some k8s version in …
2023-03-16 10:52:13 -06:00
parth-gr 8e317ee074 ci: update golangci-lint version as it fails for some k8s version in 1.10
Closes: https://github.com/rook/rook/issues/11896

Signed-off-by: parth-gr <paarora@redhat.com>
2023-03-16 20:59:22 +05:30
root 253d4123f6 rgw: allow the rgw dashboard to be disabled
The rgw dashboard can be disabled by the setting in the
CephObjectStore `gateway.dashboardEnabled` if set to false.

Signed-off-by: xiaobaowen <xiaobaowen@deeproute.ai>
2023-03-16 22:58:32 +08:00
Ben Gao 97780c9e2f nfs: adding RGW section in ganesha.conf
wihtout RGW section, nfs daemon could not setup correctly with rgw export for rados authentication. Eventually it ends up in crash loop.
change to use double quotes for string as designated in ganesha documentation.

Bug to fix: 11592

Signed-off-by: Ben Gao <bengao168@msn.com>
2023-03-16 12:55:40 +08:00
Blaine Gardner 0b69c78b91 Merge pull request #11911 from parth-gr/external-rgw-length
rgw: don't validate objectstore lenght when cluster is external
2023-03-15 15:47:23 -06:00
Travis Nielsen c0fdcd3f40 Merge pull request #11823 from parth-gr/topology
osd: validate and remove duplicate topology
2023-03-15 12:39:17 -06:00
parth-gr 839f8d60dd rgw: don't validate objectstore lenght when cluster is external
validate the object store name only if it is not an external cluster
as external cluster won't create the rgw daemon and it's other resource
and there is some legacy external cluster which has more lenght of objectstore
so to run them successfully we are not validating the objectstore name

Signed-off-by: parth-gr <paarora@redhat.com>
2023-03-15 23:10:32 +05:30
parth-gr 89764f0371 osd: remove deprecated k8s topology label
Signed-off-by: parth-gr <paarora@redhat.com>
2023-03-14 17:28:19 +05:30
Blaine Gardner ef4c4f909a Merge pull request #11777 from taxilian/feature/nfs-hostnetwork
nfs: network mode can be set separately for cephcluster and nfs
2023-03-13 12:14:08 -06:00