对不起,如果标题和标签有点模糊,我还是无法弄清楚它的正确名词。 请指教,我会改变它。 我正在实施一个STUN服务器,它装在托pipe在Google Container Engine的Kubernetes上的Docker容器中。 该项目利用负载平衡器(GCE上的转发规则)将外部请求置于pod / container中的相应端口, 我已经通过以下路由将进入eth0的所有stream量路由到2个虚拟接口(eth0:1,eth0:2): iptables -t nat -A PREROUTING -p tcp -i eth0 –dport 61214 -j DNAT –to-destination 172.26.0.6 (为了完整起见,第二个目的地是172.26.0.7) 一个客户端应用程序到达它就好了,所以NAT确定继续。 但是,当STUN服务器需要创build套接字并链接回客户端应用程序时,这会突然停止,因为它获得的源IP是Kubernetes(例如10.128.0.4)上的主机VM实例的内部IP。 由于没有连接,客户端和服务器套接字超时。 有没有办法保存实际的源地址,直到到达我的服务器应用程序? 只要我的请求到达服务器,并且服务器可以返回到客户端,我打开废除当前的设置。 谢谢。
我使用Gitlab-CI在GCE上部署Kubernetes集群。 我想保持最低的成本 – 这是我目前的设置: 节点在3个f1-micro实例上运行 使用ServiceType LoadBalancerconfiguration的运行Traefik的系统窗格 通配符DNSconfiguration 1个postgres 荚 1个configuration为Traefik的ingress Web服务器吊舱 我想降低我的部署成本。 大部分的成本在于GCE负载平衡器。 有没有一种方法可以在GCE上使用公共IP地址而不是负载平衡器? 如果是这样,我可以利用分配给集群的IP地址(而不是预留静态IP)吗? 换句话说,有没有一种方法可以将一个短暂的ip绑定到使用GCE的Kubernetes服务上,而不需要负载均衡器? 有没有其他configuration可以做不同的处理,从而降低GCE的成本?
我正在努力把TLS / SSL放在kubernetes的wordpress站点前面。 我前面有一个Ingress。 没有任何TLSconfiguration,我可以访问该网站好吧。 当我添加TLSconfiguration时,我访问该网站超时。 Ingress.yaml: apiVersion: extensions/v1beta1 kind: Ingress metadata: name: helloworld-rules spec: tls: – hosts: – mysite.com secretName: tls-secret rules: – host: mysite.com http: paths: – path: / backend: serviceName: mysite servicePort: 80 进入-controller.yaml: apiVersion: v1 kind: Service metadata: name: nginx-ingress labels: app: nginx-ingress spec: type: LoadBalancer ports: – port: 80 targetPort: […]
以下是关于使用heroku进行扩展的一个很好的写法(它适用于传统的部署)。 鉴于我们希望集装箱化的应用程序是单一的过程,我们如何得到: 慢客户端保护 反应保护慢 在Kubernetes / GKE环境中,充分利用水平吊舱自动缩放的优势? 假设我的部署看起来很像( credit @ nithinmallya4 ): 我还没有selectWeb服务器,默认情况下, rackup正在服务WEBrick 。 我正在考虑把这个改成multithreading的Puma。 我担心的是autoscaler是基于CPU工作的,而不是基于consumed by a current http/s request的思想,所以它可能不会起作用。 我是否正确理解autoscaler? 什么是理想的扩大/缩小体系结构? 我们目前的想法: nginx在一个荚边车模式(用gzip deflater )在一个Ingress后面。 (与rails-api相同的image ),假设它会更好地利用cpu并触发自动调整 HPA的自定义指标(仍然需要用1.8进行研究)
我使用Rancherbuild立了一个工作的Kubernetes集群,它定义了两个networking: 10.42.0.0/16地址为10.42.0.0/16 10.43.0.0./16用于服务端点 我想使用现有的Caddy反向代理来访问这些服务端点,所以我定义了一个路由( 10.10.10.172是我的一个kubernetes节点): sudo route add -net 10.43.0.0 netmask 255.255.0.0 gw 10.10.10.172 我的Caddy web服务器上的路由表: arturh@web:~$ sudo route [sudo] password for arturh: Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface default DD-WRT.local 0.0.0.0 UG 0 0 0 eth0 10.10.10.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0 10.43.0.0 rancherkube1.lo 255.255.0.0 UG […]
我们正在使用Kubernetes并成功运行我们的应用程序。 然而,我们的豆荚在运行,没有交通,我们的爪牙在高CPU运行。 进一步研究这个问题: influxdb和heapster在高CPU运行,我们的所有容器都使用0%的CPU,在双核心服务器上,hibernate的负载为8。 看着单个容器似乎没有任何答案,日志是安静的 Grafana让我查看图表,但图表被打破,并没有真正的意义。 有什么办法可以从Kuberentes一起删除这个function吗? 在Ubuntu上部署的Kubernetes v1.0.6 Vivid
我目前正在尝试通过本教程: http : //kubernetes.io/v1.1/docs/getting-started-guides/coreos/coreos_multinode_cluster.html 据我所知,我有AWSCLI设置和configuration正确,还有EC2工具。 我已经经历了第一套指示: C:\Program Files\Amazon\AWSCLI>aws ec2 create-security-group –group-name kubernetes –description "Kubernetes Security Group" { "GroupId": "sg-3876e341" } C:\Program Files\Amazon\AWSCLI>aws ec2 authorize-security-group-ingress –group-name kubernetes –protocol tcp –port 22 –cidr 0.0.0.0/0 C:\Program Files\Amazon\AWSCLI>aws ec2 authorize-security-group-ingress –group-name kubernetes –protocol tcp –port 80 –cidr 0.0.0.0/0 C:\Program Files\Amazon\AWSCLI>aws ec2 authorize-security-group-ingress –group-name kubernetes –source-security-group-name kubernetes 但是当我尝试部署时遇到问题: C:\Program Files\Amazon\AWSCLI>aws […]
我在Google Container Engine上使用Kubernetes。 我想在每个主机上运行一个任意的脚本,当一个集群被创build/resize来初始化它的configuration。 我怎样才能做到这一点?
在使用SkyDNS(Google容器引擎)的Kubernetes群集中,如何findSkyDNS的IP:PORT? 我想将该DNS服务器添加到NODE的resolve.conf
我现在正在使用带有kubernetes的GKE和一个nginx容器来代理不同的服务。 我的目标是阻止一些国家。 我已经习惯了用nginx做这个,它是有用的geoip模块,但是到现在为止,kubernetes并不会将真正的客户ip转发给容器,所以我不能使用它。 在kubernetes实际转发真实IP之前,什么才是最简单/最便宜的解决scheme? 外部服务? 简单的谷歌服务器只有nginx,过滤国家,转发到kubernetes(价格和可靠性不是很大)? 修改kube-proxy(正如我在这里和那里看到的,但似乎有点奇怪)? 前端geoip过滤(嗯,更糟糕的想法) ? 谢谢!