Commit Graph
1452 Commits
Author SHA1 Message Date
Blaine Gardner 3731f06176 Ceph: Refactor mon config/keyring to cephconfig
Create a cephconfig module in Ceph's daemon pkg source, and refactor the
config and keyring generation that exists in the mon package into the
new cephconfig package. The config/keyring generation code is used by
most all daemons and not just mon, so a new package is a more
appropriate place for this.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-09-05 10:17:11 -06:00
travisn c0af417b00 osd: delete legacy deployment with -id in the name
Signed-off-by: travisn <tnielsen@redhat.com>
2018-09-04 14:15:18 -05:00
Sage Weil 8e773612ca Remove unnecessary "-id" from OSD pod names
The -id portion of the name is unnecessary and inconsistent with the other
pod names.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-09-04 14:15:18 -05:00
travisn f840e3574e mon: start a deployment instead of replicaset
Signed-off-by: travisn <tnielsen@redhat.com>
2018-09-01 00:12:42 -06:00
travisn 5f01178e83 mon: set names based on chars instead of integers
Signed-off-by: travisn <tnielsen@redhat.com>
2018-08-30 22:18:53 -06:00
Alexander Trost 4ccaea654a Updated DefaultClusterName to match rook-ceph
Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-08-27 14:51:29 +02:00
Blaine Gardner 406067788d ceph osd oper: Allow explicit runAsNonRoot=false
Rook no longer supports Kubernetes < 1.7
Remove a workaround for k8s < 1.6.4 where `runAsNonRoot` could not be
explicitly set to false.

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-08-24 15:11:45 -06:00
Dennis Chen ec84e6543c Return immediately when no valid node to run osd
We don't need to handle other osd(s) related tasks if there's
no valid nodes available in the cluster to run osd(s), log a
warning message to help user identify the cause of the issue.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2018-08-07 10:09:14 +08:00
travisn 1d928ecd36 osd: init container to initialize config at startup
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-31 14:39:53 -06:00
Travis Nielsen 5e4fba2aec Merge pull request #1952 from SUSE/simple-linting
Fix spellcheck and trailing space/newline issues
2018-07-27 14:02:00 -06:00
Travis Nielsen add4bd2fd2 Merge pull request #1926 from galexrt/fix_1920
operator/osd: Use UpdateStrategy Recreate
2018-07-26 14:45:56 -06:00
Blaine Gardner fe5fb394c7 Fix spellcheck and trailing space/newline issues
Fix some basic spellcheck errors. Also remove trailing spaces and make
sure files have a newline (my editor does automatically).

Signed-off-by: Blaine Gardner <blaine.gardner@suse.com>
2018-07-26 11:36:09 -06:00
Huamin Chen c6f463d0e7 validate storage nodes before preparing osds
Signed-off-by: Huamin Chen <hchen@redhat.com>
2018-07-26 17:18:47 +00:00
Alexander Trost 56544c51d4 operator/osd: Use UpdateStrategy Recreate
This fixes issues with a new OSD Pod in the same Deployment coming up and
directly entering CrashLoopBackOff because the old OSD Pod hasn't been fully
terminated yet (released it's locks).

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-07-21 12:10:09 +02:00
Alexander Trost faddfb0184 Truncate too long name for ObjectMeta.Name
Resolves #1907

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-07-20 10:35:20 +02:00
Travis Nielsen 363e5ee58a Merge pull request #1892 from jcsp/wip-osd-remove-idempotent
Fix retry of OSD deletion
2018-07-17 15:47:00 -06:00
John Spray bed1d01e9c Fix retry of OSD deletion
Previously, if this failed mid-way it would then throw
an exception at the first operation when retrying (because it's
trying to reweight an OSD that might not be in the map any more)

Signed-off-by: John Spray <john.spray@redhat.com>
2018-07-17 14:08:23 +01:00
Alexander Trost cdb708f6a1 Apply placement to OSD Pod Spec
Resolves #1895

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-07-17 14:01:08 +02:00
travisn dc6f3c099c mgr: set the ownerreference to the crd
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-12 16:40:01 -06:00
Jared Watts 5331907c6d Merge pull request #1857 from jbw976/ceph-beta
Rook project versioning and status update, Ceph graduates to Beta
2018-07-11 10:29:15 -07:00
Jared Watts a7ce7a361b Merge pull request #1766 from galexrt/1708
osd: skip wait loop when initial PGs is 0
2018-07-11 09:38:22 -07:00
Jared Watts 189e3eb611 ceph: migration logic for ceph.rook.io/v1alpha1 to ceph.rook.io/v1beta1, update all type references
Signed-off-by: Jared Watts <jbw976@gmail.com>
2018-07-11 09:23:46 -07:00
Alexander Trost 979360e85b osd: skip wait loop when initial PGs or used KBs is 0 for an OSD
Resolves #1708

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-07-11 07:59:43 +02:00
travisn 962b4f22da osd: available devices should include previously configured devices
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-10 12:41:43 -06:00
travisn 86f6b3ccf0 avoid setting ownerref when not available for crds
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-06 16:35:31 -06:00
travisn 55e0ee26c0 monitor the OSDs for the lifetime of the cluster
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-06 15:08:59 -06:00
travisn c9406597e1 osd: remove storage nodes centrally in the operator
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 16:09:22 -06:00
Huamin Chen 0bb6005055 add osd health monitor
Signed-off-by: Huamin Chen <hchen@redhat.com>
2018-07-05 16:09:22 -06:00
travisn e7cbbab5db osd: register tini for subreaping
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 16:09:21 -06:00
travisn 604bb614ad tests: verify integrity after osd pod restart
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 16:09:21 -06:00
travisn 021e8e7a9e osd: watch provisioning status for all nodes and start osds as each node is ready
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 16:08:31 -06:00
travisn 330aa9b6c8 osd: cleanup mounts for filestore on a device and other refactor for one osd per pod
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 16:04:03 -06:00
travisn 3e1ef0d760 mount directory host path if needed
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 16:02:27 -06:00
Huamin Chen 82425aafcc prepare osd in a job per node. Once all osds are prepared, store osd info in orchestration configmap.
Operator watches the configmap, starts one osd replica set per osd.

Signed-off-by: Huamin Chen <hchen@redhat.com>
2018-07-05 16:02:27 -06:00
travisn 89cfccd5a2 enable rook to run on openshift
Signed-off-by: travisn <tnielsen@redhat.com>
2018-07-05 11:20:43 -06:00
travisn 77cd878360 set default service account for the osd
Signed-off-by: travisn <tnielsen@redhat.com>
2018-06-25 12:57:25 -06:00
travisn 6502cda3b4 refactor cluster roles for minimal rbac access
Signed-off-by: travisn <tnielsen@redhat.com>
2018-06-25 12:57:25 -06:00
Travis Nielsen 858fb20037 Merge pull request #1791 from checkaayush/replaceCustomAwk
Replace custom Awk and remove related tests
2018-06-18 18:11:01 -07:00
Aayush Sarva 80f3e8ebf4 Replace custom Awk and remove related tests
Signed-off-by: Aayush Sarva <checkaayush@gmail.com>

Return error if field not found

Signed-off-by: Aayush Sarva <checkaayush@gmail.com>
2018-06-19 05:03:28 +05:30
Travis Nielsen dd5ef1a76a Merge pull request #1780 from galexrt/mon_doc_default_changes
Updated upgrade path for monCount
2018-06-18 10:04:37 -07:00
Alexander Trost c313899070 Updated upgrade path for monCount
Default to 3 mons when no `mon.count` is given.
The documentation and upgrade page has been updated accordingly to reflect the new
default.

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-06-16 02:03:08 +02:00
travisn 0eaca4067b mgr: rename the daemon to mgr.a
Signed-off-by: travisn <tnielsen@redhat.com>
2018-06-15 11:00:11 -07:00
Ganesh Maharaj Mahalingam aeb3c6a26d JournalPartition Code Cleanup
Cleaning out the below entities.
- JournalPartitionType is defined but will never be used given rook will always
place journal file in the filestore's block partition.
- GetMetadataPartitionType and getDataPartitionDetails functions are legacy
code and no longer used by any of the rook components.

Resolves: #1775

Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2018-06-12 23:39:41 -07:00
Jared Watts bb375e9408 Merge pull request #1772 from ganeshmaharaj/fix-bstore-partitions
Fix bluestore DB and WAL partition creation
2018-06-07 16:26:38 -07:00
travisn 756c00fc4b mgr: enable the ceph dashboard
Signed-off-by: travisn <tnielsen@redhat.com>
2018-06-07 15:08:58 -07:00
Ganesh Maharaj Mahalingam 75d50b6f62 Fix bluestore DB and WAL partition creation
Bluestore is assumed as the default backend and string StoreType is left empty.
Propogating that assumption to device partitioning.

Resolves: #1748

Signed-off-by: Ganesh Maharaj Mahalingam <ganesh.mahalingam@intel.com>
2018-06-07 15:07:28 -07:00
Alexander Trost 86568cafd3 operator/ceph/mon: Cleaned up tests
To make it more applicable to what is actually running when using the
operator the used test mon names have been replaced by the actual format
used in normal operations: `rook-ceph-mon[0-9]` instead of `mon[0-9]`.

This also removes some duplicated test code and used the already
available function for it.

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-06-04 23:01:29 +02:00
Alexander Trost edfa135560 ceph mon: Only run one mon on a node
This introduces a MonSpec to the Ceph Cluster CRD which contains settings for
mons, current options are the count and if more than one mon is allowed
to run per node.

Fixes #1386

Signed-off-by: Alexander Trost <galexrt@googlemail.com>
2018-06-02 13:36:30 +02:00
Jared Watts b2a35791b4 Merge pull request #1746 from benceszikora/fix-udevadm
Fix udevadm providing incomplete info by mounting /run/udev
2018-05-26 13:26:46 -07:00
Bence Szikora 144c9ee998 Fix udevadm providing incomplete info by mounting /run/udev
Signed-off-by: Bence Szikora <szikora0531@yahoo.de>
2018-05-26 07:13:49 +01:00