标签: google-kubernetes-engine

Kubernetes NodePort自定义端口

有没有办法在kubernetes服务YAML定义中指定自定义NodePort端口?我需要能够在配置文件中显式定义端口.

networking docker kubernetes google-kubernetes-engine flannel

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

403"gcloud容器集群get-credentials期间请求的认证范围不足"

从GCE的VM中,我做了以下操作

gcloud auth activate-service-account --key-file <blah>
# "blah" is a service account key file (JSON) I generated from the web interface
gcloud config set project <project-name>
gcloud config set compute/zone <zone-name>
gcloud set container/cluster <cluster-name>
Run Code Online (Sandbox Code Playgroud)

然后,当我试图跑

gcloud container clusters get-credentials <cluster-name>
Run Code Online (Sandbox Code Playgroud)

它失败并显示错误消息:

错误消息:"错误:(gcloud.container.clusters.get-credentials)ResponseError:code = 403,message = Request的身份验证范围不足."

VM与GKE集群位于同一网络中.我使用来自GCE外部的计算机的相同服务帐户密钥文件,针对"默认"网络上的GKE集群尝试了同样的事情,并且它成功...

google-cloud-platform google-kubernetes-engine

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

如何在GKE上配置Ingress请求超时

我目前在GKE(k8s 1.2)上配置了Ingress,以便将请求转发到我的应用程序的pod.我有一个请求,可能需要很长时间(30秒)和我的应用程序超时(504).我观察到,当我这样做时,我收到的响应不是我自己的504,而是60秒后看起来像Google Loadbalancer的502 .

我玩了不同的状态代码和持续时间,正好在30秒后我开始接收这种奇怪的行为,无论发出的状态代码如何.

任何人都知道如何解决这个问题?有没有办法重新配置这种行为?

kubernetes google-kubernetes-engine

25
推荐指数
2
解决办法
3725
查看次数

如何在GCE上将NodePort公开给互联网

如何NodePort使用类型的情况下将类型的服务公开给互联网LoadBalancer?我发现的每个资源都是通过使用负载均衡器来实现的.但我不希望负载平衡其昂贵和不必要的用例因为我正在运行一个postgres图像实例,它挂载到永久磁盘,我希望能够使用pgAdmin从我的PC连接到我的数据库.如果有可能,请提供更详细的答案,因为我是Kubernetes,GCE和网络的新手.

只是为了记录和更多的上下文我部署运行我的API服务器的3个副本,我通过负载均衡器与set loadBalancerIP连接到另一个部署,运行一个带有NodePort服务的postgres实例,我的API服务器通过它与之通信我的数据库.我的问题是在没有公共访问的情况下维护数据库很难.

google-cloud-platform kubernetes google-kubernetes-engine

24
推荐指数
1
解决办法
5969
查看次数

Google App Engine Flexible和Google Container Engine之间的区别?

具体到基于Docker的部署,这两者之间有什么区别?由于Google App Engine Flexible现在也支持基于Dockerfile的部署,而且它也是完全托管的服务,似乎它更受首选,而不是在Container Engine上配置Kubernetes部署,不是吗?

有什么用例比使用App Engine灵活使用Google容器引擎更优先?

google-app-engine google-cloud-platform kubernetes google-kubernetes-engine

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

在容器引擎上定义/ dev/shm的大小

我在Debian 8上运行带有xvfb的Chrome.它一直有效,直到我打开一个标签并尝试加载内容.这个过程默默地死去......

幸运的是,我已经让它在我当地的码头上运行顺利docker run --shm-size=1G.

Chrome中存在一个已知错误,当/ dev/shm太小时会导致错误.

我正在部署到Container引擎,并检查操作系统规范.主机操作系统有一个固定的7G安装到/ dev/shm,但实际的容器只分配了64M.Chrome崩溃了.

使用kubectl部署到容器引擎时,如何设置/ dev/shm的大小?

docker google-cloud-platform google-kubernetes-engine kubectl

23
推荐指数
1
解决办法
7616
查看次数

是否可以调整持久卷的大小?

我正在Kubernetes上运行MySQL部署但是看起来我的分配空间不够,最初我添加了一个持续的卷,50GB现在我想扩展它100GB.

我已经看到一个持久的卷声明在创建后是不可变的,但我能以某种方式调整持久卷的大小,然后重新创建我的声明吗?

kubernetes google-kubernetes-engine

22
推荐指数
4
解决办法
2万
查看次数

Kubernetes Ingress(GCE)不断回复502错误

我正在尝试在GCE Kubernetes中设置Ingress.但是当我访问Ingress中定义的IP地址和路径组合时,我不断收到以下502错误:

Ingress 502错误


这是我跑步时得到的: kubectl describe ing --namespace dpl-staging

Name:           dpl-identity
Namespace:      dpl-staging
Address:        35.186.221.153
Default backend:    default-http-backend:80 (10.0.8.5:8080)
TLS:
  dpl-identity terminates
Rules:
  Host  Path    Backends
  ----  ----    --------
  *
        /api/identity/*     dpl-identity:4000 (<none>)
Annotations:
  https-forwarding-rule:    k8s-fws-dpl-staging-dpl-identity--5fc40252fadea594
  https-target-proxy:       k8s-tps-dpl-staging-dpl-identity--5fc40252fadea594
  url-map:          k8s-um-dpl-staging-dpl-identity--5fc40252fadea594
  backends:         {"k8s-be-31962--5fc40252fadea594":"HEALTHY","k8s-be-32396--5fc40252fadea594":"UNHEALTHY"}
Events:
  FirstSeen LastSeen    Count   From                SubObjectPath   Type        Reason  Message
  --------- --------    -----   ----                -------------   --------    ------  -------
  15m       15m     1   {loadbalancer-controller }          Normal      ADD dpl-staging/dpl-identity
  15m       15m     1   {loadbalancer-controller }          Normal      CREATE  ip: 35.186.221.153
  15m       6m      4   {loadbalancer-controller } …
Run Code Online (Sandbox Code Playgroud)

google-compute-engine google-cloud-platform kubernetes google-kubernetes-engine

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

kubernetes不健康的入口后端

我按照负载均衡器教程:https: //cloud.google.com/container-engine/docs/tutorials/http-balancer,当我使用Nginx图像时工作正常,当我尝试使用自己的应用程序图像时后端切换到不健康.

我的应用程序重定向到/(返回302),但我livenessProbe在pod定义中添加了一个:

    livenessProbe:
      httpGet:
        path: /ping
        port: 4001
        httpHeaders:
          - name: X-health-check
            value: kubernetes-healthcheck
          - name: X-Forwarded-Proto
            value: https
          - name: Host
            value: foo.bar.com
Run Code Online (Sandbox Code Playgroud)

我的入口看起来像:

apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  name: foo
spec:
  backend:
    serviceName: foo
    servicePort: 80
  rules:
  - host: foo.bar.com
Run Code Online (Sandbox Code Playgroud)

服务配置是:

kind: Service
apiVersion: v1
metadata:
  name: foo
spec:
  type: NodePort
  selector:
    app: foo
  ports:
    - port: 80 
      targetPort: 4001
Run Code Online (Sandbox Code Playgroud)

后端运行状况ingress describe ing如下:

backends:       {"k8s-be-32180--5117658971cfc555":"UNHEALTHY"}
Run Code Online (Sandbox Code Playgroud)

入口的规则如下:

Rules:
  Host  Path    Backends …
Run Code Online (Sandbox Code Playgroud)

docker kubernetes google-kubernetes-engine

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

如何在 terraform 中运行 kubectl apply 命令

我开发了一个 terraform 脚本来在 GKE 上创建一个 k8 集群。

成功创建集群后,我有一组要应用于 k8 集群的 yaml 文件。

如何在我的 terraform 脚本中调用以下命令?

kubectl create <.yaml>
Run Code Online (Sandbox Code Playgroud)

kubernetes google-kubernetes-engine terraform

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