Project

General

Profile

Actions

Support #20648

closed

odd osd acting set

Added by hongpeng lu almost 7 years ago. Updated almost 7 years ago.

Status:
Closed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
% Done:

0%

Tags:
Reviewed:
Affected Versions:
Component(RADOS):
CRUSH
Pull request ID:

Description

I have three host.
When I set one of them down.
I got something like this.

[root@iozone-102 ~]# ceph pg 10.8e query
{
    "state": "active",
    "snap_trimq": "[]",
    "epoch": 1351,
    "up": [
        13,
        2147483647,
        6
    ],
    "acting": [
        13,
        13,
        6
    ],
    "actingbackfill": [
        "6(2)",
        "13(0)",
        "13(1)" 
    ],

or
[root@iozone-101 ~]# ceph pg 10.c3 query
{
    "state": "active+recovery_wait+degraded+remapped",
    "snap_trimq": "[]",
    "epoch": 1384,
    "up": [
        5,
        2147483647,
        12
    ],
    "acting": [
        5,
        11,
        12
    ],
    "actingbackfill": [
        "5(0)",
        "11(1)",
        "12(2)" 
    ],

there is same osd or osds that in same host contained in the acting set. is't a bug?

[root@iozone-103 ~]# ceph osd tree
ID WEIGHT   TYPE NAME           UP/DOWN REWEIGHT PRIMARY-AFFINITY 
-1 13.96988 root default                                          
-2  4.44496     host iozone-101                                   
15  0.63499         osd.15         down        0          1.00000 
16  0.63499         osd.16         down        0          1.00000 
17  0.63499         osd.17         down        0          1.00000 
18  0.63499         osd.18         down        0          1.00000 
19  0.63499         osd.19         down        0          1.00000 
20  0.63499         osd.20         down        0          1.00000 
21  0.63499         osd.21         down        0          1.00000 
-3  5.07996     host iozone-102                                   
 0  0.63499         osd.0            up  1.00000          1.00000 
 1  0.63499         osd.1            up  1.00000          1.00000 
 2  0.63499         osd.2            up  1.00000          1.00000 
 3  0.63499         osd.3            up  1.00000          1.00000 
 4  0.63499         osd.4            up  1.00000          1.00000 
 5  0.63499         osd.5            up  1.00000          1.00000 
 6  0.63499         osd.6            up  1.00000          1.00000 
 7  0.63499         osd.7            up  1.00000          1.00000 
-4  4.44496     host iozone-103                                   
 8  0.63499         osd.8            up  1.00000          1.00000 
 9  0.63499         osd.9            up  1.00000          1.00000 
10  0.63499         osd.10           up  1.00000          1.00000 
11  0.63499         osd.11           up  1.00000          1.00000 
12  0.63499         osd.12           up  1.00000          1.00000 
13  0.63499         osd.13           up  1.00000          1.00000 
14  0.63499         osd.14           up  1.00000          1.00000 

I created ec pool.

[root@iozone-103 ~]# ceph osd dump |grep pool
pool 10 'ecpool1' erasure size 3 min_size 2 crush_ruleset 4 object_hash rjenkins pg_num 256 pgp_num 256 last_change 1090 flags hashpspool stripe_width 4096
pool 11 'rbdpool2' replicated size 3 min_size 1 crush_ruleset 3 object_hash rjenkins pg_num 16 pgp_num 16 last_change 1095 flags hashpspool stripe_width 0

Here is my rulesets

[root@iozone-103 ~]# ceph osd crush dump
{
    "devices": [
        {
            "id": 0,
            "name": "osd.0" 
        },
        {
            "id": 1,
            "name": "osd.1" 
        },
        {
            "id": 2,
            "name": "osd.2" 
        },
        {
            "id": 3,
            "name": "osd.3" 
        },
        {
            "id": 4,
            "name": "osd.4" 
        },
        {
            "id": 5,
            "name": "osd.5" 
        },
        {
            "id": 6,
            "name": "osd.6" 
        },
        {
            "id": 7,
            "name": "osd.7" 
        },
        {
            "id": 8,
            "name": "osd.8" 
        },
        {
            "id": 9,
            "name": "osd.9" 
        },
        {
            "id": 10,
            "name": "osd.10" 
        },
        {
            "id": 11,
            "name": "osd.11" 
        },
        {
            "id": 12,
            "name": "osd.12" 
        },
        {
            "id": 13,
            "name": "osd.13" 
        },
        {
            "id": 14,
            "name": "osd.14" 
        },
        {
            "id": 15,
            "name": "osd.15" 
        },
        {
            "id": 16,
            "name": "osd.16" 
        },
        {
            "id": 17,
            "name": "osd.17" 
        },
        {
            "id": 18,
            "name": "osd.18" 
        },
        {
            "id": 19,
            "name": "osd.19" 
        },
        {
            "id": 20,
            "name": "osd.20" 
        },
        {
            "id": 21,
            "name": "osd.21" 
        }
    ],
    "types": [
        {
            "type_id": 0,
            "name": "osd" 
        },
        {
            "type_id": 1,
            "name": "host" 
        },
        {
            "type_id": 2,
            "name": "chassis" 
        },
        {
            "type_id": 3,
            "name": "rack" 
        },
        {
            "type_id": 4,
            "name": "row" 
        },
        {
            "type_id": 5,
            "name": "pdu" 
        },
        {
            "type_id": 6,
            "name": "pod" 
        },
        {
            "type_id": 7,
            "name": "room" 
        },
        {
            "type_id": 8,
            "name": "datacenter" 
        },
        {
            "type_id": 9,
            "name": "region" 
        },
        {
            "type_id": 10,
            "name": "root" 
        }
    ],
    "buckets": [
        {
            "id": -1,
            "name": "default",
            "type_id": 10,
            "type_name": "root",
            "weight": 915530,
            "alg": "straw2",
            "hash": "rjenkins1",
            "items": [
                {
                    "id": -2,
                    "weight": 291305,
                    "pos": 0
                },
                {
                    "id": -3,
                    "weight": 332920,
                    "pos": 1
                },
                {
                    "id": -4,
                    "weight": 291305,
                    "pos": 2
                }
            ]
        },
        {
            "id": -2,
            "name": "iozone-101",
            "type_id": 1,
            "type_name": "host",
            "weight": 291305,
            "alg": "straw2",
            "hash": "rjenkins1",
            "items": [
                {
                    "id": 15,
                    "weight": 41615,
                    "pos": 0
                },
                {
                    "id": 16,
                    "weight": 41615,
                    "pos": 1
                },
                {
                    "id": 17,
                    "weight": 41615,
                    "pos": 2
                },
                {
                    "id": 18,
                    "weight": 41615,
                    "pos": 3
                },
                {
                    "id": 19,
                    "weight": 41615,
                    "pos": 4
                },
                {
                    "id": 20,
                    "weight": 41615,
                    "pos": 5
                },
                {
                    "id": 21,
                    "weight": 41615,
                    "pos": 6
                }
            ]
        },
        {
            "id": -3,
            "name": "iozone-102",
            "type_id": 1,
            "type_name": "host",
            "weight": 332920,
            "alg": "straw2",
            "hash": "rjenkins1",
            "items": [
                {
                    "id": 0,
                    "weight": 41615,
                    "pos": 0
                },
                {
                    "id": 1,
                    "weight": 41615,
                    "pos": 1
                },
                {
                    "id": 2,
                    "weight": 41615,
                    "pos": 2
                },
                {
                    "id": 3,
                    "weight": 41615,
                    "pos": 3
                },
                {
                    "id": 4,
                    "weight": 41615,
                    "pos": 4
                },
                {
                    "id": 5,
                    "weight": 41615,
                    "pos": 5
                },
                {
                    "id": 6,
                    "weight": 41615,
                    "pos": 6
                },
                {
                    "id": 7,
                    "weight": 41615,
                    "pos": 7
                }
            ]
        },
        {
            "id": -4,
            "name": "iozone-103",
            "type_id": 1,
            "type_name": "host",
            "weight": 291305,
            "alg": "straw2",
            "hash": "rjenkins1",
            "items": [
                {
                    "id": 8,
                    "weight": 41615,
                    "pos": 0
                },
                {
                    "id": 9,
                    "weight": 41615,
                    "pos": 1
                },
                {
                    "id": 10,
                    "weight": 41615,
                    "pos": 2
                },
                {
                    "id": 11,
                    "weight": 41615,
                    "pos": 3
                },
                {
                    "id": 12,
                    "weight": 41615,
                    "pos": 4
                },
                {
                    "id": 13,
                    "weight": 41615,
                    "pos": 5
                },
                {
                    "id": 14,
                    "weight": 41615,
                    "pos": 6
                }
            ]
        }
    ],
    "rules": [
        {
            "rule_id": 0,
            "rule_name": "replicated_ruleset",
            "ruleset": 0,
            "type": 1,
            "min_size": 1,
            "max_size": 10,
            "steps": [
                {
                    "op": "take",
                    "item": -1,
                    "item_name": "default" 
                },
                {
                    "op": "chooseleaf_firstn",
                    "num": 0,
                    "type": "host" 
                },
                {
                    "op": "emit" 
                }
            ]
        },
        {
            "rule_id": 3,
            "rule_name": "ruleset",
            "ruleset": 3,
            "type": 1,
            "min_size": 1,
            "max_size": 10,
            "steps": [
                {
                    "op": "take",
                    "item": -1,
                    "item_name": "default" 
                },
                {
                    "op": "chooseleaf_firstn",
                    "num": 0,
                    "type": "host" 
                },
                {
                    "op": "emit" 
                }
            ]
        },
        {
            "rule_id": 4,
            "rule_name": "ecpool1",
            "ruleset": 4,
            "type": 3,
            "min_size": 3,
            "max_size": 3,
            "steps": [
                {
                    "op": "set_chooseleaf_tries",
                    "num": 5
                },
                {
                    "op": "set_choose_tries",
                    "num": 100
                },
                {
                    "op": "take",
                    "item": -1,
                    "item_name": "default" 
                },
                {
                    "op": "chooseleaf_indep",
                    "num": 0,
                    "type": "host" 
                },
                {
                    "op": "emit" 
                }
            ]
        }
    ],
    "tunables": {
        "choose_local_tries": 0,
        "choose_local_fallback_tries": 0,
        "choose_total_tries": 50,
        "chooseleaf_descend_once": 1,
        "chooseleaf_vary_r": 1,
        "chooseleaf_stable": 0,
        "straw_calc_version": 2,
        "allowed_bucket_algs": 54,
        "profile": "hammer",
        "optimal_tunables": 0,
        "legacy_tunables": 0,
        "minimum_required_version": "hammer",
        "require_feature_tunables": 1,
        "require_feature_tunables2": 1,
        "has_v2_rules": 1,
        "require_feature_tunables3": 1,
        "has_v3_rules": 0,
        "has_v4_buckets": 1,
        "require_feature_tunables5": 0,
        "has_v5_rules": 0
    }
}

Actions #1

Updated by Greg Farnum almost 7 years ago

  • Tracker changed from Bug to Support
  • Status changed from New to Closed

You have three hosts and want to replicate across those domains. It can't do that when one host goes down, so it's doing the best it can (but that's not great). There are a bunch of threads about this in the mailing list archives. :)

Actions

Also available in: Atom PDF