问题标签 [kubernetes]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
kubernetes - Kubernetes 调度程序:*api.Pod 的监视以错误结束:JSON 输入的意外结束
昨天的服务很好。但是今天当我检查服务的状态时,我看到:
真的很困惑,因为 etcd、flannel 和 apiserver 工作正常。
etcd 只有一些奇怪的日志:
所以,我真的被卡住了,不知道出了什么问题。我该如何解决这个问题?或者,我如何查看调度程序的详细信息日志。
journalctl
给我同样的日志systemd status
centos - Kubernetes 外部访问容器中的应用程序
我在 Digital Ocean 上的集群上使用 kubernates。
我在 Pod 的容器内有应用程序。我需要与此应用程序建立外部连接。我需要访问具体实例(因为我有超过 10 个使用此应用程序的 Pod)。
所以,我的问题是:我怎样才能对这个应用程序进行外部访问。
例如我有公共 IP 192.168.9.9
并有 2 个带有实例的 pod。第一个监听端口 8990,它的 Pod IP 是 10.0.0.1,第二个监听端口 8991,它的 Pod IP 是 10.0.0.1。
所以,我需要将流量从 192.168.9.9:8990 重定向到 10.0.0.1:8990 和 192.168.9.9:8991 到 10.0.0.1:8991。
是的,我可以通过手动使用 iptables 来做到这一点。但我想自动完成。当新 Pod 启动时,我想在 iptables 中进行记录。
我可以使用 api 监视服务:
并且可以在这里获取 pod 的 ip:
我在这里找到了与我的需求类似的解决方案。但这看起来像是糟糕的架构决策。在新 Pod 启动后自动将外部流量重定向到 pod 是否更好?
openshift-origin - Openshift .kubeconfig 文件和证书认证
我一直在搞乱 openshift 并尽可能多地阅读文档。然而,默认执行的身份验证(使用 admin .kubeconfig)让我感到困惑。
1) client-certificate-data 和 client-key-data 是否与管理员证书和密钥相同?我问这个是因为证书/密钥文件的内容与 .kubeconfig 中的内容不同。
2).kubeconfig (AFAIK) 用于对 kubernetes master 进行身份验证。然而,在 OpenShift 中,我们是针对 OpenShift master 进行身份验证的(对吗?)。为什么使用 .kubeconfig?
亲切的问候,并感谢您的耐心等待。
kubernetes - Kubernetes 现在支持自动伸缩吗?
Kubernetes 能否在监控负载(即 CPU 负载、流量)的增加或减少时自动增加或减少 Pod 的数量?
如果可能,我该如何配置它?
ubuntu - 在从源代码构建 Kubernetes 时无法连接到“docker”守护进程
我试图从源代码构建 kubernetes: https ://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/getting-started-guides/binary_release.md#building-from-source
我在我的 ubuntu 上安装了 docker。
我试过了,sudo service docker start
但得到了同样的错误。
kubernetes - kube-proxy 无法安装 iptables 规则
在第六步中:我修改了 json 文件以允许从外部访问留言簿站点。修改为:将 10.11.22.33 替换为我的 IP,并删除行 ""createExternalLoadBalancer": true"
当我在浏览器中尝试http://<my ip>:8000
时,连接失败。通过一些搜索调试,我发现 kube-proxy 无法安装 iptables 规则,错误日志如下。该日志还告诉其他服务安装 iptable 规则也失败。
有什么建议吗?
...
google-cloud-platform - 如何将 docker 附加到容器 - Google Cloud Platform / Kubernetes
我有一个在 VM 上运行的容器化应用程序。它由两个 docker 容器组成。第一个包含 WebSphere Liberty 服务器和 Web 应用程序。第二个包含 PostgreSQL 和应用程序的数据库。
在我的本地 VM 上,我只使用docker run启动两个容器,然后使用docker attach附加到 Web 服务器容器,这样我就可以编辑 server.xml 文件以指定数据库的公共主机 IP,然后启动容器中的 Web 服务器。该应用程序运行良好。
现在我正在尝试在 Google Cloud Platform 上部署该应用程序。
- 我设置了我的 gcloud 配置(项目、计算/区域)。
- 我创建了一个集群。
- 我创建了一个 JSON pod 配置文件,它指定了两个容器。
- 我创建了豆荚。
- 我为 pod 配置文件中指定的端口打开了防火墙。
在此刻:
- 我查看了 pod(gcloud preview container kubectl get pods),它显示两个容器都在运行。
- 我通过 SSH 连接到集群(gcloud compute ssh xxx-mycluster-node-1)并发出sudo docker ps,它显示数据库容器正在运行,但不是 Web 服务器容器。使用sudo docker ps -l我可以看到未运行的 Web 服务器容器,但它会每隔 10 秒左右尝试启动和退出。
所以现在我需要更新 server.xml 并启动 Liberty 服务器,但我不知道如何在这个领域做到这一点。我可以像在本地 VM 中那样附加到 Web 服务器容器吗?任何帮助将不胜感激。谢谢。
redis - 如何动态设置 HAProxy IP 配置?
我已经使用 Kubernetes 部署了一个 Redis 集群。我现在正在尝试使用 HAProxy 进行负载平衡。如果您有静态 IP,HAProxy 非常适合对 redis 集群进行负载平衡。但是,我们在使用 kubernetes 时没有这个。在测试故障转移时,Redis 和 Kubernetes 分别处理新主节点的选举和部署新 pod。但是,kubernetes 会为新的 Pod 选择一个新的 IP。我们如何将这个新 IP 注入 HAProxy 健康检查并删除旧的主 IP?
我有以下设置。
这与haproxy 博客上描述的设置非常相似。
kubernetes - kubernetes pod 状态总是“待定”
我正在关注 Fedora 入门指南(https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/getting-started-guides/fedora/fedora_ansible_config.md)并尝试运行 pod fedoraapache
。但kubectl
始终显示fedoraapache
为待处理:
由于它正在等待,我无法运行kubectl log pod fedoraapache
. 所以,我改为运行kubectl describe pod fedoraapache
,它显示以下错误:
kubernetes - 为集群主服务器选择不同的 vm 类型并调整节点数量
如何为集群主节点指定特定的 vm 类型(我不想为相对非活动节点使用高内存实例)。另外,有没有办法将节点添加到集群并选择虚拟机的类型?(这样可以解决第一个问题)