Commit Graph
13292 Commits
Author SHA1 Message Date
Travis Nielsen 1d5c590e4f Merge pull request #6307 from travisn/osd-pvc-template-name
ceph: allow osd pvc template name set to any value
2020-09-23 09:45:35 -06:00
Bhavin Gandhi 4eac82a3d0 yugabytedb: update YugabyteDB container image
This updates the YugabyteDB image to a latest stable version.

Signed-off-by: Bhavin Gandhi <bhavin7392@gmail.com>
2020-09-23 13:55:18 +05:30
Travis Nielsen 2b9e7a5335 ceph: allow osd pvc template name set to any value
The pvc template name has either been require to be empty, or one of the
expected values such as data and metadata. Those who upgrade from 1.1
may find that if they changed it to something else, their upgrade will
fail when not one of these values. If there is only a single template,
always treat it as the data template.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-09-22 15:20:54 -06:00
Sébastien Han 1d8bd3d00a Merge pull request #6286 from subhamkrai/golanci-lint-staticcheck
ceph: handle golangci-lint linter ineffassign
2020-09-22 10:16:32 +02:00
Travis Nielsen 31f756d278 Merge pull request #6284 from leseb/doc-6279
docs: common issue low aio-max-nr setting
2020-09-21 10:17:48 -06:00
subhamkrai af7ba588c6 ci: update golangci-lint with ineffassign linter
adding one more linter ineffassign in golangci-lint.
ineffassign - Detects when assignments to existing
variables are not used.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-21 14:35:00 +05:30
subhamkrai 829778f251 ceph: handle golangci-lint linter ineffassign
this commit will enable one more linter ineffassign
in golangci-lint.

This linter throws an error when variable is assigned and never used.

`golangci-lint run --disable-all -E ineffassign` is used detects ineffassign
errors only.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-21 14:31:18 +05:30
Sébastien Han 005f17036a docs: common issue low aio-max-nr setting
When the system has a low ow aio-max-nr setting, the osd prepare pod can
fail to complete. This value must be increased.
Adding a documentation section for it.

Closes: https://github.com/rook/rook/issues/6279
Signed-off-by: Sébastien Han <seb@redhat.com>
2020-09-21 09:44:45 +02:00
Travis Nielsen 02fa0eb921 Merge pull request #6228 from Madhu-1/fix-ownerref
ceph: remove owner reference set by rook on csidriver
2020-09-18 10:09:36 -06:00
Travis Nielsen bbb59d4949 Merge pull request #6274 from alimaredia/object-zonegroup-testing
ceph: add unit tests for zone group
2020-09-18 09:56:47 -06:00
Travis Nielsen 23108cc94a Merge pull request #6282 from subhamkrai/golanci-lint-deadcode
ceph: handle golangci-lint linter deadcode
2020-09-18 09:27:46 -06:00
Sébastien Han 56fa357c5d Merge pull request #6285 from varshar16/update-ceph-cluster-yaml
ceph: update about 'rook' module  in cluster.yaml
2020-09-18 16:55:14 +02:00
Varsha Rao 9a4403b55e ceph: update about 'rook' module in cluster.yaml
'rook' module is not enabled by default. So update the wrong comment about it.

Signed-off-by: Varsha Rao <varao@redhat.com>
2020-09-18 20:10:55 +05:30
subhamkrai 54fe97c988 ci: add deadcode linter in golangci-lint
this commit will add one more linter deadcode
in golangci-lint tool.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-18 16:56:37 +05:30
subhamkrai 1e9bb8e6e2 ceph: handle golangci-lint linter deadcode
this commit will enable one more linter `deadcode`
in golangci-lint .

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-18 16:53:49 +05:30
Sébastien Han d118bd38a6 Merge pull request #6278 from subhamkrai/golanci-lint-unused
ceph: handle golangci-lint linter unused
2020-09-18 12:44:37 +02:00
Sébastien Han f7c796b657 Merge pull request #6185 from subhamkrai/openshift-test
ceph: integration test on openshift
2020-09-18 12:44:18 +02:00
subhamkrai 4c11e45155 ceph: integration test on OpenShift
this commit enables the rook integration
testing capability on openshift. currently
this commit enable CephSmokeSuite testing
only.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-18 14:30:57 +05:30
Sébastien Han 204ffd4065 Merge pull request #6250 from leseb/mirroring-config
ceph: add rbd-mirror configuration
2020-09-18 09:16:08 +02:00
Ali Maredia 2ffb4ab057 ceph: add unit tests for zone group
Add unit tests for CephObjectZoneGroup, with
minor fixes to the realm unit tests.

Signed-off-by: Ali Maredia <amaredia@redhat.com>
2020-09-17 23:57:40 -04:00
Travis Nielsen b11087c198 Merge pull request #6272 from travisn/osd-patch-check
ceph: If spec diff checking fails during upgrade, assume it changed
2020-09-17 15:43:28 -06:00
Travis Nielsen 524362f9e4 ceph: avoid duplicating env vars in the osd deployments
The OSD deployments have some env vars duplicated in the pod spec for
the daemon container, which may cause the detection for patch changes
to fail. Now we ensure the env vars are not duplicated in the OSD pod
spec.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-09-17 13:43:05 -06:00
Travis Nielsen 8664cbb8dd ceph: if spec diff checking fails during upgrade, assume it changed
If the pod spec changed, we expect an upgrade to proceed for that daemon.
If the check for a changed pod spec fails, we were skipping the update
of that daemon. Instead of skipping the update, we now assume the pod
spec changed if we fail to detect the change so that we can ensure the upgrade
even if we check for upgrades too often.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-09-17 13:22:53 -06:00
subhamkrai 1c438021ce ci: update golangci-lint yaml
add one more linter rule in golangci-lint
and renaming this golangci-lint as we already have `lint`
name taken.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-17 23:00:08 +05:30
subhamkrai f9fafe62d4 ceph: handle golangci-lint linter unused
this commit will enable one more linter
in golangci-lint.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-17 22:53:24 +05:30
Sébastien Han 451622a955 ceph: add rbd-mirror configuration
Rook is now capable of configuring mirroring between sites. The
implementation works at different levels:

* CephBlockPool: which introduces a new `mirroring` configuration as well
as `statusCheck`. When turned on, Rook will enable mirroring on the
pool. It will also create a bootstrap peer token and store it in a
Kubernetes Secret. The name of that Secret can be found in the Status
field of the CephBlockPool CRD. This token can be fetched and used by
other clusters to configure the site as a peer. Mirroring can be
configured either at the pool or the image level.

* CephRBDMirror: which introduces a new `peers` configuration allowing
Rook to connect to peers by passing a Secret name. The administrator will
create a Kubernetes Secret with 2 keys: 'token' for the bootstrap peer
token and 'pool' for the name of pool. Once detected the rbd-mirror
controller will go ahead and import the peer configuration.

Pool mirroring status example:

```
status:
  info:
    rbdMirrorBootstrapPeerSecretName: pool-peer-token-test
  mirroringInfo:
    lastChanged: "2020-09-17T14:47:27Z"
    lastChecked: "2020-09-17T14:48:27Z"
    summary:
      summary:
        mode: image
        peers:
        - client_name: client.rbd-mirror-peer
          direction: rx-tx
          mirror_uuid: ""
          site_name: rhcs
          uuid: c50522a4-28a4-4bd3-ba68-e11780308882
        site_name: 91eae0dd-06b1-4d2c-91f3-1311c9df382b-rook-ceph
  mirroringStatus:
    lastChecked: "2020-09-17T14:48:27Z"
    summary:
      summary:
        daemon_health: OK
        health: OK
        image_health: OK
        states:
          replaying: 1
```

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-09-17 19:05:04 +02:00
Sébastien Han a9aad94570 Merge pull request #6276 from leseb/mgr-check-version
ceph: only run version check for monitoring
2020-09-17 16:53:25 +02:00
Travis Nielsen 5aeab4f185 Merge pull request #6260 from subhamkrai/golanci-lint-gosimple
ceph: handle golangci-lint linter gosimple
2020-09-17 08:50:21 -06:00
Sébastien Han 6f894a6de8 ceph: only run version check for monitoring
We only need to read the ceph cluster version if the cluster external
has external monitoring enabled.
This avoids any issue during upgrades from 1.3 to 1.4 when monitoring is
enabled and ceph caps have not been updated.

Signed-off-by: Sébastien Han <seb@redhat.com>
2020-09-17 15:20:46 +02:00
subhamkrai 7d03e84866 ci: adding golangci-lint tool in ci
this commit will add golangci-lint tool
in ci and currently, only gosimple linter
is enabled.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-17 15:20:49 +05:30
subhamkrai 25c116a4bd ceph: handle golangci-lint linter gosimple
this commit handles all the errors  check for
golangci-lint linter gosimple.

Signed-off-by: subhamkrai <subhamkumarrai03@gmail.com>
2020-09-17 15:10:27 +05:30
Travis Nielsen 513567f309 Merge pull request #6269 from varshar16/set-correct-ROOK_CEPH_CLUSTER_CRD_NAME
ceph: set ROOK_CEPH_CLUSTER_CRD_NAME with cluster name
2020-09-16 16:01:24 -06:00
Travis Nielsen 5971a8ba4f Merge pull request #6243 from travisn/roadmap-1.5
docs: Update the roadmap for v1.5
2020-09-16 14:49:37 -06:00
Travis Nielsen 259505cb81 Merge pull request #6252 from ashangit/merge_conf_override
ceph: merge config from rook-config-override configmap to the default global config file
2020-09-16 13:29:06 -06:00
Varsha Rao 195dee9bc2 ceph: set ROOK_CEPH_CLUSTER_CRD_NAME with cluster name
ROOK_CEPH_CLUSTER_CRD_NAME is incorrectly set to cluster namespace value

Signed-off-by: Varsha Rao <varao@redhat.com>
2020-09-16 23:53:52 +05:30
Travis Nielsen f044969702 Merge pull request #6267 from SUSE/ceph-fix-drive-group-empty-string-unmarshal-failure
ceph: fix drive group deployment failure
2020-09-16 11:05:41 -06:00
Blaine Gardner 76f1d9944e ceph: fix drive group deployment failure
Drive Groups will fail to deploy due to a message: `failed to parse
device list (""): failed to JSON unmarshal configured devices (""):
unexpected end of JSON input`

This is due to trying to JSON unmarshal an empty string which does not
contain any devices to provision when Drive Groups are specified. Fix so
that an empty string represents no non-Drive Group devices.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2020-09-16 09:32:06 -06:00
n.fraison de7ca01930 ceph: merge rook-config-override to the default global config file
Some parameter like bluestore_min_alloc_size, bluestore_min_alloc_size_hdd need to be set during the bootstrap of the
ceph cluster in order to have bluestore created accordingly.
To do so rook users rely on the rook-config-override configmap.
Sadly the rook-ceph-osd-prepare job does not take in account this configmap to generate its ceph config.
Changing the behaviour to merge the config from rook-config-override configmap to the default ceph config

Signed-off-by: n.fraison <n.fraison@criteo.com>
2020-09-16 15:08:50 +02:00
Travis Nielsen 8a2ea742c7 docs: update the ceph roadmap for v1.5
This is a draft of the features planned for v1.5 and mention of
features that may extend beyond v1.5. Roadmap to other storage providers
are expected separately by each of the storage provider owners.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-09-15 13:56:32 -06:00
Travis Nielsen 00e6398fe8 Merge pull request #6235 from fanjunwei/user_truncated_node_name
ceph: Use truncated node name
2020-09-15 13:19:49 -06:00
Sébastien Han a18eab112b Merge pull request #6256 from travisn/skip-labels-during-upgrade
ceph: Upgrade to v1.4.3 for cluster-on-pvc example hangs due to changing label selectors on the mons
2020-09-15 13:21:48 +02:00
Sébastien Han 484399148a Merge pull request #6254 from mcsaucy/patch-1
ceph: tweak removeOSDsIfOutAndSafeToRemove wording
2020-09-15 10:26:00 +02:00
Madhu Rajanna a1024ebc75 ceph: remove owner reference set by rook on csidriver
currently, we are setting the rook operator as owner
on the csidriver objects,  as csidriver is cluster
scoped object we should not set namespaced object as
owner on cluster scoped object

fixes #6162

Signed-off-by: Madhu Rajanna <madhupr007@gmail.com>
2020-09-15 11:39:27 +05:30
Travis Nielsen da863e4156 ceph: do not change selector labels during upgrade
The selector labels used for mons cannot change during upgrade
or else the upgrade will hang when the cluster is checking
for mon status immediately after the upgrade begins.

Signed-off-by: Travis Nielsen <tnielsen@redhat.com>
2020-09-14 21:43:25 -06:00
Josh McSavaney cc7b07c840 ceph: tweak removeOSDsIfOutAndSafeToRemove wording
- Corrects what I think was a typo ("when then" -> "when they")
- Picks a single tense
- capitalizes OSD

Signed-off-by: Josh McSavaney <me@mcsau.cc>
2020-09-14 18:17:47 -04:00
Travis Nielsen d55815d698 Merge pull request #6066 from Madhu-1/rbd-snap-clone-test
ceph: Add E2E testing for csi snapshot and clone
2020-09-14 11:24:58 -06:00
Travis Nielsen 4df34f4bf4 Merge pull request #6226 from leseb/fix-6217
ceph: allow running rgw in rook with external mode
2020-09-14 11:18:53 -06:00
Sébastien Han bf8b87fc80 Merge pull request #6227 from aruniiird/support-TLS-RGW
ceph: fix to support TLS enabled rgw-endpoint
2020-09-14 09:05:06 +02:00
Travis Nielsen 2052d5e657 Merge pull request #6225 from subhamkrai/add-label-osd
ceph: add storageClassDeviceSet label to osd pods
2020-09-11 09:15:13 -06:00
Sébastien Han 61dea11de3 Merge pull request #6234 from subhamkrai/fix-dns-suffix
ceph: fixed DNS suffix breaks in custom DNS suffix clusters
2020-09-11 15:06:59 +02:00