小编Edu*_*llo的帖子

如何通过 kubectl 命令识别静态 Pod?

我的 Kubernetes 集群中的 2 个节点中有多个 pod。(请参见下文)。

有没有办法告诉我哪些是静态 Pod?(也许是某种kubectl命令?)

谢谢!

controlplane $ k get pods -A -o wide
NAMESPACE     NAME                                   READY   STATUS    RESTARTS   AGE    IP            NODE           NOMINATED NODE   READINESS GATES
kube-system   coredns-f9fd979d6-h865q                1/1     Running   0          119s   10.244.0.5    node02   <none>           <none>
kube-system   coredns-f9fd979d6-z4j6f                1/1     Running   0          119s   10.244.1.5    node01         <none>           <none>
kube-system   etcd-a1b2k7h7                      1/1     Running   0          2m9s   172.17.0.79   node02   <none>           <none>
kube-system   kube-apiserver-g8j4k8o8            1/1     Running   0          2m9s   172.17.0.79   node02   <none>           <none>
Run Code Online (Sandbox Code Playgroud)

kubernetes kubectl kubernetes-pod

13
推荐指数
2
解决办法
8145
查看次数

在 Ingress 资源中找不到端点“default-http-backend”

当我尝试为我的 Kubernetes 集群创建入口资源时(入口控制器已经创建),入口资源/规则正在创建,我能够在 kubectl get 中看到。但是当我执行 kubectl describe 时,我看到了一个错误:

默认后端:default-http-backend:80(<错误:未找到端点“default-http-backend”>)

这是预期的吗??我什至无法使用hotel.example.com我在 Ingress 资源中定义的 DNS 名称 ( )连接到我的应用程序。是因为这个 http-backend 错误吗?如果没有,任何使应用程序连接的建议!!

[dockuser@kubemaster ingress-controller-domain-name-or-path-based-routing]$ kubectl describe ing hotel-ingress --namespace hotel
Name: hotel-ingress
Namespace: hotel
Address:
Default backend: default-http-backend:80 (<error: endpoints "default-http-backend" not found>)
Rules:
Host Path Backends

hotel.example.com
/ hotel-svc:80 (10.36.0.2:80,10.44.0.2:80)
Annotations: Events:


apiVersion: v1
kind: Namespace
metadata:
name: hotel

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: hotel-ingress
namespace: hotel
spec:
rules:

host: hotel.example.com
http:
paths:
path: /
backend:
serviceName: hotel-svc
servicePort: …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubernetes-ingress

11
推荐指数
4
解决办法
3万
查看次数

MSBUILD:错误 MSB1011:指定要使用的项目或解决方案文件,因为此文件夹包含多个项目或解决方案文件

我是 docker 新手,正在尝试为 ASP.NET Core 应用程序创建一个 Dockerfile。有人可以建议我需要哪些更改吗?

这是我的 Dockerfile:

FROM microsoft/dotnet:2.1-sdk  
WORKDIR /app  
COPY Presentation/ECCP.Web/ *.csproj ./  
RUN dotnet restore  
COPY . ./  
RUN dotnet publish -c Release -o out  

FROM microsoft/aspnetcore:2.0  
WORKDIR /app  
COPY --from=build-env /app/out .  
ENTRYPOINT ["dotnet", "api.dll"]  
Run Code Online (Sandbox Code Playgroud)

我面临以下错误:

MSBUILD:错误 MSB1011:指定要使用的项目或解决方案文件,因为此文件夹包含多个项目或解决方案文件。命令“/bin/sh -c dotnet publish -c Release -o out”返回非零代码:1

asp.net docker

9
推荐指数
1
解决办法
2万
查看次数

将时间戳附加到 kubernetes --watch-only 命令

我正在运行 Kubernetes 作业,我想监视状态。我--watch-only同时运行各种命令,例如 kubectl get pods --watch-only,它向我显示了 Pod 的更新状态。但是,我想在输出中附加时间戳和一些字符串。

这个想法是了解状态何时发生变化,并以字符串形式添加附加信息。

我怎样才能实现这个目标?

kubernetes kubectl

7
推荐指数
1
解决办法
4835
查看次数

如何使用配置文件使Prometheus Alertmanager静音?

我使用的是官方的稳定/ prometheus-operator图表,确实使用头盔部署了Prometheus。

到目前为止,它运行良好,除了烦人的CPUThrottlingHigh警报正在触发许多Pod(包括自己的Prometheus的config-reloaders容器)。该警报当前正在讨论中,我现在暂时使其通知静音。

Alertmanager具有静音功能,但它是基于Web的:

静默是一种简单的方法,可以在给定时间内简单地使警报静音。在Alertmanager的Web界面中配置沉默。

有没有一种方法可以CPUThrottlingHigh使配置文件中的通知静音?

kubernetes prometheus prometheus-operator prometheus-alertmanager

6
推荐指数
3
解决办法
4047
查看次数

如何在microk8s中使用本地docker镜像?

我一直在使用minikube在本地测试Kubernetes。在minikube中,我们可以通过使用eval $(minikube docker-env)命令来使用本地docker映像。

我开始探索microk8。在我的在Ubuntu 18上运行的计算机上使用snap安装了microk8s。

除了创建本地docker注册表外,还有什么方法可以将本地docker镜像与microk8一起使用,就像我们使用minikube进行测试和开发一样?

microk8s.docker 命令也无法正常工作,它显示:

找不到命令'microk8s.docker',但可以使用以下命令安装:

快速安装microk8s

但已安装。

docker kubernetes minikube microk8s

6
推荐指数
2
解决办法
3028
查看次数

如何根据 values.yaml 中的输入使 helm 发布失败

我正在使用helm install命令安装舵图。我有values.yaml它需要用户的一些输入。其中的一个键values.yamlaction,它只能采用三个预定义的值(比如action1action2action3)作为输入。除此以外的任何其他值均无效。

当用户向操作字段提供值values.yaml并触发helm install命令时,我需要检查的第一件事是操作键是否具有有效值。如果操作值无效,我希望发布失败并显示正确的错误消息。

例如:如果用户给出了action: action4,则这是无效的并且发布应该失败,因为.Values.action只能是action1action2action3

考虑到 helm 结构,我如何实现这个用例以及哪个文件最适合处理这个验证?

kubernetes kubernetes-helm

6
推荐指数
1
解决办法
2038
查看次数

调用 kubeadm init 时,kubeadm 无法初始化

我是 kubernetes 的新手并试图配置 kubernetes 主节点,我已经安装了 kubeadm、kubectl 和 kubelet

https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/

但是当我尝试通过键入启动 kubeadm 时kubeadm init,它给了我以下错误

[init] Using Kubernetes version: v1.14.0
[preflight] Running pre-flight checks
        [WARNING Firewalld]: no supported init system detected, skipping checking for services
        [WARNING Service-Docker]: no supported init system detected, skipping checking for services
        [WARNING IsDockerSystemdCheck]: detected "cgroupfs" as the Docker cgroup driver. The recommended driver is "systemd". Please follow the guide at https://kubernetes.io/docs/setup/cri/
        [WARNING Service-Kubelet]: no supported init system detected, skipping checking for services
error execution phase …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubeadm

6
推荐指数
1
解决办法
6712
查看次数

如何使用kubeadm升级来更改kubeadm-config中的某些功能

我想在现有的kubernetes集群(v1.10)上安装kube-prometheus。在此之前,医生说我需要将控制器/调度程序的IP地址从127.0.0.1更改为0.0.0.0。并且还建议使用kubeadm配置升级来更改以下功能:

controllerManagerExtraArgs:
  address: 0.0.0.0
schedulerExtraArgs:
  address: 0.0.0.0
Run Code Online (Sandbox Code Playgroud)

阅读文档后,我尝试使用以下命令,但没有成功:

kubeadm upgrade --feature-gates controllerManagerExtraArgs.address=0.0.0.0 
Run Code Online (Sandbox Code Playgroud)

我知道我可以kubectl -n kube-system edit cm kubeadm-config直接修改configMap,只想知道如何从中升级kubeadm upgrade

kubernetes prometheus kubeadm

5
推荐指数
1
解决办法
1571
查看次数

我在 minikube 中总是出现“设备上没有剩余空间”的问题,即使系统有可用空间,如何解决?

我正在使用 ubuntu-16.04 和 docker 版本 19.03.8 在本地系统中使用 Helm 3 运行 minikube(版本:v1.10.1)。目前,即使本地磁盘有足够的空间,我也会遇到“没有剩余空间”的问题。

如何增加空间?这是 POD 描述细节:

  Normal   Scheduled  3m41s                default-scheduler  Successfully assigned default/greeter-5fb8ccb96b-zwzfc to minikube
  Warning  Failed     108s                 kubelet, minikube  Failed to pull image "12345.dkr.ecr.ap-south-1.amazonaws.com/micro:latest": rpc error: code = Unknown desc = write /var/lib/docker/tmp/GetImageBlob679392224: no space left on device
  Warning  Failed     55s (x2 over 108s)   kubelet, minikube  Error: ErrImagePull
  Warning  Failed     55s                  kubelet, minikube  Failed to pull image "12345.dkr.ecr.ap-south-1.amazonaws.com/micro:latest": rpc error: code = Unknown desc = write /var/lib/docker/tmp/GetImageBlob816503247: no space left on …
Run Code Online (Sandbox Code Playgroud)

kubernetes minikube kubernetes-helm

5
推荐指数
1
解决办法
3903
查看次数