创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。
操作系统信息
master/worker:阿里云主机,Ubuntu20.04,2C/4G
edge:虚拟机,Ubuntu18.04,4C/4G
Kubernetes版本信息
Client Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.10", GitCommit:"7e54d50d3012cf3389e43b096ba35300f36e0817", GitTreeState:"clean", BuildDate:"2022-08-17T18:32:54Z", GoVersion:"go1.17.13", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.10", GitCommit:"7e54d50d3012cf3389e43b096ba35300f36e0817", GitTreeState:"clean", BuildDate:"2022-08-17T18:26:59Z", GoVersion:"go1.17.13", Compiler:"gc", Platform:"linux/amd64"}
master/worker 容器运行时
docker version
Client:
Version: 20.10.8
API version: 1.41
Go version: go1.16.6
Git commit: 3967b7d
Built: Fri Jul 30 19:50:40 2021
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.8
API version: 1.41 (minimum version 1.12)
Go version: go1.16.6
Git commit: 75249d8
Built: Fri Jul 30 19:55:09 2021
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: v1.4.9
GitCommit: e25210fe30a0a703442421b0f60afac609f950a3
runc:
Version: 1.0.1
GitCommit: v1.0.1-0-g4144b638
docker-init:
Version: 0.19.0
GitCommit: de40ad0
crictl version
null
nerdctl version
null
edge 容器运行时
docker version
Client: Docker Engine - Community
Version: 20.10.21
API version: 1.41
Go version: go1.18.7
Git commit: baeda1f
Built: Tue Oct 25 18:02:00 2022
OS/Arch: linux/amd64
Context: default
Experimental: true
Server: Docker Engine - Community
Engine:
Version: 20.10.21
API version: 1.41 (minimum version 1.12)
Go version: go1.18.7
Git commit: 3056208
Built: Tue Oct 25 17:59:53 2022
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.10
GitCommit: 770bd0108c32f3fb5c73ae1264f7e503fe7b2661
runc:
Version: 1.1.4
GitCommit: v1.1.4-0-g5fd4c4d
docker-init:
Version: 0.19.0
GitCommit: de40ad0
crictl version
null
nerdctl version
null
KubeSphere版本信息
v3.3.1/在线安装/kk安装
问题是什么
背景:云端部署K8s服务,边缘侧部署edge节点。边缘侧在无外网IP的情况下,验证是否能调度容器、做OTA升级。
阶段:
- 配置EdgeMesh
- 收集边缘节点监控信息,metrics_server: true,并重启边缘节点
- 目前云节点已接入边缘节点,已经成功apply了一个ubuntu镜像在边缘节点
- 发现边缘侧的容器组,有容器Pending、Error

- 根据K9s的官方指引(步骤9)操作后,仍无法驱逐现有的Pod
边缘侧docker镜像:
问题:如何正确驱逐或者正确执行相关容器。我看到相关日志提示:KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT must be defined
具体是需要在哪里定义
相关异常container日志
k8s_kube-rbac-proxy-self
F1207 02:38:34.454864 1 main.go:421] cannot find Service Account in pod to build in-cluster rest config: unable to load in-cluster configuration, KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT must be defined
goroutine 1 [running]:
k8s.io/klog/v2.stacks(0xc00000e001, 0xc000144000, 0xdc, 0x130)
/home/runner/go/pkg/mod/k8s.io/klog/v2@v2.3.0/klog.go:996 +0xb9
k8s.io/klog/v2.(*loggingT).output(0x22af0c0, 0xc000000003, 0x0, 0x0, 0xc000346070, 0x2207d01, 0x7, 0x1a5, 0x0)
/home/runner/go/pkg/mod/k8s.io/klog/v2@v2.3.0/klog.go:945 +0x191
k8s.io/klog/v2.(*loggingT).printf(0x22af0c0, 0x3, 0x0, 0x0, 0x17b5726, 0x46, 0xc000699898, 0x1, 0x1)
/home/runner/go/pkg/mod/k8s.io/klog/v2@v2.3.0/klog.go:733 +0x17a
k8s.io/klog/v2.Fatalf(...)
/home/runner/go/pkg/mod/k8s.io/klog/v2@v2.3.0/klog.go:1463
main.initKubeConfig(0x0, 0x0, 0x4)
/home/runner/work/kube-rbac-proxy/kube-rbac-proxy/main.go:421 +0x196
main.main()
/home/runner/work/kube-rbac-proxy/kube-rbac-proxy/main.go:142 +0xe69
goroutine 6 [chan receive]:
k8s.io/klog/v2.(*loggingT).flushDaemon(0x22af0c0)
/home/runner/go/pkg/mod/k8s.io/klog/v2@v2.3.0/klog.go:1131 +0x8b
created by k8s.io/klog/v2.init.0
/home/runner/go/pkg/mod/k8s.io/klog/v2@v2.3.0/klog.go:416 +0xd8
k8s_kube-state-metrics
I1207 03:28:45.221607 1 server.go:93] Using default resources
I1207 03:28:45.221666 1 types.go:136] Using all namespace
I1207 03:28:45.221810 1 server.go:122] Metric allow-denylisting: Excluding the following lists that were on denylist: kube_secret_(type), kube_cronjob_(info|status_.+|spec_.+), kube_(hpa|replicaset|replicationcontroller)_.+_generation, kube_persistentvolume_(info|capacity_.+), kube_replicaset_(status_.+|spec_.+|owner), kube_.+_version, kube_deployment_(spec_paused|spec_strategy_rollingupdate_.+), kube_endpoint_(info|address_.+), kube_namespace_(status_phase), kube_.+_created, kube_job_(info|owner|spec_(parallelism|active_deadline_seconds)|status_(active|.+_time)), kube_persistentvolumeclaim_(resource_.+|access_.+), kube_poddisruptionbudget_status_.+, kube_node_info, kube_replicationcontroller_.+, kube_pod_container_status_.*terminated_reason, kube_service_(spec_.+|status_.+), kube_ingress_(info|path|tls)
W1207 03:28:45.221830 1 client_config.go:617] Neither --kubeconfig nor --master was specified. Using the inClusterConfig. This might not work.
W1207 03:28:45.221836 1 client_config.go:622] error creating inClusterConfig, falling back to default config: unable to load in-cluster configuration, KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT must be defined
F1207 03:28:45.221913 1 main.go:65] Failed to run kube-state-metrics: failed to create client: invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
goroutine 1 [running]:
k8s.io/klog/v2.stacks(0x1)
/go/pkg/mod/k8s.io/klog/v2@v2.60.1/klog.go:860 +0x8a
k8s.io/klog/v2.(*loggingT).output(0x264d0a0, 0x3, 0x0, 0xc000362540, 0x1, {0x1e5b651?, 0x1?}, 0x264e2a0?, 0x0)
/go/pkg/mod/k8s.io/klog/v2@v2.60.1/klog.go:825 +0x686
k8s.io/klog/v2.(*loggingT).printfDepth(0x264d0a0, 0x0?, 0x0, {0x0, 0x0}, 0x7fd549e78a20?, {0x18a2283, 0x24}, {0xc0002a3de0, 0x1, ...})
/go/pkg/mod/k8s.io/klog/v2@v2.60.1/klog.go:630 +0x1f2
k8s.io/klog/v2.(*loggingT).printf(...)
/go/pkg/mod/k8s.io/klog/v2@v2.60.1/klog.go:612
k8s.io/klog/v2.Fatalf(...)
/go/pkg/mod/k8s.io/klog/v2@v2.60.1/klog.go:1516
main.main()
/go/src/k8s.io/kube-state-metrics/main.go:65 +0x514
goroutine 14 [runnable]:
os/signal.signal_enable(0x1?)
/usr/local/go/src/runtime/sigqueue.go:220 +0x79
os/signal.enableSignal(...)
/usr/local/go/src/os/signal/signal_unix.go:49
os/signal.Notify.func1(0x1658be0?)
/usr/local/go/src/os/signal/signal.go:145 +0x73
os/signal.Notify(0xc00050e000, {0xc000057fc0, 0x1, 0x0?})
/usr/local/go/src/os/signal/signal.go:165 +0x1ff
k8s.io/kube-state-metrics/v2/pkg/util/proc.StartReaper.func1()
/go/src/k8s.io/kube-state-metrics/pkg/util/proc/reaper.go:37 +0x78
created by k8s.io/kube-state-metrics/v2/pkg/util/proc.StartReaper
/go/src/k8s.io/kube-state-metrics/pkg/util/proc/reaper.go:35 +0xa5
k8s_tenant_notification-manager
W1207 03:28:38.025205 1 client_config.go:615] Neither --kubeconfig nor --master was specified. Using the inClusterConfig. This might not work.
W1207 03:28:38.025231 1 client_config.go:620] error creating inClusterConfig, falling back to default config: unable to load in-cluster configuration, KUBERNETES_SERVICE_HOST and KUBERNETES_SERVICE_PORT must be defined
E1207 03:28:38.025303 1 runtime.go:47] create kubernetes client error, invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
E1207 03:28:38.025308 1 main.go:79] start kubesphere runtime error, invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
Error: invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
Usage:
kubesphere-tenant-sidecar [flags]
Flags:
-h, --help help for kubesphere-tenant-sidecar
--kubeconfig string kubeconfig path
2022/12/07 03:28:38 invalid configuration: no configuration has been provided, try setting KUBERNETES_MASTER environment variable