The default object store ingress port will be set to the
securePort (if set), or the gateway port field. To override
that default, a new port field can be set on the ingress.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
The networking.k8s.io/v1beta1 has been obsolete since
K8s 1.22, long out of the supported versions, so we
can remove those legacy checks and require the v1
networking api.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
if no multisite is used, rook creates the zone,
in the same name as cephobjectstore cr,
But cephobjectstore zone spec
shows name as empty string("")
Which is confusing for the end user, so
to remove the confusion by updating the
api defination
Signed-off-by: parth-gr <partharora1010@gmail.com>
this commit add support for mirroring b/w implicit rados namespace and
defined rados namespace. To support this, rook will treat `<implicit>`
name on cephblockpool as `""` empty string. This will allow mirroring
b/w implicit and defined radosnamespace.
Signed-off-by: subhamkrai <srai@redhat.com>
The change creates and manages an Endpoints resource
with the current Ceph monitor (mon) IPs, allowing
clients to resolve mon IPs via DNS without relying
on the rook-ceph-mon-endpoints ConfigMap.
Signed-off-by: Patryk Rostkowski <patrostkowski@gmail.com>
allows selecting Read Affinity policy from the ObjectStore API
aets `--crush-location=host` for RGW daemons.
Signed-off-by: Santosh Pillai <sapillai@redhat.com>
The rgw endpoint validation requires the zone flags to be passed
when the admin user is in a non-default zone.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
One ore more OSDs can be down and PGs can still be active+clean (data
was rebalanced to other available OSDs). This PR sets
maxunavailable=1+downOSDs to allow one healthy to be drained.
Signed-off-by: Santosh Pillai <sapillai@redhat.com>
When host network is enabled, the operator needs to set the
dns policy to ClusterFirstWithHostNet so the request to the
rgw endpoint will resolve properly.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Implements #14733. Allows to set IDs of external mons to
Cluster CRD. Rook will not remove external mons from quorum
and will add external mon addresses to mon endpoints.
Use-case for external mon is to maintain quorum for 2-AZ
k8s cluster in case of zone outage.
Signed-off-by: Artem Torubarov <artem.torubarov@clyso.com>
in the ci lint file, we use a dependency
from a 3rd party lint, which updates
the black package, The underlined python script
file was not updated to the latest formatting,
so re-format the file and update the
3rd party dependency version
Signed-off-by: parth-gr <partharora1010@gmail.com>
The operator settings loaded from the configmap have proven
inefficient for load time and frequently checking the configmap.
To avoid this ineffenciency, the configmap is only loaded once
each time it is created or updated. The values in the configmap
are applied as environment variables, which then are very efficient
to query throughout the various controllers, without needing
to be concerned about loading the configmap again.
Co-authored-by: Dmitry Mishin <dmitry.mishin@gmail.com>
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
Kubernetes permits wildcards as leading members of this field, but if it is not quoted, then there will be a YAML parsing error.
Signed-off-by: Fabian Ponce <me@fabianponce.com>
I have realised that in cephECBlockPool is hardcocded 'rook-ceph' namespace, so this chart is not working if cluster has been created in different namespace. This change replaces hardcoded namespace with templated one.
Signed-off-by: Karol Gongola <karol.gongola@gmail.com>
This patch adds `list` and `watch` verbs to cephfs and rbd
provisioner roles for CSIAddonNode objects.
Signed-off-by: Niraj Yadav <niryadav@redhat.com>
CSI addons sidecar requires clusterrole permission for Tokenreview
Tokenreview is a cluster scoped API
Signed-off-by: Bipul Adhikari <badhikar@redhat.com>
Implement an allow list mechanism that disables potentially unsafe OBC
fields by default. OBC fields beyond `maxObjects` and `maxSize` don't
neatly fit into the OBC framework as it was originally envisioned and
implemented.
Some of the newly added configs could allow users to cause confusion for
themselves. Others might allow users to hijack others buckets. Some
might allow bricking the entire S3 store.
Out of an abundance of safety, allow-list the known-safe options by
default, and require administrators to enable potentially troublesome
options via the new operator-level config
`ROOK_OBC_ALLOW_ADDITIONAL_CONFIG_FIELDS`.
Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
If there are at least three OSDs on a single node, we should
treat it as a potential production cluster and perform
the ok-to-stop checks during reconcile. Otherwise,
it may cause instability during upgrades on
single-node clusters.
Signed-off-by: Travis Nielsen <tnielsen@redhat.com>