首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么K3s系统升级控制器在“找不到,请求”时会失败?

为什么K3s系统升级控制器在“找不到,请求”时会失败?
EN

Stack Overflow用户
提问于 2022-09-12 12:22:07
回答 1查看 148关注 0票数 0

我安装了系统升级控制器并应用此计划清单:

代码语言:javascript
运行
复制
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
  name: master-plan
  namespace: system-upgrade
spec:
  concurrency: 1
  cordon: true
  nodeSelector:
    matchExpressions:
    - key: k3s-master-upgrade
      operator: In
      values:
      - "true"
  serviceAccountName: system-upgrade
  upgrade:
    image: rancher/k3s-upgrade
  channel: https://update.k3s.io/v1-release/channels/stable
---
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
  name: worker-plan
  namespace: system-upgrade
spec:
  concurrency: 1
  cordon: true
  nodeSelector:
    matchExpressions:
    - key: k3s-worker-upgrade
      operator: In
      values:
      - "true"
  prepare:
    args:
    - prepare
    - master-plan
    image: rancher/k3s-upgrade
  serviceAccountName: system-upgrade
  upgrade:
    image: rancher/k3s-upgrade
  channel: https://update.k3s.io/v1-release/channels/stable

我申请并检查了标签:

代码语言:javascript
运行
复制
$ kubectl label node crux k3s-worker-upgrade=true
$ kubectl describe nodes crux | grep k3s-worker-upgrade
                    k3s-worker-upgrade=true

$ kubectl label node nemo k3s-master-upgrade=true
$ kubectl describe nodes nemo | grep k3s-master-upgrade
                    k3s-master-upgrade=true

根据kubectl get nodes的说法,我还在v1.23.6+k3s1上,但是稳定的频道是在v1.24.4+k3s1上。

我得到以下错误:

代码语言:javascript
运行
复制
$ kubectl -n system-upgrade logs deployment.apps/system-upgrade-controller

time="2022-09-12T11:29:31Z" level=error msg="error syncing 'system-upgrade/apply-worker-plan-on-crux-with-4190e4adda3866e909fc7735c1-f0dff': handler system-upgrade-controller: jobs.batch \"apply-worker-plan-on-crux-with-4190e4adda3866e909fc7735c1-f0dff\" not found, requeuing"
time="2022-09-12T11:30:35Z" level=error msg="error syncing 'system-upgrade/apply-master-plan-on-nemo-with-4190e4adda3866e909fc7735c1-9cf4f': handler system-upgrade-controller: jobs.batch \"apply-master-plan-on-nemo-with-4190e4adda3866e909fc7735c1-9cf4f\" not found, requeuing"
代码语言:javascript
运行
复制
$ kubectl -n system-upgrade get jobs -o yaml

- apiVersion: batch/v1
  kind: Job
  metadata:
    labels:
      upgrade.cattle.io/controller: system-upgrade-controller
      upgrade.cattle.io/node: crux
      upgrade.cattle.io/plan: worker-plan
      upgrade.cattle.io/version: v1.24.4-k3s1
  status:
    conditions:
    - lastProbeTime: "2022-09-12T12:14:31Z"
      lastTransitionTime: "2022-09-12T12:14:31Z"
      message: Job was active longer than specified deadline
      reason: DeadlineExceeded
      status: "True"
      type: Failed
    failed: 1
    startTime: "2022-09-12T11:59:31Z"
    uncountedTerminatedPods: {}
EN

回答 1

Stack Overflow用户

发布于 2022-10-24 20:42:05

我也是。

仅通过使用二进制文件手动升级,我才成功地升级了k3s。

在所有节点上:

代码语言:javascript
运行
复制
 wget https://github.com/k3s-io/k3s/releases/download/v1.24.4%2Bk3s1/k3s

在服务器(主服务器)上:

代码语言:javascript
运行
复制
systemctl stop k3s
cp ./k3s  /usr/local/bin/
systemctl start k3s

关于代理人(工人):

代码语言:javascript
运行
复制
systemctl stop k3s-agent
cp ./k3s  /usr/local/bin/
systemctl start k3s-agent

似乎比自动升级更快更容易,没有排水沟,没有警戒线.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73689194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档