Commit Graph
3904 Commits
Author SHA1 Message Date
Lucas Henry 87bc3dfcdc operator: remove confusing successful message when reconciling CephObjectStoreUser
When creating a CephObjectStoreUser with a value spec.store that refers to an
unexisting CephObjectStore, after the reconciliation loop the
CephObjectStoreUser is in the ReconcileFailed state. However, a
ReconcileSucceeded event is created with this message:

"successfully configured CephObjectStoreUser"

The success message results of the return value for the error which is currently
`nil`. Let's replace it with the error message.

Signed-off-by: Lucas Henry <polyedre@disroot.org>
2023-06-20 11:02:04 +02:00
YZ775 ed9da20d68 operator: add ceph image version label to PVC
This PR makes Rook operator to add a label on PVC that contains an image version of Ceph when creating an OSD.

Signed-off-by: YZ775 <yuzuki-mimura@cybozu.co.jp>
2023-06-19 08:19:46 +09:00
Sachin Prabhu 8705f2b37e nfs: set correct kerberos domain in /etc/idmapd.conf
We add a new field domainName to the Kerberos section. The field is used
to setup /etc/idmapd.conf with the domain name. This allows idmapper to
map to kerberos credential to the correct uid/gid.

We add Spec.Security.Kerberos.DomainName to the CRD

Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
2023-06-09 18:06:45 +01:00
Jiffin Tony Thottan 6ea24cb11b object: add ssl ref in cephobjectstore user secret
There is no reference for ssl in cephobjectstore Secret, so users won't
have much idea why tls secret need to used. Hence give reference
object stores tls secret ref in the Secret.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2023-06-09 12:42:35 +05:30
Tarun Gupta Akirala df0ce26923 core: typo in logs to print fullname of CephCluster
printing namespace along with name would make debugging easier

Signed-off-by: Tarun Gupta Akirala <takirala@users.noreply.github.com>
2023-06-07 14:42:00 -07:00
avanthakkar 541d091f9c core: use ROOK_CEPH_MON_HOST from config store in OSD pods too
Signed-off-by: avanthakkar <avanjohn@gmail.com>

Volume "ceph-daemons-sock-dir" is coming empty in case if dataDirHostPath,
which is the case for osd onPVC. Fix the volume creation by using the
ceph cluster spec dataDirHostPath, which allows to run socket commands
on osd containers.
2023-06-01 21:09:58 +05:30
avanthakkar 41a8294510 core: cleanup exporter resources
Cleanup exporter daemon even if ceph version is not supported along with other resources like
metrics service and service monitor.
Signed-off-by: avanthakkar <avanjohn@gmail.com>
2023-06-01 02:04:17 +05:30
Travis Nielsen 6417ed4047 Merge pull request #12256 from thotz/add-missing-caps-object-user
object: add missing caps for object store user
2023-05-30 16:37:18 -06:00
Travis Nielsen 351751ac72 Merge pull request #12302 from Javlopez/feature/11429-use-default-for-logging-to-stderr
core: use -default-* flags
2023-05-30 13:05:02 -06:00
Javier 02e17196f2 core: use -default-* flags
enable flags with --default prefix for --log-to-stderr, --mon-cluster-log-to-stderr, --err-to-stderr, and --log-stderr-prefix

Signed-off-by: Javier <sjavierlopez@gmail.com>
2023-05-30 11:52:26 -06:00
Travis Nielsen 44a986396e Merge pull request #12293 from ulagbulag/fix-rook_cluster-bug-in-service-monitor
mgr: update default rook_cluster of ServiceMonitor
2023-05-30 11:10:52 -06:00
Ho Kim 42caef169f mgr: update default rook_cluster of ServiceMonitor
When deploying a cluster with Helm Chart, if the namespace is not the default value `rook-ceph`, and if the monitoring feature is enabled, then the generated ServiceMonitor's `rook_cluster` selector now follows the namespace, not the hard-coded value `rook-ceph`.

Signed-off-by: Ho Kim <ho.kim@ulagbulag.io>
2023-05-30 23:58:50 +09:00
Jiffin Tony Thottan 1f45cfa581 object: use networkspec from clusterinfo spec while running radosgw-admin
The radosgw-admin command uses the network spec from ceph cluster spec
in object context but it is not filled properly in the object package.
But with PR 10898, network spec is available in clusterinfo which can
be used directly. Also removed cluserspec from object context.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2023-05-30 11:06:03 +05:30
Jiffin Tony Thottan ad0c000e6a object: add missing caps for object store user
Lot of new caps added to rgw users, reflecting same changes on the
object store user CRD.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2023-05-26 17:36:00 +05:30
Blaine Gardner 73c39ca5b4 Merge pull request #11598 from opencmit/fix-11592
nfs: adding RGW section in ganesha.conf
2023-05-18 21:46:51 +02:00
Travis Nielsen 6cdf60a41d Merge pull request #12247 from travisn/rbd-reconcile-retry
rbdmirror: Retry reconcile if cluster not initialized
2023-05-17 17:25:54 -06:00
travisn 2877523137 rbdmirror: retry reconcile if cluster not initialized
The rbd mirror reconcile was not re-queuing the reconcile
if the cephcluster was not initialized. All other controllers
waiting for the initialization are requeuing the event,
just not the rbd mirror controller.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-05-17 15:47:17 -06:00
Travis Nielsen 9b99ab209c Merge pull request #12224 from travisn/dev-guide-review
docs: Dev guide review updates
2023-05-17 14:29:20 -06:00
Satoru Takeuchi 13e4464fed osd: supoprt expand lvm osd on pvc
The expansion of OSD on PVC is only supported in raw mode OSD.
It's nice to support lvm mode osd too.

Closes: https://github.com/rook/rook/issues/10835

Signed-off-by: Satoru Takeuchi <satoru.takeuchi@gmail.com>
2023-05-16 00:23:09 +00:00
travisn 0f6b099403 docs: remove obsolete comments about old versions
Remove old mentions of rook or ceph versions that
are no longer relevant.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-05-11 11:45:04 -06:00
Travis Nielsen fd935f19a7 Merge pull request #12216 from travisn/no-service-mon-default
monitoring: Skip creating the service monitor for the exporter if monitoring is not enabled
2023-05-10 09:56:23 -06:00
travisn 1b80767877 monitoring: no service monitor by default for exporter
The exporter is enabled by default, but the service monitor
can only be enabled if prometheus CRDs are available. The
monitoring.enabled must be set to true as the flag that
prometheus is available and the service monitor should
be created.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-05-09 14:52:40 -06:00
avanthakkar 8a8eb863d0 core: add termination grace period for exporter pods
Shorten the termination time for exporter pod before it
gets deleted to avoid crashing of pod.
Signed-off-by: avanthakkar <avanjohn@gmail.com>
2023-05-10 02:16:12 +05:30
travisn 92a0ab37e3 monitoring: configurable option to disable prometheus metrics
The prometheus mgr module and ceph exporter can now be optionally
disabled by the monitoring.metricsDisabled setting in the
CephCluster CR. These will not be disabled by default, rather
than the mgr module being disabled by default from v1.11.4.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-05-05 16:04:51 -06:00
Madhu Rajanna 6f30700f5e core: disable controller runtime metrics server
As we are not using the controller runtime
metrics we dont even need to start the server
as its just uses extra resouces and its not
much useful.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-05-05 11:02:47 +02:00
Madhu Rajanna 1139cefc94 core: unset all encryption configuration before setting
if the configuration is already set in the ceph
database, using `ceph config assimilate-conf`
will add the key and value if its missing but
it wont update the value if the key is already
present, To fix this problem we can remove the
key and add all the configurations once again.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-05-03 18:15:45 +02:00
Blaine Gardner 6500c11d57 nfs: pare down config file volume sources
Pare down the available volume sources for NFS config files so that the
CRD isn't unnecessarily huge. This allows us to recommend
`kubectl apply` again in the upgrade doc.

Size of the NFS CRD is reduced by approximately 60%.

Signed-off-by: Blaine Gardner <blaine.gardner@redhat.com>
2023-05-02 11:34:24 -06:00
parth-gr ed61d25fc3 mgr: fix ceph dashboard login issue
Dashboard ac-user-create cmd was taking more time
then the usual ceph command to run,
So increased the timeout to run the cmd, and
now dashboard admin user is sucessfully created

Closes: https://github.com/rook/rook/issues/12113
Signed-off-by: parth-gr <paarora@redhat.com>
2023-05-02 19:43:53 +05:30
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
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
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
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
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
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