问题标签 [google-kubernetes-engine]
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.
google-kubernetes-engine - Google Container Engine 中节点间共享读写存储的最佳实践
我有一个 Ruby On Rails CMS 应用程序。图像存储在基于数据库自动增量 ID 的文件夹中。在多个节点上运行的容器之间共享此文件夹的最佳实践是什么?
该应用程序还缓存此图像文件的裁剪版本。如果我使用 Google sql,我认为它将确保原始写入文件上永远不会有相同的文件名。缓存的版本可能应该以不同的方式存储?
google-cloud-sql - 如何从 GCE pod 连接到 Google Cloud SQL?
从谷歌容器引擎 pod 连接到谷歌云 SQL 数据库的最佳方式是什么?该文档暗示我应该为数据库请求一个 IPV4 地址并通过该地址进行连接。
我想知道是否有更好的方法使用数据库的名称?
有没有类似于/cloudsql/<db_name>
在 App Engine 中使用套接字连接的东西?
google-cloud-sql - 无法从谷歌容器引擎访问谷歌云 SQL
我仍然无法从 GCE 容器访问云 SQL 实例。当我尝试打开 mysql 时,出现以下错误:
但是,在我的本地计算机上连接工作正常(该实例有一个公共 IP,我已将我办公室的 IP 添加到“允许的网络”中)。因此,可以通过 Internet 访问该实例。
我猜数据库的访问控制阻止了我从 gce 网络的访问,但我无法弄清楚如何配置它。
我将我的项目添加到 Cloud SQL 控制面板中的“授权的 App Engine 应用程序”,但这似乎没有帮助。
编辑: 如果我将“0.0.0.0/0”添加到允许的网络,一切正常。这显然不是我想要的,所以我需要输入什么?
EDIT2:我还可以从我的 kubernetes 集群中添加所有公共 IP(通过 获得gcloud compute instances list
)并手动将它们添加到云 sql 访问列表中。但是,这似乎不对,不是吗?
google-compute-engine - Google Container Engine 中的集群通信和防火墙
我正在尝试在 Google Cloud 上设置以下环境并遇到 3 个主要问题:
数据库集群
- 3个节点
- 一个端口向世界开放,几个端口向计算集群开放
计算集群 - 5 个节点 - 与数据库集群通信 - 两个对外开放的端口 - 运行 Docker 容器
a)数据库集群运行良好,我的配置端口向世界开放,但我不知道如何将其他端口限制为仅计算集群?
我设法让第一个 Pod 和 Replication-Controller 在计算集群上运行,并创建了一个服务来向世界开放容器:
控制器:
服务:
b)容器暴露了 3000 端口,服务端口 80。两者之间的联系在哪里?
防火墙使用标签。我希望在我的计算集群中运行 4-5 个不同的 pod,其中 2 个具有通往世界的开放端口。同一实例上可以运行 2 个或更多容器。然而,标签特定于节点,而不是容器。
c)我是否公开了具有相同防火墙配置的所有节点?我无法为容器分配标签,因此不确定如何公开 api 服务?
google-cloud-platform - Google Container Engine (GKE):“Hello Wordpress”教程不起作用 (ERR_CONNECTION_REFUSED)
我正在尝试从Running Wordpress with a Single Pod设置示例。
- 我已经完成了“开始之前”部分:
$ gcloud 配置列表
我已经完成了教程中的步骤:
“步骤 1:创建集群”日志在这里
“第 2 步:创建您的 pod”日志在这里
“第 3 步:允许外部流量”日志在此处
更多日志:
$kubectl get pods - log(切换文本换行)
$gcloud 计算防火墙规则列表 -日志
因此,当我尝试连接到http://104.155.7.213/时,我收到“此网页不可用:ERR_CONNECTION_REFUSED
”。
我尝试将“ Allow HTTP traffic
”显式添加到 Compute Engine VM 仪表板中的节点,并且我尝试使用“ kubectl run
”而不是弃用的“ kubectl run-container
”,但它没有帮助。有时我在运行“”时会在“”列中收到“ last termination: exit code 2
”(1
或2
)(但这次不是)`message
kubectl get pods
信息:
$ kubectl 版本
$ gcloud 版本
提前谢谢你的帮助!
docker - Google Container Registry 是否存在问题?
我在使用容器优化虚拟机时遇到了问题。我使用以下命令启动一个实例:
哪里m2.yml
是:
当我 ssh 到实例并查看时,/var/log/docker.log
我看到:
实例上没有运行容器并docker images -a
说:
容器引擎是否遇到一些问题或者我做错了什么?
更新1
我举了一个例子:
version: v1
kind: Pod
spec:
containers:
- name: simple-echo
image: gcr.io/google_containers/busybox
command: ['nc', '-p', '8080', '-l', '-l', '-e', 'echo', 'hello world!']
imagePullPolicy: Always
ports:
- containerPort: 8080
hostPort: 8080
protocol: TCP
restartPolicy: Always
dnsPolicy: Default
并且在日志中仍然是错误:
我正要通过反馈表发送反馈,但提交失败:
relay__en.js?authuser=1:182 Uncaught TypeError: Cannot set property 'vmFeedbackData' of undefined
。这样的故事。
google-kubernetes-engine - 为运行 Kubernetes 的 Google Compute Engine 设置持续部署
我正在尝试根据CircleCI 网站上的教程设置从 CircleCI 到我的 Google Container Engine 实例的持续部署。
但是,我目前正在迷茫如何设置身份验证,以便我可以执行滚动更新:
谷歌似乎只支持 OAuth,我找不到任何设置非交互式身份验证的文档。将基本身份验证参数传递给kubectl
似乎不起作用。
关于这个或我可以在哪里看的任何建议?
docker - 如何通过 yaml 清单为 docker 容器挂载卷?
我尝试使用以下 yaml 启动 container-vm 机器:
我希望可以从容器访问主机主目录。
但是,容器无法启动:
为容器指定卷的正确方法是什么?
google-kubernetes-engine - Google Container Engine 中聚合日志的 LogSeverity
在 Google Container Engine 集群中,所有标准的 pod 都被聚合并发送到 Google Cloud Logging。这很好用,除非您无法控制日志记录元数据,例如
google.logging.v1.LogSeverity
他们是一种丰富“标准输出/错误”上的日志输出的方法,以便每个集群节点上的 fluentd 守护程序识别每个日志行上的日志严重性。
但是无需更改每个节点上的 fluentd 守护程序中的某些内容(这将违背作为服务运行的目的)或在每个 pod 中添加自定义的 fluentd 守护程序。
kubernetes - 如何使用 Google Container Engine 将 cluster/saltbase/pillar/privilege.sls 永久编辑为 allow_privledged?
我正在尝试从纯 docker 转换为 kubernetes + docker。我在 docker 中使用特权标志在CMD
步骤中挂载我的 NFS 卷。对于 Google Container Engine,这是不允许的 -无论如何,似乎首选是将我的挂载声明为卷。
当我这样做时,我的部署全部挂起,Pending
状态为kubectl get pods
. 为了解决这个问题,我在此处allow_privledged
设置了标志。我遵循了这些步骤。当命令启动时,所有更改都将恢复。不重新启动时,文件更改棒,我的 NFS 挂载工作正常。cluster/saltbase/pillar/privilege.sls
reboot
如何使用 Google Container Engine 永久编辑cluster/saltbase/pillar/privilege.sls
以allow_privledged
使我的主机能够在重启后继续存在?