我有一个基于 CentOS 7 作为 docker 映像分发的应用程序。
我运行 docker 的主机也包含 CentOS 7。
最近 RedHat 发布了 5 个重要的补丁来修复内核缺陷。
我有yum update
主机
我需要更新 docker 镜像yum update
吗?我猜内核缺陷不会影响 docker 容器,对吧?
我有一个基于 CentOS 7 作为 docker 映像分发的应用程序。
我运行 docker 的主机也包含 CentOS 7。
最近 RedHat 发布了 5 个重要的补丁来修复内核缺陷。
我有yum update
主机
我需要更新 docker 镜像yum update
吗?我猜内核缺陷不会影响 docker 容器,对吧?
我的 kubernetes 集群在 Google Container Engine 中运行。
有一次,我使用不同的实例模板更改了机器类型。
我正在使用以下命令升级 kubernetes 集群
gcloud container clusters upgrade CLUSTER_NAME --master
gcloud container clusters upgrade CLUSTER_NAME --cluster-version=1.2.1
升级后,NODE 似乎回滚到以前的实例模板。如何在不丢失实例模板的情况下升级集群?
假设我有一个服务 IP 范围为10.198.240.0/20的 k8s 集群。
现在我希望这个 IP 范围可以从另一个集群或数据中心访问。
在 kubernetes POD 中运行 OpenVPN 以便可以通过 VPN 访问此 IP 范围是否可行?
我不能使用 Google 的 HTTP 负载平衡,因为它不支持 Web 套接字。
所以我的 NGINX 在 Google 容器引擎中运行,位于 Google Network Load Balance 后面。
当请求到达 docker 容器中的 NGINX 时,它获取的是 NODE 的 IP,而不是客户端的 ip。
2016/04/07 10:53:47 [错误] 94#0: *73 规则禁止访问,客户端:10.132.0.9
如何解决这个问题呢?
我有以下 IP 范围作为来自 Kubernetes 集群的 ClusterIP。
$ gcloud beta container clusters describe CLUSTER_NAME | grep servicesIpv4Cidr
servicesIpv4Cidr: 10.86.240.0/20
我想允许通过 VPN 从我的 DC 访问此 IP 范围。将“远程对等 IP 地址”添加到我的 DC 的下一个跃点后
我应该如何在 GCE 上创建路由?
根据命令文档_gcloud compute routes create
此命令必须提供 --next-hop-address、--next-hop-gateway、--next-hop-vpn-tunnel 或 --next-hop-instance 之一。
如果我将其中一个 NODE 设置为--next-hop-instance
,如果这个 NODE 关闭了怎么办?如何实现没有单点故障的路由?
使用 Type 创建服务时ClusterIP
,集群 ip 是固定的还是可以更改?
我想知道,因为我想从我自己的 DC 通过 VPN 访问 ClusterIP
如果是固定的,那么可以直接在客户端配置IP地址
在为网络负载平衡创建目标池时,有一个health check
选项。
还有一个livenessProbe
在容器规范中命名的属性。
活性探针检查配置它的容器是否仍在运行。如果 liveness 探测失败,kubelet 会杀死容器,容器将受到其重启策略的约束。通过配置 pod 配置的 template.spec.containers.livenessprobe 节来设置活动检查。
容器配置时是否不需要健康检查livenessProbe
?
据我了解,如果容器关闭,POD 将自动重启。在这种情况下,不需要进行健康检查。
NODE 宕机了怎么办?据我了解,kubernetes 将在另一个 NODE 中启动 POD,这意味着 POD 将再次重新启动。
在我看来,无论如何,配置 livenessProbe 时都不需要进行健康检查。
我在 docker 容器中以非 root 用户身份运行 pureftp file_app
。
这是我分配的权限
chown -R file_app:file_app /etc/pure-ftpd
chown -R file_app:file_app /etc/ssl/private
chown -R file_app:file_app /var/log/pure-ftp
chown -R file_app:file_app /usr/share/lintian/overrides/pure-ftpd
chown -R file_app:file_app /usr/share/nginx # FTP HOME DIR
当我尝试以/usr/sbin/pure-ftpd
用户身份启动时file_app
,出现此错误
无法启动独立服务器:权限被拒绝
当我以 root 身份启动时,一切正常
如何以非 root 用户身份运行 pure-ftpd?
我有很多永久磁盘附加到在 GCE(Google 容器引擎)中运行的 POD
如何在不进入每个 POD 的情况下检查/监控它们的已用空间?
当磁盘快满时是否可以设置一些警报?
我想在现有的 kubernetes 集群中添加一个新节点,但使用不同的机器类型。对于新节点,我将为它添加标签,以便只有一些应用程序将在其上运行。
我尝试了以下命令
gcloud compute instance-groups managed resize CONTAINER_GROUP --zone ZONE --size 5 --machine-type n1-standard-8
它返回一个错误
错误:(gcloud.compute.instance-groups.managed.resize)无法识别的参数:--machine-type n1-standard-8
如何将新节点添加到具有不同机器类型的现有 kubernetes 集群中?
我有一个创建多个 POD 的复制控制器。在每个 POD 中,都有一个运行应用程序的容器。
现在在容器中,它可以调用 Kubernetes API,如下所示。
KUBE_TOKEN=$(</var/run/secrets/kubernetes.io/serviceaccount/token)
curl --silent --insecure --header "Authorization: Bearer $KUBE_TOKEN" \
https://$KUBERNETES_SERVICE_HOST:$KUBERNETES_PORT_443_TCP_PORT/api/v1/namespaces/$POD_NAMESPACE/pods/$POD_NAME
POD_NAME
是 POD 的名称;
POD_NAMESPACE
是 POD 的命名空间
contains 中的应用程序实例组成一个集群。他们选择一个应用程序实例作为主实例,其他实例是从主实例,实时复制主实例的数据。当主实例失败时,另一个从实例将被提升为主实例。
当容器中的应用程序提升为master时,我希望master应用程序实例调用kubernetes API,以便所有流量都流向这个POD/容器。
{
"kind": "Service",
"apiVersion": "v1",
"metadata": {
"name": "my-cluster"
},
"spec": {
"ports": [{
"port": 33379,
"targetPort": 33379
}],
"type" : "None",
"selector": {
"name": "<POD_NAME>"
}
}
}
我将 指定POD_NAME
为选择器,但服务找不到任何 POD。
如何配置服务以使所有流量都流向该 POD?
在启用 SkyDNS(Google Container Engine)的 Kubernetes 集群中,如何找到 SkyDNS 的 IP:PORT?
我想将该 DNS 服务器添加到节点resolve.conf
我正在使用永久性磁盘来存储数据库文件。谷歌表示其标准永久性磁盘 (HDD) 是冗余且可靠的磁盘会崩溃还是进入只读模式?
我需要备用磁盘进行备份吗?