Commit Graph
2033 Commits
Author SHA1 Message Date
Peter Dahlberg ed89e36c9f helm: allow custom labels and annotations for storage classes
Storage classes were missing the possilbilty to attach custom labels and
annotations. This change brings it on par with VolumeSnapshotClass
objects.

Signed-off-by: Peter Dahlberg <catdog2@tuxzone.org>
(cherry picked from commit de82481d80)
2024-06-12 13:34:29 +00:00
Travis Nielsen dec8fed5dc mon: allow overriding the mon endpoint with annotation
For an advanced network configuration, the mon endpoints
expected for the ceph public network may be different from
the public IP address that is set on the K8s node. When
host networking is enabled in rook, the IP address of the
node was only allowed previously. Now, the IP address
used for a mon when scheduled on a node can be determined
by setting an annotation on each node where mons can run:
    network.rook.io/mon-ip: <ip-address>
This annotation must be set before the mons are created.
Mon endpoints cannot be changed after they are already
running.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit e90ed3b912)
2024-06-06 15:31:01 +00:00
Travis Nielsen 155eec15ad build: set release version to v1.14.5
For the patch release update the examples and documentation
to v1.14.5

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-05-30 13:33:03 -06:00
Travis Nielsen ad70539d28 osd: configure cluster full settings when osds fill up
When the clusters reach full, nearfull, or backfill full thresholds
ceph will raise health warnings and stop allowing IO or backfill
depending on the threshold. These settings require special ceph
commands instead of being generic ceph config. Allow these settings
to be set from the CephCluster CR in the spec.storage
section.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit e479b051bc)
2024-05-30 18:52:35 +00:00
sp98 ad9f34bdd5 mgr: setting balancer mode from cluster spec
This PR adds a `settings` option in the `Module` struct
which can help users to futher customize the `balancer`
module with a differet mode.

Signed-off-by: sp98 <sapillai@redhat.com>
(cherry picked from commit 1ad37ecce9)
2024-05-29 16:45:02 +00:00
Onur C. Cakmak 3a97692d08 docs: add a note for NixOS and containerd
Add a note to remove LimitNOFILE setting in containerd service configuration.

This setting causes multiple issues such as slow `ceph status` commands (and failing healthchecks),
various timeouts, and mons failing/timing out.

Upstream containerd already removed the setting. NixOS hasn't incorporated the change.

This note can be removed once https://github.com/NixOS/nixpkgs/pull/313507 makes it to a stable release.

Signed-off-by: Onur Cakmak <occ@occ.me>
(cherry picked from commit d1e139cdb3)
2024-05-28 19:15:52 +00:00
Michael Adam 98732a50f8 docs: document how to have StorageClass consume Rados Namespace
closes: https://github.com/rook/rook/issues/13214

Co-authored-by: Travis Nielsen <tnielsen@redhat.com>
Co-authored-by: Blaine Gardner <b.blaine.gardner@gmail.com>
Signed-off-by: Michael Adam <obnox@samba.org>
(cherry picked from commit 8e7ac95f97)
2024-05-20 13:14:13 +00:00
Travis Nielsen 3e83bd278e build: update the release version to v1.14.4
For the patch release update the docs and manifests
to v1.14.4

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-05-16 13:42:54 -06:00
yati1998 5fb14b549e docs: update documentation for volume clone
after cross-storageclass clone/restore, now we can
clone across different storageclass.
this commit updates the documentation indicating
the same.

Signed-off-by: yati1998 <ypadia@redhat.com>
(cherry picked from commit 945da179e2)
2024-05-16 15:01:25 +00:00
Travis Nielsen 5a34cd9f9e osd: add cephcluster status for legacy osds to replace
LVM-based OSDs on PVCs are legacy and are not well tested.
Therefore, we add status to the cephcluster CR that at least
gives a clue that the OSDs should be replaced.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 3628e83892)
2024-05-13 14:31:14 +00:00
Liang Zheng e617463811 ci: add misspell linter
add misspell linter to check all source codes

Signed-off-by: Liang Zheng <zhengliang0901@gmail.com>
(cherry picked from commit e76dd03f54)
2024-05-07 15:42:59 +00:00
Michael Adam d6855803a8 docs: improve wording in BlockPoolRados Namespace CRD doc
Signed-off-by: Michael Adam <obnox@samba.org>
(cherry picked from commit 10df932d62)
2024-05-07 13:22:50 +00:00
Travis Nielsen e25de22c77 build: update release version to v1.14.3
For the patch release update the docs and examples
to v1.14.3

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-05-03 12:50:05 -06:00
Blaine Gardner 1391228b1d ci: use markdownlint to enforce mkdocs compatibility
mkdocs uses a markdown renderer that is hardcoded to 4 spaces per tab
for detecting indentation levels, including ordered- and
unordered-lists. Since we cannot easily change the renderer, begin using
a markdown linter in CI that will fail if official docs do not adhere to
the spacing rules.

As a starting point, the markdownlint config does not begin with the
default set of checks, which might overwhelm attempts to fix them.
Instead, focus on list-tab-spacing rules and a few other highly useful
checks.

markdownlint also has some gaps in its abilities that allow common Rook
doc issues to pass acceptance. However, it allows creating custom
linting plugins. Create 2 such linting plugins to check 2 things:

- all doc lines (except code blocks) must be aligned to a 4-space
  boundary, without exception. This ensures that markdown will render
  correctly with mkdocs. This unfortunately makes it possible to create
  lists that are internally aligned strangely.
- admonitions must all follow the same format of
  ```
  !!! header
      body
  ```

For the strange lists, this is allowed and renders correctly, but it
looks strange:

```md
- first bullet
- second bullet
    still second bullet
- third bullet

    has a paragraph
    of text inside

- last bullet

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit c9d99e01a0)
2024-05-01 13:52:39 -06:00
Praveen M 5d51cdd76e doc: update snapshot version
Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit da8518095d)
2024-05-01 19:48:11 +00:00
Praveen M 83caca7655 csi: remove the out-dated prerequisites
Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit 0467eb8a4c)
2024-05-01 19:48:11 +00:00
smoshiur1237 b2d1a8df88 external: restructure external cluster examples manifests
This PR will add separate directory to handle the external manifest. Here external manifests will have same namespace (rook-ceph) for external cluster.

Signed-off-by: smoshiur1237 <moshiur.rahman@est.tech>
(cherry picked from commit dab17f72a1)
2024-05-01 18:29:48 +00:00
Praveen M affdd02f1c csi: update csi sidecars' image version
Below sidecars are updated with latest available versions

csi-node-driver-registrar: v2.10.1
csi-resizer: v1.10.1
csi-provisioner: v4.0.1
csi-attacher: v4.5.1
csi-snapshotter: v7.0.2

Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit faf7837621)
2024-04-25 08:43:50 -06:00
mergify[bot] 636e74b731 Merge pull request #14122 from rook/mergify/bp/release-1.14/pr-14115
operator: support custom dashboard service labels and annotations (backport #14115)
2024-04-24 15:13:06 +00:00
Steven Fackler a60dfda70f operator: support custom dashboard service labels and annotations
Unlike other components, the Ceph dashboard Service object could not be
configured with custom labels and annotations. This can be useful when
integrating Rook into a cluster with custom controllers similarly to how
the RGW service is customized.

Signed-off-by: Steven Fackler <sfackler@gmail.com>
(cherry picked from commit 0c38dd81c2)
2024-04-23 20:22:54 +00:00
ev cdab7999d0 docs: fixing typo in ceph-object-store-crd.md
Example cephobjectstore uses wrong field name for "dnsNames".

Signed-off-by: Adam Prycki <adam.prycki@gmail.com>
(cherry picked from commit c1e727384a)
2024-04-23 16:46:43 +00:00
parth-gr 6fa4987323 doc: fix external cluster document
fixing the list numbers in external document

closes: https://github.com/rook/rook/issues/13968

Signed-off-by: parth-gr <partharora1010@gmail.com>
(cherry picked from commit fe30ac83ad)
2024-04-22 15:38:24 +00:00
Travis Nielsen edeea1d554 build: update the release version to v1.14.2
For the patch release update the examples and manifests
to v1.14.2

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-04-19 09:13:16 -06:00
subhamkrai 68b751d345 ci: add k8s 1.30 support in ci
adding support for kubernetes 1.30 in ci which released yesterday.

Signed-off-by: subhamkrai <srai@redhat.com>
(cherry picked from commit 128ec16ee6)
2024-04-19 13:31:00 +00:00
Travis Nielsen b6d4eff443 build: update the release version to v1.14.1
For the patch release update the examples and docs
to v1.14.1.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-04-17 11:47:02 -06:00
NymanRobin b30d82284b operator: make crds outputs more verbose
The following printcolumns were added

CephBlockPoolRadosNamespace: Phase,
BlockPoolName, Age
CephFilesystemSubVolumeGroup: Phase,
FilesystemName, PinningConfig, Age

Also improved the error messages in
SubVolumeGroupClient

Signed-off-by: NymanRobin <nyman.robin@gmail.com>
(cherry picked from commit 70a7e61da5)
2024-04-16 18:00:59 +00:00
sp98 f8bc7a40dc core: cephblockpoolRadosNamespace cleanup
Clean up pool images and snapshots in the
radosnamespace

Signed-off-by: sp98 <sapillai@redhat.com>
(cherry picked from commit f6b1449faa)
2024-04-12 17:13:43 +00:00
Travis Nielsen cfe61733e2 Merge pull request #14055 from rook/mergify/bp/release-1.14/pr-14036
subvolumegroup: add support for size and datapool (backport #14036)
2024-04-11 15:49:57 -06:00
mmaoyu 4c18227cd9 osd: add option upgradeOSDRequiresHealthyPGs
For check if cluster PGs are healthy before osd updates
Which helps gainning more confidence in the osd upgrades

Signed-off-by: mmaoyu <wupiaoyu61@gmail.com>
(cherry picked from commit 6d4afe23e5)
2024-04-11 20:14:32 +00:00
Madhu Rajanna 87a61fb494 subvolumegroup: add support for size and datapool
cephfs subvolumegroup supports creating svg
with quota and the datapool, This PR adds the
support for the same.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
(cherry picked from commit f57a8b6bbe)
2024-04-10 10:58:48 -06:00
sp98 93787b6a97 core: subvolumegroup clean up
Cleanup the resources created by subvolumegroup
when its deleted. Following resources will be cleaned up:
- OMAP value
- OMAP keys
- Clones
- Snapshots
- Subvolumes

Signed-off-by: sp98 <sapillai@redhat.com>
(cherry picked from commit ef00fdac53)
2024-04-10 13:29:19 +00:00
Blaine Gardner 0dc3dfec48 doc: fix network provider bullets and numbering
Most bullets and numbering in the network providers doc (sub-doc of
CephCluster CR) wasn't rendering properly on the web. Fix by making sure
there is a blank line before each numbered/bulleted section. And make
sure nested numberings are indented 4 spaces.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit ad9e0976e2)
2024-04-08 17:23:56 +00:00
Blaine Gardner 1fdff81e26 doc: make CSI host netowrking required
The network providers doc, including the holder pod migration sections,
were developed with the understanding that CSI could be placed into pod
networking mode if desired by users. In reality, this hasn't been
supported due to bugs.

This allows streamlining the holder pod migration sections to no longer
need to document for users what to do if they use CSI in pod network
mode.

Rook will continue to have the `CSI_ENABLE_HOST_NETWORK` config
available as an undocumented value. This can allow users who desperately
cannot use host networking to still use pod networking, though this will
mean any CSI node plugin updates could stall mounts for running apps.
Thus we do not support it.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit 519c7e8911)
2024-04-04 19:58:58 +00:00
Travis Nielsen 606cef3999 build: set the release version to v1.14.0
For the minor release update the example manifests and docs
to v1.14.0.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-04-03 12:49:45 -06:00
Travis Nielsen 68b66ca937 helm: separate repository and tags for csi images
The csi images in the operator helm chart previously were a single
image name including the repository and tag in a single string.
Now the repository and tag values are separated to allow for
greater customization of the repository from the version tags.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
(cherry picked from commit 64f71d9258)
2024-04-03 18:17:31 +00:00
Liang Zheng ded63dab1c rgw: fix typo on crd endpoint address
The rgw endpoint address had a typo

Signed-off-by: Liang Zheng <zhengliang0901@gmail.com>
(cherry picked from commit 76d3d85628)
2024-04-03 14:55:39 +00:00
subham rai b8b0377245 Merge pull request #14012 from rook/mergify/bp/release-1.14/pr-14008
docs: fix network configuration bullets (backport #14008)
2024-04-03 10:43:56 +05:30
Blaine Gardner d30c08da9a doc: update release notes and upgrade docs for v1.14
Update pending release notes, upgrade docs, and supplementary
documentation relevant for upgrades for the upcoming Rook v1.14 release.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
(cherry picked from commit 0736d7613d)
2024-04-02 18:32:52 +00:00
Mathieu Parent 721486f2f2 docs: fix network configuration bullets
Signed-off-by: Mathieu Parent <math.parent@gmail.com>
(cherry picked from commit 6cd3b55861)
2024-04-02 18:04:27 +00:00
Praveen M 2c7e0f1381 csi: update cephcsi to v3.11.0 release
This commit updates default cephcsi driver version
to v3.11.0

Signed-off-by: Praveen M <m.praveen@ibm.com>
(cherry picked from commit f985018f57)
2024-04-02 16:50:39 +00:00
Travis Nielsen ddc133daf6 build: update the release version to v1.14.0-beta.0
For the new release branch update the examples and docs
to v1.14.0-beta.0.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-03-27 13:18:53 -06:00
Travis Nielsen 61de68f3e2 Merge pull request #13955 from parth-gr/external-topology
doc: update the topology document for external mode
2024-03-27 11:07:31 -06:00
Travis Nielsen fd54644ebb Merge pull request #13977 from parth-gr/revert-pool
external: remove replicated 3 pool for the rbd sc
2024-03-27 11:04:55 -06:00
parth-gr 58f96b6aee external: remove replicated 3 pool for the rbd sc
csi pr get merged ceph/ceph-csi#4459
so, This reverts commit 812a9c02b0.
The csi PR removes the dependency of the pool parameter from the
rbd storage class if the topology pools are passed,
so removing them in the examples and making it optional

Signed-off-by: parth-gr <partharora1010@gmail.com>
2024-03-27 21:48:48 +05:30
parth-gr 078487a7a6 doc: update the topology document for external mode
we need to update the operator configmap
to get enable the topology provisioning

Signed-off-by: parth-gr <partharora1010@gmail.com>
2024-03-27 19:21:03 +05:30
parth-gr a72e029459 csi: add a new flag to disable csi driver
added a new flag ROOK_CSI_DISABLE_DRIVER
to disable csi controller.

Signed-off-by: parth-gr <partharora1010@gmail.com>
2024-03-22 18:22:51 +05:30
Travis Nielsen 3a7bbe52ae Merge pull request #13821 from parth-gr/replica-1-external
external: add topologyconstraintpool support for rbd storageclass
2024-03-18 11:40:25 -06:00
parth-gr 0aa431c7e1 external: add ci and design documet
Signed-off-by: parth-gr <partharora1010@gmail.com>
2024-03-18 22:17:25 +05:30
Blaine Gardner e41366bbcd Merge pull request #13890 from BlaineEXE/csi-disable-holder
csi: allow force disabling holder pods
2024-03-14 10:27:06 -06:00
Blaine Gardner 4f555dbbcb csi: allow force disabling holder pods
Add new CSI_DISABLE_HOLDER_PODS option for rook-ceph-operator.
This option will disable holder pods when set to "true".

In the long term, Rook plans to deprecate the holder pods entirely.
This new option will allow users to choose to migrate their clusters to
non-holder clusters when they are ready and able, giving them time to
gracefully migrate before the holders are permanently removed.

This option is set to "false" by default so that upgrading users don't
have their CSI pods modified unexpectedly.
Example manifests are modified to set this value to true so that new
clusters will not deploy holder pods.

Migrating users are provided with documentation to instruct them about
the new requirements they need to satisfy to successfully remove holder
pods, a procedure for migrating pods from holder to non-holder mounts,
and a way to delete holder pods once they are no longer in use.

When users set CSI_DISABLE_HOLDER_PODS="true", the CSI controller will
no longer deploy or update the holder pod Daemonsets, but it does not
delete any existing Daemonsets. This allows already-attached PVCs to
continue operating normally with their network connection continuing to
exist in the current holder pod. This is critical to avoid causing
ia cluster-wide storage outage.

More info: https://github.com/rook/rook/issues/13055

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2024-03-14 09:53:08 -06:00