zoukankan      html  css  js  c++  java
  • 【ceph | 运维】rgw重置

    Ceph Object Storage Placement 

    确认当前已经存储的crush rule。

     1 $ ceph osd crush rule dump
     2 
     3 [
     4     {
     5         "rule_id": 0,
     6         "rule_name": "replicated_rule",
     7         "ruleset": 0,
     8         "type": 1,
     9         "min_size": 1,
    10         "max_size": 10,
    11         "steps": [
    12             {
    13                 "op": "take",
    14                 "item": -1,
    15                 "item_name": "default"
    16             },
    17             {
    18                 "op": "chooseleaf_firstn",
    19                 "num": 0,
    20                 "type": "host"
    21             },
    22             {
    23                 "op": "emit"
    24             }
    25         ]
    26     },
    27     {
    28         "rule_id": 1,
    29         "rule_name": "slow",
    30         "ruleset": 1,
    31         "type": 1,
    32         "min_size": 1,
    33         "max_size": 10,
    34         "steps": [
    35             {
    36                 "op": "take",
    37                 "item": -9,
    38                 "item_name": "slow"
    39             },
    40             {
    41                 "op": "chooseleaf_firstn",
    42                 "num": 0,
    43                 "type": "host"
    44             },
    45             {
    46                 "op": "emit"
    47             }
    48         ]
    49     }
    50 ]

    default Zonegroup 增加新的 Placement target 名為 slow 並且賦予 tag 為 slow

     1 $ radosgw-admin zonegroup placement add --rgw-zonegroup default --placement-id slow --tags slow
     2 
     3 [
     4     {
     5         "key": "default-placement",
     6         "val": {
     7             "name": "default-placement",
     8             "tags": [],
     9             "storage_classes": [
    10                 "STANDARD"
    11             ]
    12         }
    13     },
    14     {
    15         "key": "slow",
    16         "val": {
    17             "name": "slow",
    18             "tags": [
    19                 "slow"
    20             ],
    21             "storage_classes": [
    22                 "STANDARD"
    23             ]
    24         }
    25     }
    26 ]

    default-placement Placement target 新增名為 default-placement tag

     1 $ radosgw-admin zonegroup placement modify --rgw-zonegroup default --placement-id default-placement --tags default-placement
     2 
     3 [
     4     {
     5         "key": "default-placement",
     6         "val": {
     7             "name": "default-placement",
     8             "tags": [
     9                 "default-placement"
    10             ],
    11             "storage_classes": [
    12                 "STANDARD"
    13             ]
    14         }
    15     },
    16     {
    17         "key": "slow",
    18         "val": {
    19             "name": "slow",
    20             "tags": [
    21                 "slow"
    22             ],
    23             "storage_classes": [
    24                 "STANDARD"
    25             ]
    26         }
    27     }
    28 ]

    default Zone 增加新的 placement pool,並且命名为 slow。建置過程中需配置 index-pool, data-pool 與 –data-extra-pool

    radosgw-admin zone placement add --rgw-zone default --placement-id slow --index-pool slow.rgw.buckets.index --data-pool 

    查询结果如下图所示:

    {
        "id": "67798670-9929-4675-a595-a27b10576b5e",
        "name": "default",
        "domain_root": "default.rgw.meta:root",
        "control_pool": "default.rgw.control",
        "gc_pool": "default.rgw.log:gc",
        "lc_pool": "default.rgw.log:lc",
        "log_pool": "default.rgw.log",
        "intent_log_pool": "default.rgw.log:intent",
        "usage_log_pool": "default.rgw.log:usage",
        "reshard_pool": "default.rgw.log:reshard",
        "user_keys_pool": "default.rgw.meta:users.keys",
        "user_email_pool": "default.rgw.meta:users.email",
        "user_swift_pool": "default.rgw.meta:users.swift",
        "user_uid_pool": "default.rgw.meta:users.uid",
        "otp_pool": "default.rgw.otp",
        "system_key": {
            "access_key": "",
            "secret_key": ""
        },
        "placement_pools": [
            {
                "key": "default-placement",
                "val": {
                    "index_pool": "default.rgw.buckets.index",
                    "storage_classes": {
                        "STANDARD": {
                            "data_pool": "default.rgw.buckets.data"
                        }
                    },
                    "data_extra_pool": "default.rgw.buckets.non-ec",
                    "index_type": 0
                }
            },
            {
                "key": "slow",
                "val": {
                    "index_pool": "slow.rgw.buckets.index",
                    "storage_classes": {
                        "STANDARD": {
                            "data_pool": "slow.rgw.buckets.data"
                        }
                    },
                    "data_extra_pool": "slow.rgw.buckets.non-ec",
                    "index_type": 0
                }
            }
        ],
        "metadata_heap": "",
        "realm_id": ""
    }
    View Code

    配置完成後,建立相對應的 pools

    $ ceph osd pool create slow.rgw.buckets.index 8 8
    
    pool 'slow.rgw.buckets.index' created
    
    $ ceph osd pool create slow.rgw.buckets.data 8 8
    
    pool 'slow.rgw.buckets.data' created
    
    $ ceph osd pool create slow.rgw.buckets.non-ec 8 8
    
    pool 'slow.rgw.buckets.non-ec' created

    確認新建立 pool 的 Crush Rule

    $ ceph osd pool ls detail
    
    ...
    pool 5 'default.rgw.buckets.index' replicated size 3 min_size 2 crush_rule 0 object_hash rjenkins pg_num 8 pgp_num 8 autoscale_mode warn last_change 31 flags hashpspool stripe_width 0 application rgw
    pool 6 'slow.rgw.buckets.index' replicated size 3 min_size 2 crush_rule 1 object_hash rjenkins pg_num 8 pgp_num 8 autoscale_mode warn last_change 68 flags hashpspool stripe_width 0
    pool 7 'slow.rgw.buckets.data' replicated size 3 min_size 2 crush_rule 1 object_hash rjenkins pg_num 8 pgp_num 8 autoscale_mode warn last_change 70 flags hashpspool stripe_width 0
    pool 8 'slow.rgw.buckets.non-ec' replicated size 3 min_size 2 crush_rule 1 object_hash rjenkins pg_num 8 pgp_num 8 autoscale_mode warn last_change 72 flags hashpspool stripe_width 0

    crush_rule 為 1 表示已更改為 slow Crush Rule,若讀者實際操作可能值會與範例不同

    重新启动RGW

    systemctl  stop ceph-radosgw@rgw.zz.rgw0
    systemctl  start ceph-radosgw@rgw.zz.rgw0

     

    参考资料

    1. Ceph Object Storage Placement 介紹

  • 相关阅读:
    LeetCode 83. Remove Duplicates from Sorted List (从有序链表中去除重复项)
    LeetCode 21. Merge Two Sorted Lists (合并两个有序链表)
    LeetCode 720. Longest Word in Dictionary (字典里最长的单词)
    LeetCode 690. Employee Importance (职员的重要值)
    LeetCode 645. Set Mismatch (集合不匹配)
    LeetCode 500. Keyboard Row (键盘行)
    LeetCode 463. Island Perimeter (岛的周长)
    115.Distinct Subsequences
    55.Jump Game
    124.Binary Tree Maximum Path Sum
  • 原文地址:https://www.cnblogs.com/sunbines/p/15402278.html
Copyright © 2011-2022 走看看