Commit Graph
136 Commits
Author SHA1 Message Date
Blaine Gardner c9d99e01a0 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>
2024-04-29 17:25:11 -06:00
Travis Nielsen 85b542faaf Merge pull request #14082 from momantech/master
docs: delete duplicate words and revise the names of some methods
2024-04-25 08:52:52 -06:00
Praveen M faf7837621 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>
2024-04-25 18:58:00 +05:30
momantech 496afdbad3 docs: delete duplicate words and revise the names of some methods
delete duplicate words and revise the names of some methods

Signed-off-by: momantech <cuimoman@qq.com>
2024-04-25 15:43:40 +08:00
Praveen M da8518095d doc: update snapshot version
Signed-off-by: Praveen M <m.praveen@ibm.com>
2024-04-23 08:29:34 +05:30
Praveen M 0467eb8a4c csi: remove the out-dated prerequisites
Signed-off-by: Praveen M <m.praveen@ibm.com>
2024-04-23 08:29:31 +05:30
sp98 f6b1449faa core: cephblockpoolRadosNamespace cleanup
Clean up pool images and snapshots in the
radosnamespace

Signed-off-by: sp98 <sapillai@redhat.com>
2024-04-12 21:49:49 +05:30
sp98 ef00fdac53 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>
2024-04-10 17:34:45 +05:30
Praveen M f985018f57 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>
2024-04-02 20:13:56 +05:30
Travis Nielsen 15f92a175d Merge pull request #13703 from thotz/prefix-provisioner-obc
object: provisoner prefix support
2024-03-12 12:16:45 -06:00
Travis Nielsen 9e55d0e02d doc: add space for object store formatting
The description of the object store types was improperly
formatted due to a missing newline before the bullet points.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-03-12 07:59:05 -06:00
Travis Nielsen fdacfd51c5 object: create an object store based on shared pools
Until now, an object store would create all the necessary
metadata pools and the data pool that were exclusively
for its own object store. When isolation between object
stores is necessary, this would cause many pools and
PGs to be created in the cluster, which was not
manageable.

Now one set of pools can be created to be shared
by any number of object stores. The metadata and data
between each object store is isolated by
RADOS namespaces, which by design will keep the
data safe for multi-tenancy.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2024-03-11 11:20:57 -06:00
Jiffin Tony Thottan e0768f5e5f object: provisoner prefix support
add an option to set prefix for the name of obc provisioner instead of
ceph cluster namespace.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2024-03-11 13:42:11 +05:30
Jiffin Tony Thottan b0989ee1d2 object: add rgw dns names
The virtual hosting for bucket is provided with help of `rgw_dns_name`

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2024-03-08 13:43:25 +05:30
Travis Nielsen ad3cfc1cf8 Merge pull request #13638 from sp98/azure-kms-design
doc: add support for using azure kms
2024-03-04 11:42:44 -07:00
Madhu Rajanna 43fa57fa57 csi: update sidecars to latest release
updating all the csi sidecars to the
latest release.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-03-01 18:13:38 +01:00
Sunnatillo 3ad456c6a2 build: uplift prometheus operator version to v0.71.1
This commit uplifts prometheus operator version to v0.71.1.

Signed-off-by: Sunnatillo <sunnat.samadov@est.tech>
2024-02-27 20:00:25 +02:00
sp98 6c8ba0136c doc: add support for using azure kms
Users on Microsoft Azure can make use of the Azure key
vault service rather than replying on any third party
service for KMS.

Signed-off-by: sp98 <sapillai@redhat.com>
2024-02-21 11:04:16 +05:30
Madhu Rajanna c22597a32c csi: update cephcsi image to 3.10.2
Updating the cephcsi image to 3.10.2
which is the latest released one.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-02-09 08:21:05 +01:00
travisn 27265ff279 helm: remove cpu limits from all pods
When CPU requests and limits are assigned to a pod,
the pod will be guaranteed the requests, up to the limits.
Even if there are spare CPU cycles, the pod cannot use
them. Thus, pods can be unnecessarily denied compute
when they need to burst if the limits are set.

Therefore, it is not recommended to set CPU limits
since the CPU requests are already guaranteeing that
no pod will be starved at least for its requests.

Signed-off-by: travisn <tnielsen@redhat.com>
2024-02-07 17:36:59 -07:00
Madhu Rajanna c35a8532aa csi: option to customize csi driver name prefix
For now we are using the operator namespace name
as the prefix for the csi driver, This PR provides
an option for the users if someone wants to have
their own prefix for the csi driver, if someone tries
to change the prefix for existing csi driver rook
operator will fail to reconcile the csi driver.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-01-29 10:54:25 +01:00
Madhu Rajanna 85b86efee1 csi: update csi provisioner to 3.6.3
updating csi provisioner to 3.6.3 to
as we have a bug in 3.6.2

resolves: #13475

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2024-01-17 11:02:08 +01:00
Riya Singhal ef1ee6ebae csi: update default cephcsi version to 3.10.1
This commit updates default cephcsi driver version
to v3.10.1

Signed-off-by: Riya Singhal <rsinghal@redhat.com>
2023-12-19 23:42:26 +05:30
Travis Nielsen 5c3ff3ae81 Merge pull request #13411 from nixpanic/csi-addons/v0.8.0
csi: update the CSI-Addons sidecar to v0.8.0
2023-12-19 08:39:39 -07:00
sp98 42ea2897cf mon: allow changing hostNetwork settings
Allow changing spec.network.hostNetwork settings on a running cluster
by failing over the mons

Signed-off-by: sp98 <sapillai@redhat.com>
2023-12-18 10:30:48 +05:30
Niels de Vos 1ca1257c65 csi: update the CSI-Addons sidecar to v0.8.0
Quite some improvements have been included in the recently released
v0.8.0 of the CSI-Addons sidecar for Kubernetes. Rook users will benefit
from running the latest version of the sidecar when deploying Ceph-CSI.

See-also: https://github.com/csi-addons/kubernetes-csi-addons/releases/tag/v0.8.0
Signed-off-by: Niels de Vos <ndevos@ibm.com>
2023-12-15 15:13:42 +01:00
Rakshith R a3220d827d csi: update default cephcsi version to 3.10.0
This commit updates default cephcsi driver version
to v3.10.0 and filesystem reconciler now creates
csi subvolumegroup by default.

Signed-off-by: Rakshith R <rar@redhat.com>
2023-12-06 19:57:40 +05:30
Travis Nielsen 22b95dbbfd Merge pull request #12977 from anthonyeleven/improve-csi-addons
12976 : Improve Documentation/Storage-Configuration/Ceph-CSI/ceph-csi…
2023-12-04 10:10:52 -07:00
Anthony D'Atri 59d0240676 doc: improve ceph-csi-drivers.md and lintrolling
Signed-off-by: Anthony D'Atri <anthonyeleven@users.noreply.github.com>
2023-12-01 16:10:11 -07:00
Alexander Trost 4ed35d6bd6 operator: allow setting ceph config options via ceph cluster crd
This implements the "Ceph Config via Ceph Cluster CRD" design document
as a `cephConfig:` structure on the CRD.
This also fixes the `yq` commands used to manipulate the
`cluster-test.yaml` that caused CI issues for this PR and potentially
unknowingly others.

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2023-12-02 00:05:48 +01:00
Rakshith R 59cb0dd4bf csi: add CSIDriverOptions section in cephCluster CR
This commit adds new CSIDriverOptions section in
cephCluster CR. This section contains settings
for read affinity and kernel+fuse Mount options
These settings will be injected directly into
rook-ceph-csi-config cm to be applicable per
ceph cluster.

Signed-off-by: Rakshith R <rar@redhat.com>
2023-11-29 19:34:28 +05:30
Praveen M ddf03bce6f csi: update csi sidecars' image version
csi-node-driver-registrar: v2.9.1
csi-resizer: v1.9.2
csi-provisioner: v3.6.2
csi-attacher: v4.4.2
csi-snapshotter: v6.3.2
Signed-off-by: Praveen M <m.praveen@ibm.com>
2023-11-21 14:41:57 +05:30
Madhu Rajanna d1613af35d doc: correct csi ceph.conf path
correct the csi ceph.conf path
in the documentation.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-11-17 13:38:21 +01:00
travisn 03d077aa6b core: remove support for ceph pacific
Pacific is end of life and no longer necessary to
support in Rook with v1.13.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-11-14 17:07:03 -07:00
Madhu Rajanna 5658e026cb csi: remove deprecated grpc metrics code
GRPC metrics got deprecated in cephcsi
3.7.0 and the deprecated flags will get
removed in the next release. This PR
removes the deprecated metrics code which
allow us to run with older cephcsi as well.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-11-07 11:24:17 +01:00
Travis Nielsen 72452f0558 Merge pull request #13089 from rkachach/fix_issue_second_cluster
docs: unifying namespaces handling for the second cluster creation
2023-10-25 08:00:47 -06:00
Redouane Kachach 13654d3c3d docs: unifying namespaces handling for the second cluster creation
Let's use the same technique based on 'sed' while employing two
different namespaces for the cluster and the operator when creating
the second cluster.

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
2023-10-25 09:16:48 +02:00
Redouane Kachach 745d6dc86f docs: adding specific instructions to create operator namespace
When a user attempts to adhere to the current documentation to use alternative
namespaces for both the operator and the cluster, they fail because
our common YAML file only has a single namespace for the cluster. This
change adds specific instructions to create operator namespace.

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

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
2023-10-24 16:10:35 +02:00
Bin Wang 25d89d2b68 doc: fix document about viewing dashboard outside of cluster
https://github.com/rook/rook/pull/11845 added dynamic label `mgr_role`.
The example yaml files are updated but this doc is missed.

I think it would be better to refer to `deploy/examples` but I find all
other places are not doing that. So keep it inlined to be consistent.

Signed-off-by: Bin Wang <bin.wang@mail.binwang.me>
2023-10-15 23:00:06 -04:00
Madhu Rajanna a2e0b0c46b cosi: fix problem in cosi document
Fixed a wording problem and moved the
app pod to default namespace where secret
was created and also removed the init container
from the sample as the busybox doesnt
have setup-aws-credentials CLI pre-installed.

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2023-10-12 09:13:12 +02:00
Blaine Gardner e74333ddcd Merge pull request #12633 from thotz/cosi-user-creation
object: create cosi user for each object store
2023-10-04 10:05:36 -06:00
Redouane Kachach b3dd74ea20 docs: fixing some spelling issues
closes: https://github.com/rook/rook/issues/12987

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
2023-10-03 13:50:17 +02:00
Travis Nielsen 4bf100b867 Merge pull request #12958 from subhamkrai/replace-krew-with-kubectl
docs: krew is wrong word use kubectl instead
2023-09-27 10:21:08 -06:00
subhamkrai 47c0038136 docs: krew is wrong word use kubectl instead
krew is itself a plugin and it is wrong wording
to use krew plugin intead it should be kubectl
pluging.

Signed-off-by: subhamkrai <srai@redhat.com>
2023-09-27 20:26:14 +05:30
Travis Nielsen 33fb7b801b Merge pull request #12926 from rkachach/fix_issue_12876
mgr: adding support for prometheus endpoint configuration
2023-09-27 08:09:13 -06:00
Redouane Kachach c763935436 mgr: adding support for prometheus endpoint configuration
Using the new configuration parameters prometheusEndpoint and
prometheusEndpointSSLVerify users can configure dashboard to
point to their prometheus instance.

closes: #12876

Signed-off-by: Redouane Kachach <rkachach@redhat.com>
2023-09-27 11:07:18 +02:00
Jiffin Tony Thottan a941b3c33f object: create cosi user for each object store
Create each cosi user for each object store and secret which holds
credentials.

Signed-off-by: Jiffin Tony Thottan <thottanjiffin@gmail.com>
2023-09-19 13:48:58 +05:30
travisn 40d4eedb83 docs: review the teardown guide for updated guidelines
The teardown guide is updated with the guidelines to use
third person wording and be more concise. Also, remove
the list of CRDs from the example that easily becomes
outdated as the list changes from release to release.

Signed-off-by: travisn <tnielsen@redhat.com>
2023-09-18 14:52:07 -06:00
Blaine Gardner 17f0072d9d Merge pull request #12778 from BlaineEXE/multus-allow-cidr-spec
multus: allow using NADs without inspectable CIDRs
2023-09-07 13:42:41 -06:00
Blaine Gardner 3c43268d0a multus: detect network CIDRs via canary
Change how Rook detects network CIDRs for Multus networks. The IPAM
configuration is only defined as an arbitrary string JSON blob with a
"type" field and nothing more. Rook's detection of CIDRs for whereabouts
had already grown out of date since the initial implementation.
Additionally, Rook did not support DHCP IPAM, which is a reasonable
choice for users. And more, Rook did not support CNI plugin chaining,
which further complicates NADs. Based on the CNI spec, network chaning
can result in any changes to network CIDRs from the first-given plugin.

All these problems make it more and more difficult for Rook to support
Multus by inspecting the NAD itself to predict network CIDRs. Instead,
it is better for Rook to treat the CNI process as a black box. To
preserve legacy functionality of auto-detecting networks and to make
that as robust as possible, change to a canary-style architecture like
that used for Ceph mons, from which Rook will detect the network CIDRs
if possible.

Also allow users to specify overrides for CIDR ranges. This allows Rook
to still support esoteric and unexpected NAD or network configurations
where a CIDR range is not detectable or where the range detected would
be incomplete. Because it may be impossible for Rook to understand the
network CIDRs wholistically while residing only on a portion of the
network, this feature should have been present from Multus's inception.

Improving CIDR auto-detection and allowing users to specify overrides
for auto-detected CIDRs rounds out Rook's Multus support for CephCluster
(core/RADOS) installations. No further architectural changes should be
needed for CephClusters as regards application of public/cluster network
CIDRs for Multus networks.

Signed-off-by: Blaine Gardner <blaine.gardner@ibm.com>
2023-09-07 10:12:55 -06:00