gpt4 book ai didi

kubernetes - 官方文档中每个节点的 Kubernetes pod 的 GKE 不匹配限制

转载 作者:行者123 更新时间:2023-12-02 11:55:22 25 4
gpt4 key购买 nike

我在谷歌云平台上调整一个小型 kubernetes 集群,我的引用是以下文档:
https://cloud.google.com/kubernetes-engine/docs/how-to/flexible-pod-cidr#overview

所以我有

  • 3个节点
  • /24 用于 pod
  • /25 服务
  • 集群创建中每个节点设置 16 个 pod

  • 当我部署集群并启动 POD 的 nginx 副本时,我最多只能达到 30 个,而我希望达到 48 个 POD。

    根据谷歌文档,我应该有一个/27(我可以看到在每个节点上分配)和 9-16 之间的节点范围。
    现在,虽然考虑到 9-16 范围,平均 10 个节点是公平的,但我不明白为什么它没有扩大到这个数字以上。

    这是供您审查的代码,我无法查看是否有任何其他限制:
    gcloud compute networks subnets create $SERVICE_PROJECT1_SUB_K8S_NODES \
    --network $SHAREDVPC --region $REGION \
    --range 10.222.5.32/28 --secondary-range \
    $SERVICE_PROJECT1_SUB_K8S_PODS=10.222.6.0/24, \
    $SERVICE_PROJECT1_SUB_K8S_SERVICES=10.222.5.128/25 \
    --enable-private-ip-google-access
    gcloud beta container clusters create service1-k8s-cluster \
    --zone $REGION \
    --network projects/$HOST_PROJECT_ID/global/networks/$SHAREDVPC \
    --subnetwork projects/$HOST_PROJECT_ID/regions/$REGION/subnetworks/$SERVICE_PROJECT1_SUB_K8S_NODES \
    --cluster-secondary-range-name $SERVICE_PROJECT1_SUB_K8S_PODS \
    --services-secondary-range-name $SERVICE_PROJECT1_SUB_K8S_SERVICES \
    --enable-master-authorized-networks \
    --master-authorized-networks 10.222.1.0/24 \
    --enable-ip-alias \
    --enable-private-nodes \
    --enable-private-endpoint \
    --master-ipv4-cidr $SERVICE_PROJECT1_SUB_K8S_MASTER \
    --no-enable-basic-auth \
    --no-issue-client-certificate \
    --enable-master-global-access \
    --num-nodes 1 \
    --default-max-pods-per-node 16 \
    --max-pods-per-node 16 \
    --machine-type n1-standard-2

    我在 POD 中看到的错误
    Events:
    Type Reason Age From Message
    ---- ------ ---- ---- -------
    Normal NotTriggerScaleUp 4m53s (x151 over 29m) cluster-autoscaler pod didn't trigger scale-up (it wouldn't fit if a new node is added):
    Warning FailedScheduling 8s (x22 over 29m) default-scheduler 0/3 nodes are available: 3 Insufficient pods.

    最佳答案

    您永远不会达到 48 的阈值,有一些用于守护程序集的 IP 会阻止您达到您为自己设置的高阈值,例如在我的集群中我有以下

     kube-system                fluentd-gcp-v3.1.1-grkv8                                          100m (1%)     1 (12%)     200Mi (0%)       500Mi (1%)     10d
    kube-system kube-proxy-gke-eng-e2e-main-gke-e2e-n1-highmem-8-501281f5-9ck0 100m (1%) 0 (0%) 0 (0%) 0 (0%) 3d19h
    kube-system network-metering-agent-ck74l 0 (0%) 0 (0%) 0 (0%) 0 (0%) 10d
    kube-system prometheus-to-sd-qqsn6 1m (0%) 3m (0%) 20Mi (0%) 37Mi (0%) 10d
    monitor prometheus-prometheus-node-exporter-8229c 0 (0%) 0 (0%) 0 (0%) 0 (0%) 11d
    neuvector neuvector-enforcer-pod-p79j5 100m (1%) 2 (25%) 128Mi (0%) 1Gi (2%) 11d

    这是针对每个节点,守护程序集在每个节点上部署这些 pod,有效地将我的应用程序 pod 可用的 IP 数量减少了 6。

    关于kubernetes - 官方文档中每个节点的 Kubernetes pod 的 GKE 不匹配限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62011399/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com