Commit Graph

483 Commits

Author SHA1 Message Date
Kefu Chai
d4186fb541
Merge pull request #19117 from jan--f/jan-object-counts-decimal
include/types: format decimal numbers with decimal factor

Reviewed-by: Sage Weil <sage@redhat.com>
2018-04-15 22:49:50 +08:00
Jan Fajerski
61504f117c qa/workunits/cephtool/test.sh: fix SI unit test, add IEC unit test
Signed-off-by: Jan Fajerski <jfajerski@suse.com>
2018-04-13 18:07:33 +02:00
Sage Weil
497a63251b qa/workunits/cephtool: test with valid auth syntax
'allow' is not a valid mon cap; use 'allow *'.  Add some negative tests
to ensure the validation is working.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-04-10 07:39:06 -05:00
Jan Fajerski
d3cecebacd include/types: format decimal numbers with decimal factor
Until now bytes and objects were formatted using si_t which used 1024 as
the factor to pretty print large numbers. For object counts a factor of
1000 is preferred. This commit retires the si_t formatting (as well as
prettybyte_t, kb_t and pretty_si_t) completely and adds structs and
formatting for binary and decimal units, bin_u_t and dec_u_t respectively.
Fixes: http://tracker.ceph.com/issues/22095

Signed-off-by: Jan Fajerski <jfajerski@suse.com>
2018-04-03 09:23:24 +02:00
Kefu Chai
c1ba9ac544
Merge pull request #20711 from guzhongyan/mgr-nodels
mon: 'node ls' mgr support

Reviewed-by: John Spray <john.spray@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-03-08 23:14:50 +08:00
Sage Weil
11e287c137 qa/workunits/cephtool/test.sh: fix mon_caps
Pass --no-mon-config so we don't get

 failed to fetch mon config (--no-mon-config to skip)

instead.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-03-06 14:44:50 -06:00
Sage Weil
c9e974800f qa: --no-mon-config for ceph-objectstore-tool --op mkfs ..
Signed-off-by: Sage Weil <sage@redhat.com>
2018-03-06 14:44:50 -06:00
Sage Weil
e89d22fe67 qa/workunits/cephtool/test.sh: streamline test_mon_injectargs
Be less sensitive to formatting of output string on set commands.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-03-06 14:44:49 -06:00
Gu Zhongyan
e8436e2bed mon: 'node ls' mgr support
mgr is not included in 'node ls'
add mgr support in 'node ls'

Signed-off-by: Gu Zhongyan <guzhongyan@360.cn>
2018-03-06 15:13:59 +08:00
hansbogert
364559074e mon: Add ceph osd get-require-min-compat-client command
As an antagonist to the already existing `set-require-min-compat-client`

Signed-off-by: hansbogert <hansbogert@gmail.com>
2018-02-13 00:52:22 +01:00
Sage Weil
13738cd752
Merge pull request #19939 from liewegas/wip-osd-new-class
mon,osd: do not use crush_device_class file to initalize class for new osds

Reviewed-by: Alfredo Deza <adeza@redhat.com>
Reviewed-by: Kefu Chai <kchai@redhat.com>
Reviewed-by: Andrew Schoen <aschoen@redhat.com>
2018-02-12 11:17:14 -06:00
Sage Weil
59bdada5d5 mon/OSDMonitor: accept crush_device_class in 'osd new' json input
If provided, set the OSD device_class at OSD creation time.  This is
simpler than writing a file that the OSD has to read in and use to
set its initial device class, and also avoids a bit of sticky state
at the OSD that will make it keep trying to reset its device class on
startup if it ever gets cleared.

Note that we now ignore json input fields we don't understand, so remove
a test case.

Signed-off-by: Sage Weil <sage@redhat.com>
2018-02-08 12:34:49 -06:00
Kefu Chai
74c9cfc466 test: reduce the chance to have degraded PGs
in test_mon_osd_misc(), there is good chance that the cluster chooses
to use an unbalanced weight because of the data distribution at that moment.
but this setting could prevent the CRUSH from choosing enough number of
OSDs for test_mon_cephdf_commands(), where 32 PGs are to be created. so
it's more likely that the CRUSH fails to pick enough OSDs for all PGs.
that's why we have a curr_object_copies_rate = 0.5.

so, in this change, pg=pgp=1 is specified for the new pool.

Fixes: http://tracker.ceph.com/issues/22711
Signed-off-by: Kefu Chai <kchai@redhat.com>
2018-01-22 21:24:58 +08:00
Kefu Chai
0c38eb87e2
Merge pull request #19673 from zouaiguo/wip_erase_code
mon/OSDMonitor.cc : set erasure-code-profile to "" when create replicated pools.

Reviewed-by: Joao Eduardo Luis <joao@suse.de>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2018-01-15 18:34:34 +08:00
Brad Hubbard
637bf125c3 qa: Add blocking versions of scrub and deep-scrub
Signed-off-by: Brad Hubbard <bhubbard@redhat.com>
2018-01-10 14:05:55 +10:00
zouaiguo
a61e62cf44 mon/OSDMonitor.cc : set erasure-code-profile to "" when create replicated pools.
when we create a pool specify a rule, for example "ceph osd pool create foo replicated 10 rule_foo",
we will set pool foo erasure-code-profile to rule_foo,
if there has an erasure-code-profile names rule_foo, use "ceph osd erasure-code-profile rule_foo" will fail,
"Error EBUSY: foo pool(s) are using the erasure code profile 'rule_foo'", this is wrong.

we should do:
1. set erasure-code-profile to "" when create replicated pools
2. whether erasure-code-profile is used by pool not only judge pool erasure_code_profile property and also the pool is_erasure

Signed-off-by: zouaiguo <zou.aiguo@zte.com.cn>
2018-01-09 14:14:06 +08:00
Kefu Chai
371d3f4091 qa: stop testing deprecated "ceph osd create"
"ceph osd create" is not idempotent, and is considered deprecated.

Fixes: http://tracker.ceph.com/issues/21993
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-11-01 10:45:11 +08:00
Kefu Chai
0f1e97238c qa: do not "ceph fs get cephfs" w/o a cephfs fs
introduced by 183646c

Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-10-25 19:12:39 +08:00
Patrick Donnelly
c58161f25b
Merge PR #17266 into master
* refs/pull/17266/head:
	qa: update test_ceph_argparse to test fs cmds
	qa: use fs rm_data_pool
	qa: fix mdsmap lookup
	qa: remove usage of mds dump
	PendingReleaseNotes: add obsoleted mds commands
	qa: remove use of obsolete mds commands
	ceph_volume_client: remove use of obsolete mds cmd
	doc: update on obsolete mds commands
	cephfs: obsolete deprecated mds commands

Reviewed-by: Douglas Fuller <dfuller@redhat.com>
2017-10-24 16:37:14 -07:00
Patrick Donnelly
b897ef9445
qa: use fs rm_data_pool
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2017-10-24 11:51:02 -07:00
Chang Liu
8d5d9c6a62 test: new test case for ceph-kvstore-tool
Signed-off-by: Chang Liu <liuchang0812@gmail.com>
2017-10-16 22:52:10 +08:00
Patrick Donnelly
183646c919
qa: remove use of obsolete mds commands
Signed-off-by: Patrick Donnelly <pdonnell@redhat.com>
2017-10-01 17:22:36 -07:00
Sage Weil
6376d75eda mon/OSDMonitor: error out if setting ruleset-* ec profile property
We change ruleset -> crush back in dc7a2aaf7a.
If someone tries to use the old property, error out early, instead of
silently not doing the thing they thought they told us to do.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-24 11:25:01 -04:00
Sage Weil
e715533feb qa/workunits/*: require-osd-release mimic, not luminous
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-07 09:18:56 -04:00
Sage Weil
e21e63cb88 qa/workunits/cephtool/test.sh: drop 'pg set_full_ratio'
Signed-off-by: Sage Weil <sage@redhat.com>
2017-09-06 10:18:06 -04:00
Kefu Chai
30b5b4627c Merge pull request #16494 from asomers/bin_bash
misc: Fix bash path in shebangs

Reviewed-by: Willem Jan Withagen <wjw@digiware.nl>
Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-08-27 10:14:14 +08:00
xie xingguo
1ea448ac75 common/types: make numbers a bit nicer when displaying space usage
Was:
----------------------------------------------------------------------------
GLOBAL:
    SIZE       AVAIL      RAW USED     %RAW USED
    30911M     27050M        3861M         12.49
POOLS:
    NAME                  ID     USED        %USED     MAX AVAIL     OBJECTS
    rbd                   0      101216k      1.10         8913M        1178
    cephfs_data_a         1            0         0         8913M           0
    cephfs_metadata_a     2          892         0         8913M          21
----------------------------------------------------------------------------

Now:
----------------------------------------------------------------------------
GLOBAL:
    SIZE      AVAIL     RAW USED     %RAW USED
    30.2G     26.4G        3.77G         12.50
POOLS:
    NAME                  ID     USED      %USED     MAX AVAIL     OBJECTS
    rbd                   0      99.2M      1.10         8.70G        1180
    cephfs_data_a         1          0         0         8.70G           0
    cephfs_metadata_a     2        892         0         8.70G          21
----------------------------------------------------------------------------

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-22 12:33:10 +08:00
xie xingguo
46586b2288 mon/OSDMonitor: "osd pool application ls" support
It would be a pain if we have to call 'ceph osd dump --format=json-pretty'
to find out these each time...

Demo output:
(1) ceph osd pool application get
{
    "cephfs_data_b": {
        "cephfs": {}
    },
    "cephfs_metadata_a": {
        "cephfs": {}
    },
    "test_pool": {
        "rbd": {
            "test": "me"
        }
    }
}

(2) ceph osd pool application get test_pool
{
    "rbd": {
        "test": "me"
    }
}

(3) ceph osd pool application get test_pool rbd
{
    "test": "me"
}

(4) ceph osd pool application get test_pool rbd test
me

Fixes: http://tracker.ceph.com/issues/20976
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-16 09:41:11 +08:00
xie xingguo
71cef3cb74 mon/OSDMonitor: fix 'osd pg temp' unable to cleanup pg-temp
This is not very elegant way but should work..

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-08 17:33:35 +08:00
xie xingguo
bfd1d4ef9a mon/OSDMonitor: sanity check osd before performing 'osd purge'
This will pervent OSDMonitor from crashing on purging a very large
non-existent osd id as below:

osd e11 prepare_command_osd_purge purging osd.8
    -1> 2017-08-05 18:59:44.994319 7f6076968700 10 mon.a@0(leader).osd e11 prepare_command_osd_destroy osd.8 does not exist.
     0> 2017-08-05 18:59:45.002309 7f6076968700 -1 /home/xxg/build/ceph-dev/src/osd/OSDMap.h: In function 'int OSDMap::get_state(int) const'
 thread 7f6076968700 time 2017-08-05 18:59:44.994336
/home/xxg/build/ceph-dev/src/osd/OSDMap.h: 690: FAILED assert(o < max_osd)

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-08-05 19:43:39 +08:00
Alan Somers
3aae5ca6fd scripts: fix bash path in shebangs
/bin/bash is a Linuxism.  Other operating systems install bash to
different paths.  Use /usr/bin/env in shebangs to find bash.

Signed-off-by: Alan Somers <asomers@gmail.com>
2017-07-27 13:24:26 -06:00
Sage Weil
5534912daa qa/workunits/cephtool/test.sh: add some config-key tests
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-26 14:13:22 -04:00
Sage Weil
4eb1a518e3 mon: 'config-key put' -> 'config-key set'
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-26 14:10:08 -04:00
Sage Weil
ee06dc6996 Merge pull request #16530 from xiexingguo/wip-fix-pgtemp
mon: prime pg_temp and a few health warning fixes

Reviewed-by: Sage Weil <sage@redhat.com>
2017-07-26 13:09:33 -05:00
Kefu Chai
d85a7889fd Merge pull request #16446 from xiexingguo/wip-destroyed
mon: show destroyed status in tree view; do not auto-out destroyed osds

Reviewed-by: Sage Weil <sage@redhat.com>
2017-07-26 17:15:53 +08:00
xie xingguo
96eb0a9887 mon/OSDMonitor: apply new 'destroyed' status to 'osd tree' filter
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-26 15:13:32 +08:00
Sage Weil
d2c31a8114 Merge pull request #16469 from xiexingguo/wip-fix-test
test: s/osd_objectstore_type/osd_objectstore
2017-07-25 21:04:22 -05:00
Sage Weil
a264725b62 Merge pull request #16541 from liewegas/wip-20761
qa/workunits/cephtool/test.sh: disable 'fs status' until bug is fixed
2017-07-25 14:03:38 -05:00
xie xingguo
450633b9e6 mon/OSDMonitor: ENOENT on removing non-existent app key
So we don't bother to trigger an pool update, which is potentially
big stuff.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-25 13:19:35 +08:00
xie xingguo
b4dcdecb6a mon/OSDMonitor: ENOENT on disabling non-existend app
so we don't bother to trigger an pool update, which is potentially
big stuff.

Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-25 13:19:29 +08:00
Sage Weil
71ea171604 qa: move ceph-helpers and misc src/test/*.sh tests to qa/standalone
- stop running via make check
- add teuthology yamls to run them
- disable ceph_objecstore_tool.py for now (too slow for make check, and
we can't use vstart in teuthology via a package install)
- drop cephtool tests since those are already covered by other teuthology
tests
- leave a handful of (fast!) ceph-helpers tests for make check for minimal
integration tests.

Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-24 22:11:49 -04:00
Sage Weil
f347ef54c2 qa/workunits/cephtool/test.sh: disable 'fs status' until bug is fixed
See http://tracker.ceph.com/issues/20761
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-24 16:54:13 -04:00
Sage Weil
08bdc2c867 Merge pull request #16500 from liewegas/wip-compact-sudo
qa/workunits/cephtool/test.sh: add sudo for daemon compact

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-22 13:01:20 -05:00
xie xingguo
fa0e314cde test: s/osd_objectstore_type/osd_objectstore/
Signed-off-by: xie xingguo <xie.xingguo@zte.com.cn>
2017-07-22 15:22:31 +08:00
Sage Weil
0429acda45 Merge pull request #16460 from liewegas/wip-mgr-metadata
mon: add mgr metdata commands, and overall 'versions' command for all daemon versions

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-21 22:36:09 -05:00
Sage Weil
2f272ab451 qa/workunits/cephtool/test.sh: add sudo for daemon compact
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 23:18:03 -04:00
Kefu Chai
10b88b5d82 test: create asok files in a temp directory under $TMPDIR
to shorten the pathname of unix domain socket created for admin socket,
so it does not exceed the limit of 107 on GNU/Linux:

* ceph-helper.sh: the temp directory is named ${TMPDIR:-/tmp}/ceph-asok.$$
* vstart.sh: the temp directory is named `mktemp -u -d "${TMPDIR:-/tmp}/ceph-asok.XXXXXX"`

Fixes: http://tracker.ceph.com/issues/16895
Signed-off-by: Kefu Chai <kchai@redhat.com>
2017-07-22 01:05:29 +08:00
Sage Weil
75ac7d85da qa/workunits/cephtool/test.sh: add a few tests
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 11:25:05 -04:00
Sage Weil
6c4992aeca qa/workunits/cephtool/test.sh: fix test to watch audit channel
Signed-off-by: Sage Weil <sage@redhat.com>
2017-07-21 11:40:48 +08:00
Sage Weil
3de9f22ce0 Merge pull request #16423 from liewegas/wip-ls
mon: '* list' -> '* ls'

Reviewed-by: Kefu Chai <kchai@redhat.com>
2017-07-20 10:43:34 -05:00