标签: kubernetes-pod

Pod 无限期地停留在 PodInitializing 状态

我有一个 k8s cronjob,它由一个 init 容器和一个 pod 容器组成。如果 init 容器失败,主容器中的 Pod 永远不会启动,并无限期地停留在“PodInitializing”中。

如果 init 容器失败,我的目的是让作业失败。

---
apiVersion: batch/v1beta1
kind: CronJob
metadata:
  name: job-name
  namespace: default
  labels:
    run: job-name
spec:
  schedule: "15 23 * * *"
  startingDeadlineSeconds: 60
  concurrencyPolicy: "Forbid"
  successfulJobsHistoryLimit: 30
  failedJobsHistoryLimit: 10
  jobTemplate:
    spec:
      # only try twice
      backoffLimit: 2
      activeDeadlineSeconds: 60
      template:
        spec:
          initContainers:
          - name: init-name
            image: init-image:1.0
          restartPolicy: Never
          containers:
          - name: some-name
            image: someimage:1.0
          restartPolicy: Never
Run Code Online (Sandbox Code Playgroud)

pod 上的 kubectl 卡住会导致:

Name:               job-name-1542237120-rgvzl
Namespace:          default
Priority:           0 …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubernetes-pod kubernetes-cronjob kubernetes-jobs

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

没有标签的节点数?

如何使用kubectl获取没有任何标签的K8S节点?另外,如何获取没有任何标签的 K8S Pod?

kubernetes google-kubernetes-engine kubectl kubernetes-pod azure-aks

15
推荐指数
3
解决办法
1万
查看次数

Kubernetes - pod 具有未绑定的即时 PersistentVolumeClaims

我正在使用 mysql Kubernetes statefulset,我将 PV 映射到主机目录(CentOS 8 VM)但得到“pod has unbound直接 PersistentVolumeClaims”

apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: mysql-container
spec:
  serviceName: mysql
  replicas: 1 
  selector:
    matchLabels:
      app: mysql-container
  template:
    metadata:
      labels:
        app: mysql-container
    spec:
      containers:
      - name: mysql-container
        image: mysql:dev
        imagePullPolicy: "IfNotPresent"
        envFrom:
          - secretRef:
             name: prod-secrets
        ports:
        - containerPort: 3306
         # container (pod) path
        volumeMounts:
          - name: mysql-persistent-storage
            mountPath: /var/lib/mysql


      volumes:
        - name: mysql-persistent-storage
          persistentVolumeClaim:
           claimName: mysql-pvc
 volumeClaimTemplates:
    - metadata:
        name: data
      spec:

        storageClassName: localstorage
        accessModes: ["ReadWriteOnce"]
        resources:
          requests:
            storage: …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubernetes-statefulset kubernetes-pod

15
推荐指数
2
解决办法
3万
查看次数

我们可以将多个 Pod 连接到同一个 PVC 吗?

我的意思是 pod 和 PVC 之间是否存在一对一或多对一的关系?我可以将两个或多个 Pod 连接到同一个 PVC(持久卷声明),而不删除或断开先前创建的 Pod 吗?

kubernetes persistent-volume-claims kubernetes-pod

14
推荐指数
2
解决办法
3万
查看次数

如何通过 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
查看次数

Kubernetes 使用 podAntiAffinity 与 topologySpreadConstraints 跨节点传播 pod

我目前正在使用以下方法尝试将给定部署中的 Kubernetes Pod 均匀地分布在所有 Kubernetes 节点上:

    spec:
      affinity:
        podAntiAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
          - weight: 100
            podAffinityTerm:
              topologyKey: kubernetes.io/hostname
              labelSelector:
                matchExpressions:
                - key: app
                  operator: In
                  values:
                  - api
Run Code Online (Sandbox Code Playgroud)

然而,我注意到topologySpreadConstraintsKubernetes 最近添加了一个新属性。在 Kubernetes 部署中从使用切换affinity.podAntiAffinity到使用有什么优势?topologySpreadConstraints有什么理由要转行吗?该语法会是什么样子来匹配我目前在上面所做的事情?

kubernetes kubernetes-deployment kubernetes-pod

12
推荐指数
1
解决办法
9282
查看次数

如何在 Kubernetes 中按特定顺序配置 Pod 初始化?

我想知道如何按特定顺序开始部署。我知道,initContainers但这对我不起作用。我有一个巨大的平台,有大约 20 个部署和 5 个状态集,每个都有自己的服务、环境变量、卷、水平自动缩放器等。所以不可能(或者我不知道如何)在另一个中定义它们yaml 部署为initContainers.

是否还有其他选项可以按特定顺序启动部署?

deployment kubernetes kubernetes-pod

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

Kubernetes Pod 终止 - 退出代码 137

我需要一些关于 k8s 1.14 和在其上运行 gitlab 管道的问题的建议。许多作业都抛出退出代码 137 错误,我发现这意味着容器突然终止。


集群信息:

Kubernetes 版本:1.14 正在使用的云:AWS EKS 节点:C5.4xLarge


深入挖掘后,我发现了以下日志:

**kubelet: I0114 03:37:08.639450**  4721 image_gc_manager.go:300] [imageGCManager]: Disk usage on image filesystem is at 95% which is over the high threshold (85%). Trying to free 3022784921 bytes down to the low threshold (80%).

**kubelet: E0114 03:37:08.653132**  4721 kubelet.go:1282] Image garbage collection failed once. Stats initialization may not have completed yet: failed to garbage collect required amount of images. Wanted to free 3022784921 bytes, but freed 0 …
Run Code Online (Sandbox Code Playgroud)

linux kubernetes kubernetes-pod amazon-eks

11
推荐指数
5
解决办法
2万
查看次数

我们如何查看 kubernetes 中缓存的图像?

我使用 kops 作为 kubernetes 部署。

imagepullpolicy我注意到,每当在部署文件中输入具有相同标签号的图像时,如果未设置为,系统就会采用前一个图像always

有什么方法可以查看 kubernetes 环境中容器的所有缓存图像吗?

假设我test:56当前有一个部署中运行的映像并且之前test:1使用test:55过,那么 kubernetes 是否缓存这些映像?如果是,在哪里可以找到这些?

containers docker kubernetes docker-image kubernetes-pod

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

StatefulSets 中并行 podManagementPolicy 相对于 OrderedReady podManagementPolicy 有哪些优缺点?

我最近将 StatefulSet 中的 podManagementPolicy 字段从默认(OrderedReady)更新为 Parallel。

  • 它显着减少了放大和缩小时间。
  • 到目前为止,我还没有看到这一变化的任何缺点,但我担心是否会出现任何可能给我带来问题的情况?

我想知道我是否会遇到任何问题?

cloud kubernetes microservices kubernetes-statefulset kubernetes-pod

11
推荐指数
2
解决办法
8905
查看次数