0
  • 我想扩展我的 statefulset,并希望使用 Kubernetes API(http 请求)从 pod(容器)内部到 kubernetes 休息服务器启动这种扩展。
  • 我尝试使用扩展 statefulset pod

PUT /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale

  • 但这对我不起作用。

甚至尝试使用获取指定 statefulset 的比例数据

“获取 /apis/apps/v1/namespaces/{namespace}/statefulsets/{name}/scale”

请求: curl -s -k -H "授权:承载 $TOKEN" -X GET https://kubernetes.default.svc:443/apis/apps/v1/namespaces/$Namespace/$Kind/$PodNamePrefix/scale

给出一个错误:

有人可以帮我吗?

4

1 回答 1

5

您需要使用和授权服务帐户执行所需的操作来定义RBACRoleRoleBinding

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  namespace: default
  name: ss-role
rules:
- apiGroups: ["apps"]
  resources: ["statefulsets/scale" ]
  verbs: ["get", "list", "create"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  namespace: default
  name: ss-rolebinding
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: ss-role
subjects:
- kind: ServiceAccount
  name: default
  namespace: default

以上是基于您使用命名空间Role的服务帐户来扩展命名空间的假设。RoleBindingdefaultdefaultstatefulsetsdefault

于 2020-08-21T09:01:39.580 回答