暗能星系

    • 登录
    • 搜索

    三黍运维命令

    张渌
    1
    42
    16
    正在加载更多帖子
    • 从旧到新
    • 从新到旧
    • 最多赞同
    回复
    • 在新帖中回复
    登录后回复
    此主题已被删除。只有拥有主题管理权限的用户可以查看。
    • Z
      zhanglu 最后由 编辑

      查看 osd_recovery_max_active 的默认配置

      ceph-conf --show-config-value osd_recovery_max_active

      查看 osd_max_backfills 的默认配置

      ceph-conf --show-config-value osd_max_backfills

      1 条回复 最后回复 回复 引用 0
      • Z
        zhanglu 最后由 编辑

        ceph tell osd.* injectargs '--osd_recovery_max_active 10'

        ceph tell osd.* injectargs '--osd_max_backfills 4'

        ceph tell osd.* injectargs '--osd_recovery_op_priority 15' 怎么查看默认值

        1 条回复 最后回复 回复 引用 0
        • Z
          zhanglu 最后由 编辑

          查看 osd.0 的实时参数

          ceph config show osd.0 osd_recovery_max_active
          ceph config show osd.0 osd_max_backfills
          ceph config show osd.0 osd_recovery_op_priority

          1 条回复 最后回复 回复 引用 0
          • Z
            zhanglu 最后由 编辑

            ceph config set osd osd_max_backfills 4

            1 条回复 最后回复 回复 引用 0
            • Z
              zhanglu 最后由 zhanglu 编辑

              high-priority.yaml

              apiVersion: scheduling.k8s.io/v1
              kind: PriorityClass
              metadata:
              name: high
              value: 10000
              globalDefault: false
              description: "用于核心业务的高优先级任务"
              preemptionPolicy: PreemptLowerPriority

              error: error validating "priority.yaml": error validating data: ValidationError(PriorityClass): unknown field "name" in io.k8s.api.scheduling.v1.PriorityClass; if you choose to ignore these errors, turn validation off with --validate=false

              1 条回复 最后回复 回复 引用 0
              • Z
                zhanglu 最后由 编辑

                priority.yaml

                1 条回复 最后回复 回复 引用 0
                • Z
                  zhanglu 最后由 编辑

                  ceph config get osd osd_max_backfills
                  ceph config get osd osd_recovery_max_active
                  ceph config get osd osd_recovery_op_priority

                  1 条回复 最后回复 回复 引用 0
                  • Z
                    zhanglu 最后由 编辑

                    moren:
                    bash-4.4$ ceph config get osd osd_max_backfills
                    1
                    bash-4.4$
                    bash-4.4$ ceph config get osd osd_recovery_max_active
                    0
                    bash-4.4$ ceph config get osd osd_recovery_op_priority
                    3

                    1 条回复 最后回复 回复 引用 0
                    • Z
                      zhanglu 最后由 编辑

                      提高每个 OSD 允许的最大并发恢复操作数(默认通常是 3 或 5)

                      ceph config set osd osd_max_backfills 16
                      ceph config set osd osd_recovery_max_active 16

                      提高恢复线程的优先级(值越小优先级越高,默认通常是 10)

                      ceph config set osd osd_recovery_op_priority 3

                      1 条回复 最后回复 回复 引用 0
                      • Z
                        zhanglu 最后由 编辑

                        2026-05-18 01:13:11.562102 I | clusterdisruption-controller: all "host" failure domains: [node1 node2 node3 node5 node6 node7 node8]. osd is down in failure domain: "". active node drains: false. pg health: "cluster is not fully clean. PGs: [{StateName:active+clean Count:1972} {StateName:active+remapped+backfilling Count:104} {StateName:active+clean+scrubbing+deep Count:21}]"

                        1 条回复 最后回复 回复 引用 0
                        • Z
                          zhanglu 最后由 zhanglu 编辑

                          csi-cephfsplugin-2hwcz csi-cephfsplugin-2zjmb csi-cephfsplugin-djtn9 csi-cephfsplugin-fpr72 csi-cephfsplugin-kltj4 csi-cephfsplugin-lz5gv csi-cephfsplugin-provisioner-7769f7b7fb-pk44w csi-cephfsplugin-provisioner-7769f7b7fb-zg99t csi-cephfsplugin-ptq9l csi-rbdplugin-8cb99 csi-rbdplugin-bl9vv csi-rbdplugin-dlxlg csi-rbdplugin-fc6r7 csi-rbdplugin-h4jl4 csi-rbdplugin-provisioner-6585465959-k9hr6 csi-rbdplugin-provisioner-6585465959-nwzxf csi-rbdplugin-v2sb8 csi-rbdplugin-w9skr

                          1 条回复 最后回复 回复 引用 0
                          • Z
                            zhanglu 最后由 编辑

                            kubectl -n rook-ceph get cephcluster -o yaml | grep -A 5 -B 2 network

                            1 条回复 最后回复 回复 引用 0
                            • Z
                              zhanglu 最后由 编辑

                              kubectl -n rook-ceph get pod -l app=rook-ceph-mon -o jsonpath='{.items[0].spec.hostNetwork}'

                              kubectl -n rook-ceph get pod -o wide -l app=rook-ceph-mon

                              kubectl -n rook-ceph logs -l app=rook-ceph-operator --tail=200 | grep -Ei "network|error|failed"

                              kubectl -n rook-ceph get events --sort-by='.metadata.creationTimestamp' | grep -i network

                              1 条回复 最后回复 回复 引用 0
                              • Z
                                zhanglu 最后由 编辑

                                kubectl -n rook-ceph get cephcluster rook-ceph -o jsonpath='{.spec.network}'

                                kubectl -n rook-ceph describe cephcluster rook-ceph | grep -A 10 -i "Events:"

                                kubectl -n rook-ceph get cephcluster rook-ceph -o jsonpath='{.status.conditions}'

                                kubectl -n rook-ceph edit cephcluster rook-ceph

                                1 条回复 最后回复 回复 引用 0
                                • Z
                                  zhanglu 最后由 编辑

                                  network:
                                  provider: host
                                  selectors:
                                  public: "192.168.x.0/24" # 换成你 node1-node8 物理内网实际的 IP 段
                                  cluster: "192.168.x.0/24" # 如果是单网卡,写一样的;双网卡写心跳专属网段

                                  1 条回复 最后回复 回复 引用 0
                                  • Z
                                    zhanglu 最后由 编辑

                                    kubectl -n rook-ceph edit deployment rook-ceph-mon-bu

                                    1 条回复 最后回复 回复 引用 0
                                    • Z
                                      zhanglu 最后由 编辑

                                      kubectl -n rook-ceph get deployment rook-ceph-mon-bu -o yaml | grep -E "hostNetwork|dnsPolicy"

                                      1 条回复 最后回复 回复 引用 0
                                      • Z
                                        zhanglu 最后由 编辑

                                        hostNetwork: true
                                        dnsPolicy: ClusterFirstWithHostNet

                                        1 条回复 最后回复 回复 引用 0
                                        • Z
                                          zhanglu 最后由 编辑

                                          kubectl -n rook-ceph get pod -A | grep osd-prepare | grep node1

                                          kubectl -n rook-ceph get job | grep osd-prepare | grep node1
                                          kubectl -n rook-ceph delete job -l app=rook-ceph-osd-prepare
                                          watch "kubectl -n rook-ceph get pod -o wide | grep osd-prepare"

                                          1 条回复 最后回复 回复 引用 0
                                          • Z
                                            zhanglu 最后由 编辑

                                            kubectl -n rook-ceph delete job rook-ceph-osd-prepare-node1

                                            1 条回复 最后回复 回复 引用 0
                                            • First post
                                              Last post
                                            Powered by 暗能星系