kubernetes - 我正在尝试使用 gcs 存储桶作为 gke pod 中的卷

标签 kubernetes google-cloud-storage docker-volume google-kubernetes-engine

我收到错误:

error validating "mysql.yaml": error validating data: ValidationError(Deployment.spec.template.spec.volumes[0]): unknown field "path" in io.k8s.kubernetes.pkg.api.v1.Volume; )

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: mysql
  labels:
    app: mysql
spec:
  replicas: 1
  selector:
    matchLabels:
      app: mysql
  template:
    metadata:
      labels:
        app: mysql
    spec:
      containers:
        - image: mysql:5.6
          name: mysql
          env:
            - name: MYSQL_ROOT_PASSWORD
              valueFrom:
                secretKeyRef:
                  name: mysql
                  key: password
          ports:
            - containerPort: 3306
              name: mysql
          volumeMounts:
            - name: mapping-sandbox-test
              mountPath: /var/lib/mysql
      volumes:
        - name: mapping-sandbox-test
          path: gs://<bucket-name>

最佳答案

使用名称和路径作为键,您的 Deployment 对象看起来正确。您可以在 how to mount a GCS bucket on kubernetes here 上查看示例

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: gcsfuse-test
spec:
  replicas: 1
  template:
    metadata:
      labels:
        app: gcsfuse-test
    spec:
      containers:
        - name: gcsfuse-test
          image: gcr.io/some-repo/gcs-fuse:latest
          securityContext:
            privileged: true
            capabilities:
              add:
                - SYS_ADMIN
          lifecycle:
            postStart:
              exec:
                command: ["gcsfuse", "-o", "nonempty", "some-bucket", "/mnt/some-bucket"]
            preStop:
              exec:
                command: ["fusermount", "-u", "/mnt/some-bucket"]

This Stack Overflow question might help too .

关于kubernetes - 我正在尝试使用 gcs 存储桶作为 gke pod 中的卷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48222871/

相关文章:

基于 Firestore 数据的 Firebase 云存储规则解决方法

docker-compose 不会使用我的命名卷

kubernetes - 有没有办法使用 Kubernetes RBAC 来阻止用户在服务上创建外部负载均衡器?

networking - 通过 VPN 从 GKE Pod 流出的流量

python - 如何从 DataFrame 在谷歌存储中创建 Json 文件?

java - 如何使用java连接到google存储API

python-3.x - 如何监视Docker卷使用情况?

c# - 持久化 mcr.microsoft.com/mssql/server :2019-latest using Docker volumes 的容器时权限被拒绝

kubernetes - Digital Ocean Kubernetes 集群上没有与类型 ClusterIssuer 匹配的内容

kubernetes - 后端返回404/422时,GKE基本元素间歇性返回502