问题标签 [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.
docker - Marathon vs Kubernetes vs Docker Swarm on DC/OS with Docker 容器
我正在寻找在 DC/OS 上运行 Docker 容器时是否使用 Marathon 和 Chronos、Docker Swarm 或 Kubernetes 的一些利弊。
例如,什么时候使用 Marathon/Chronos 比使用 Kubernetes 更好,反之亦然?
现在我主要是在试验,但希望我们能在夏天之后开始在生产中使用这些服务之一。这可能会取消 Docker Swarm 的资格,因为我不确定到那时它是否可以投入生产。
我喜欢 Docker Swarm 的地方在于它本质上只是“Docker 命令”,你不必学习全新的东西。我们已经在使用docker-compose
Docker Swarm(至少在理论上),这将是开箱即用的,所以这将是一个很大的优势。我对 Docker Swarm 的主要担忧是它是否能涵盖在生产环境中运行系统所需的所有用例。
amazon-web-services - Kubernetes 中 AWS 的公共 IP 服务失败
我按照指南在 aws 中启动了一个集群,然后开始按照留言簿进行操作。我遇到的问题是从外部访问它。我将 PublicIP 设置为 ec2 publicIP,然后使用该 ip 在浏览器中使用指南中指定的端口 8000 访问它。
什么也没显示。为了确保它实际上是没有显示任何内容的服务,然后我删除了该服务并将主机端口设置为 8000。当我转到 ec2 实例 IP 时,我可以正确访问它。所以我的设置似乎有问题。我能想到的一件事是,我在一个带有互联网网关的 VPC 中。我没有添加我使用的任何 json 文件,因为它们与留言簿示例几乎完全相同,只是进行了一些更改以允许我的 ec2 PublicIP,并对 VPC 进行了一些更改。
kubernetes - 使用主动/被动冗余模型的应用程序应该如何使用 Kubernetes 进行容器化?
我有一个在虚拟机上运行的分布式应用程序,其中我有一个服务以主动/被动模式运行。活动虚拟机通过公共 IP 提供服务。如果主动 VM 发生故障,公共 IP 将被移动到被动 VM,被动 VM 将变为主动并开始提供服务。
这种模式如何适应 Kubernetes 管理的容器化应用程序?
如果我使用副本数 = 1 的复制控制器,则在节点/minion 故障的情况下,复制控制器将在另一个 minion 中重新安排 pod(= 我当前应用程序中的 VM),但这可能会导致与我当前的解决方案相比的高停机时间仅移动 IP 资源的位置。
如果我使用具有副本数 = 2 的复制控制器,那么我需要对两个 pod(一个具有公共 IP,另一个没有)进行不同的配置,这是反模式?此外,kubernetes 中没有设计方法来支持虚拟 IP(在 pod 周围移动。)?
或者我应该使用replicas = 2并自己实现一些东西来管理IP(或者可能使用pacemaker?这会引入另一个问题:我的应用程序、kubernetes和pacemaker/corosync中会有集群管理)
那么,这应该怎么做呢?
digital-ocean - 将 Kubernetes 集群部署到 Digital Ocean?
似乎 get.k8s.io 是部署 Kubernetes 集群的推荐方式,但此脚本不支持 Digital Ocean。
是否有另一种方法可以轻松地在我错过的 Digital Ocean 上设置集群?
谢谢
openstack - Kubernetes。无法从 master 连接到任何 pod
我正在尝试在 Openstack + CoreOS 中设置 Kubernetes。
我有主 10.240.63.84 和 2 个奴才 .63 和 .83。我还创建了 3 个 redis pod:
master的路由表如下:
ifconfig -a 的输出是:
用于初始化的 Flanneld 配置是:
掌握:
奴才:
所以问题是我无法从 master ping 任何 pod,也无法连接到任何端口,错误是:
azure - Kubernetes:Azure 云上的所有 Minion 都无法使用外部服务
我在 Azure 云上有以下 3 台 Ubuntu 机器集群:
在172.16.0.4 (kube-01)
我有一个名为publisher的 Pod暴露了8080端口。为了让全世界都能使用它,我定义了以下服务:
172.16.0.4
和分别是和172.16.0.5
的内部 IP 地址(Azure 术语)kube-01
kube-02
在
172.16.0.4 (kube-01)
我定义了一个 Azure 端点,公共端口设置为8181,私有端口设置为8181在
172.16.0.5 (kube-02)
我定义了一个 Azure 端点,公共端口设置为8182,私有端口设置为8181
通过这样的设置,我可以publisher-service
使用我的 VM 公共虚拟 IP (VIP) 地址和端口8181成功访问。
但是,我希望也能够publisher-service
使用相同的 VIP 地址和端口8182(因为它映射到端口8181上kube-02
)。而是curl
报告Recv failure: Connection reset by peer
。
我在这里做错什么了吗?也许我对Kubernetes 外部服务的理解不正确(因此我的期望是错误的)?
我还注意到/var/log/upstart/kube-proxy
记录的以下条目:
这是iptables -L -t nat
捕获的输出的一部分172.16.0.5 (kube-02)
:
我正在使用 Kubernetes v0.12.0。我按照本指南设置我的集群(即我正在使用法兰绒)。
更新 #1:添加了publisher
pod 状态信息。
postgresql - 如何使用 Docker/Kubernetes 为 PostgreSQL 故障转移集群建模?
我仍在思考 Kubernetes 以及它应该如何工作。目前,我正在努力理解如何使用流复制、横向扩展和自动故障转移/故障回复(pgpool-II
, repmgr
,选择你的毒药)来建模类似 PostgreSQL 集群的东西。
我对这种方法的主要问题是 PostgreSQL 实例的双重性质,配置方面——它要么是主实例,要么是冷/暖/热备用。如果我增加副本的数量,我希望它们都作为备用服务器出现,所以我想象创建一个与podpostgresql-standby
分开的复制控制器。postgresql-master
但是,如果当前主服务器关闭,我也希望其中一个备用服务器成为主服务器,所以它postgresql
毕竟是一个常见的复制控制器。
到目前为止,我唯一的想法是将复制配置放在外部卷上并管理容器外部的状态和状态更改。
(在 PostgreSQL 的情况下,配置可能已经在其data
目录内的卷上,这本身显然是我想要在卷上的东西,但这不是重点)
这是正确的方法,还是有其他更清洁的方法?
kubernetes - 如何将 Kubernetes 集群更新到可用的最新版本?
我最近开始尝试 Google Container Engine。如果可能的话,我希望您将 Kubernetes 集群升级到可用的最新版本,而不需要停机。有没有办法做到这一点?
networking - Kubernetes 服务部署
我最近开始探索 kuberenetes,并在谷歌云上完成了 Pod、服务和复制控制器的实际实现。我对服务和网络访问有些怀疑。首先,将作为一组 pod 的负载均衡器的服务部署在哪里?其次,使用服务负载均衡器访问在 pod 中运行的应用程序的请求是通过 master 节点还是直接到 minions 节点?