google-cloud-platform - 在 Google 容器 (GKE) 上的 Kubernetes 中允许特权容器

标签 google-cloud-platform kubernetes google-kubernetes-engine

我正在使用通过 Google 容器引擎 (GKE) 从 Google Cloud Developer's Console 部署的 Kubernetes 集群,集群版本 0.19.3。我想运行一个特权容器,比如 Kubernetes NFS Server例子:

apiVersion: v1
kind: Pod
metadata:
  name: nfs-server
  labels:
    role: nfs-server
spec:
  containers:
    - name: nfs-server
      image: jsafrane/nfs-data
      ports:
        - name: nfs
          containerPort: 2049
      securityContext:
        privileged: true

由于默认的 Google Container Engine 配置不允许特权容器,因此 Kubernetes API 立即返回以下错误:

Error from server: Pod "nfs-server" is invalid: spec.containers[0].securityContext.privileged: forbidden '<*>(0xc20a027396)true'



如何在我的 Google Container Engine 集群中允许特权容器?

最佳答案

更新:从 Kubernetes 的 1.1 版本开始,现在默认启用特权模式,该版本现在可在 Google Container Engine 中使用。

Google Container Engine 目前无法运行特权容器(包括该示例中的 NFS 服务器)。我们正在寻找解决这个问题的方法(在创建集群时添加一个标志以允许特权容器;使特权容器成为准入控制的一部分;等等)。目前,如果您需要运行特权容器,则需要使用 GCE 提​​供程序启动您自己的集群。

关于google-cloud-platform - 在 Google 容器 (GKE) 上的 Kubernetes 中允许特权容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31124368/

相关文章:

docker - 无法将图片推送到Google容器注册表-调用者没有 'storage.buckets.get'权限

nginx - 增加 proxy_send_timeout 和 proxy_read_timeout ingress nginx

google-app-engine - 为什么选择 Google Kubernetes Engine 而不是 Google AppEngine?

google-cloud-platform - 数据流模板云发布/订阅主题vs订阅BigQuery

amazon-web-services - Kubernetes NetworkPolicy,仅允许来自相同命名空间和 ALB Ingress 的流量

kubernetes - 在Openshift上部署和公开微服务

docker - GKE 无法访问 MongoDB Atlas

kubernetes - 无法将部署从 apiVersion extensions/v1beta1 升级到 apps/v1,它会自动使用 extensions/v1beta1

networking - IP-Aliases 如何在 Google 云计算实例上工作?

docker - 我们如何在 kubernetes 部署 yaml 中获得像 pod id 或容器 id 这样的独特信息