Commit Graph

92716 Commits

Author SHA1 Message Date
Sebastian Wagner
ce28976055
Merge pull request #24445 from jmolmo/wip_ansible_orchestrator
mgr/ansible: Ansible orchestrator module

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Sebastian Wagner <sebastian.wagner@suse.com>
Reviewed-by: Sébastien Han <seb@redhat.com>
2018-12-03 10:38:53 +01:00
Radoslaw Zarzynski
dbede2ffc6 common: bufferlist::buffers_t wraps bi::list now.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:34 +01:00
Radoslaw Zarzynski
ef036c441d include: buffer_raw.h uses C++11-compatible std::aligned_storage.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:34 +01:00
Radoslaw Zarzynski
cfc73f0f72 common: factories of buffer::ptr_node produce std::unique_ptr now.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:34 +01:00
Radoslaw Zarzynski
763fec4930 client: create buffer::ptr_node directly.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:33 +01:00
Radoslaw Zarzynski
420c49e17e os/bluestore: KernelDevice creates buffer::ptr_node directly.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:33 +01:00
Radoslaw Zarzynski
54a5358e67 tests: bench_bufferlist_alloc() gives a try to node_ptr.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:33 +01:00
Radoslaw Zarzynski
9a41b7b865 common: hypercombined bufferlist.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:33 +01:00
Radoslaw Zarzynski
43863e88b4 common: proliferate ptr_node in the bufferlist implementation.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:33 +01:00
Radoslaw Zarzynski
7cf03ab153 common: switch bufferlist to use boost::intrusive for _buffers.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-03 00:49:33 +01:00
jtlayton
b021f2cad5
Merge pull request #25339 from jtlayton/wip-volumes
mgr/volumes: fix orchestrator remove operation
2018-12-02 11:40:10 -05:00
Radoslaw Zarzynski
e107fff1b0 common: drop ::length() from other implementations of the OpQueue.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-02 14:59:18 +01:00
Radoslaw Zarzynski
65f25b7f13 common, osd: kill OpQueue::length() to minimize inter-core traffic.
Before
------
```
-    1,50%     1,34%  msgr-worker-0  ceph-osd  [.] WeightedPriorityQueue<OpQueueItem, unsigned long>::Queue::insert
```

Where self if 1.34%
```
       │       mov    %r12d,0x2c(%r14)
       │               }
       │               ++size;
 17,33 │1ba:   addl   $0x1,0x2ec48(%r14)
       │             }
```

After
-----
```
-    1,05%     0,93%  msgr-worker-0  ceph-osd  [.] WeightedPriorityQueue<OpQueueItem, unsigned long>::Queue::insert
```

Let's annotate hottest place (self is 0,93%):
```
       │           //Find the upper bound, cache the previous value and if we should
       │           //store it in the left or right node
       │           bool left_child = true;
       │           while(x){
       │ a0:   mov    %rax,%rbx
       │              ++depth;
       │              y = x;
       │              x = (left_child = comp(key, x)) ?
  8,86 │ a3:   cmp    0x20(%rbx),%r15
       │     _ZN5boost9intrusive31default_rbtree_node_traits_implIPvE9get_rightERKPNS0_11r
```

Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-02 09:45:07 +01:00
Radoslaw Zarzynski
2f441edd68 os: Transaction::_update_op_bl doesn't copy bl::_buffers anymore.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-01 21:22:23 +01:00
Radoslaw Zarzynski
5828caf330 common: modernize and refactor occurrences of bufferlist::buffers_t.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-01 21:22:23 +01:00
Radoslaw Zarzynski
fbe8a3287d common: abstract the container type of bufferlist::_buffers.
Signed-off-by: Radoslaw Zarzynski <rzarzyns@redhat.com>
2018-12-01 21:22:23 +01:00
Jeff Layton
39931808f9 orchestrator_cli: add a service rm command
Signed-off-by: Jeff Layton <jlayton@redhat.com>
2018-12-01 07:19:22 -05:00
Jeff Layton
1e8452fd65 orchestrator/rook: add a rm_service backend command
Signed-off-by: Jeff Layton <jlayton@redhat.com>
2018-12-01 07:19:18 -05:00
Jeff Layton
cae4eee807 mgr/volumes: fix orchestrator remove operation
Signed-off-by: Jeff Layton <jlayton@redhat.com>
2018-12-01 05:24:58 -05:00
Xie Xingguo
e50be3ef9b
Merge pull request #25126 from xiexingguo/wip-heartbeat-bs
osd: two heartbeat fixes

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Greg Farnum <gfarnum@redhat.com>
2018-12-01 18:23:33 +08:00
Brad Hubbard
c12deb79fd doc/releases: Add luminous releases 12.2.9 and 10
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2018-12-01 10:36:55 +10:00
Zack Cerza
ae6220b473 mgr/dashboard: Fix PYTHONPATH for test runner
A new mgr module ('volumes') pulls in src/pybind/ceph_volume_client.py; the
wrapper script that we use to run backend API tests needs to include that in
PYTHONPATH, or else the cluster will be stuck in HEALTH_WARN with the message:
"Module 'volumes' has failed dependency: No module named ceph_volume_client".

Signed-off-by: Zack Cerza <zack@redhat.com>
2018-11-30 22:41:07 +00:00
Noah Watkins
6d64cf5c93
Merge pull request #25122 from noahdesu/insights-osd-space
pybind/mgr: add osd space utilization to insights report

Reviewed-by: Sebastian Wagner <swagner@suse.com>
2018-11-30 11:57:51 -08:00
Sage Weil
5f7e083678 Merge PR #25308 into master
* refs/pull/25308/head:
	osd/OSD: OSD::mkfs asserts when reusing disk with existing superblock.
	os/bluestore: add main device expand capability.

Reviewed-by: Sage Weil <sage@redhat.com>
2018-11-30 13:19:42 -06:00
Sage Weil
a1068e126d Merge PR #25328 into master
* refs/pull/25328/head:
	spec: fix cython package version to less than 0.29

Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Nathan Cutler <ncutler@suse.com>
2018-11-30 13:19:26 -06:00
Alfredo Deza
8a50070ea6
Merge pull request #25330 from alfredodeza/wip-rm37449
ceph-volume  zap: improve zapping to remove all partitions and all LVs, encrypted or not

Reviewed-by: Andrew Schoen <aschoen@redhat.com>
2018-11-30 13:41:12 -05:00
Alfredo Deza
9f440fb966 ceph-volume tests patch udevadm so it doesn't actually call udevadm in a test
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:31:02 -05:00
Alfredo Deza
1670585ebe ceph-volume util.disk use device.path for error reporting
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:25:50 -05:00
Alfredo Deza
b0bc162b60 ceph-volume tests.functional add back sdc1 partitions with parted to redeploy after zapping
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:25:50 -05:00
Alfredo Deza
945e8f56ce ceph-volume tests.functional add back partitions with parted to redeploy after zapping
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:25:49 -05:00
Alfredo Deza
e1d136ee3b ceph-volume tests.functional recreate partitions previously removed with --destroy
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:25:49 -05:00
Alfredo Deza
df8ba476d6 ceph-volume tests.util ensure that both disk and device report is_device
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
ff0166f9f4 ceph-volume tests.util ensure is_encrypted works for lv, partition, and mapper devices
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
6dc0177224 ceph-volume tests.util ensure partitions are listed as top-level keys
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
9ebf7d7631 ceph-volume tests add mapper test for dm paths
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
830cd7d638 ceph-volume tests update is_mapper unit test when zapping
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
ba83c1f37e ceph-volume util.device check both dm and mapper paths for is_mapper property
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
14c74ede9a ceph-volume lvm skip empty vg_name removals
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
58be4d0e18 ceph-volume util.arg_validators optionally skip gpt header check
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
822ca670ee ceph-volume util.device if no vgs, set it to an empty list
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
91c01e88ec ceph-volume util.device set vgs to Device object if available
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
f74635d16d ceph-volume util update is_device when reported as device or disk
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
1ee7435aef ceph-volume util add method to detect encryption on devices
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:29 -05:00
Alfredo Deza
870f9e5b48 ceph-volume util.disk add a helper to remove partitions
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:24:18 -05:00
Casey Bodley
2217c0f018 qa/rgw: radosgw_admin_rest.py uses /admin/user?list for user listing
Signed-off-by: Casey Bodley <cbodley@redhat.com>
2018-11-30 12:22:23 -05:00
Alfredo Deza
7f3c359849 ceph-volume util.disk include partitions as top level devices in get_devices
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:19:40 -05:00
Alfredo Deza
28cb13a970 ceph-volume util.disk fix issue when capturing partition information
Before, the `if` condition meant that it would only work when the output
was '1', which is incorrect as that would only happen if a partition was
the first one, ignoring any other partition. The contents of that file
is the partition number, not a boolean to tell if it is a partition or
not.

It now includes the `holders` file contents which is needed for
dm-mapper work

Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:19:40 -05:00
Alfredo Deza
0d2a9a40d2 ceph-volume lvm.zap split zapping in methods per device type
Signed-off-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:19:40 -05:00
Alfredo Deza
b8a64b5ec4
Merge pull request #25201 from jan--f/c-v-inventory-add-device_id
ceph-volume add device_id to inventory listing

Reviewed-by: Sage Weil <sage@redhat.com>
Reviewed-by: Sebastien Han <shan@redhat.com>
Reviewed-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 12:11:23 -05:00
Alfredo Deza
860045ebf3
Merge pull request #25203 from jan--f/c-v-batch-fix-py3
ceph-volume: fix Batch object in py3 environments

Reviewed-by: Alfredo Deza <adeza@redhat.com>
2018-11-30 11:48:06 -05:00