2016-04-20 2 views
0

Ich habe ein Problem mit Kubernetes bezogen. Ich bin gerade von einer Pod Konfiguration in eine ReplicationController für eine Ruby on Rails App umgezogen und ich benutze persistente Festplatten für den Rails Pod. Wenn ich versuche, die ReplicationController wendet es den folgenden Fehler gibt:Kubernetes - ReplicationController und persistente Festplatten

The ReplicationController "cartelhouse-ror" is invalid. spec.template.spec.volumes[0].gcePersistentDisk.readOnly: Invalid value: false: must be true for replicated pods > 1; GCE PD can only be mounted on multiple machines if it is read-only

dies dort bedeutet es keine Möglichkeit, persistente Festplatten zu verwenden (R/W), wenn ReplicationControllers mit oder gibt es eine andere Art und Weise?

Wenn nicht, wie kann ich rollende Updates auf die Pod-Konfiguration skalieren und/oder anwenden?

Pod-Konfiguration:

apiVersion: v1 
kind: Pod 
metadata: 
    name: appname 
    labels: 
    name: appname 
spec: 
    containers: 
     - image: gcr.io/proj/appname:tag 
     name: appname 
     env: 
      - name: POSTGRES_PASSWORD 
       # Change this - must match postgres.yaml password. 
      value: pazzzzwd 
      - name: POSTGRES_USER 
      value: rails 
     ports: 
      - containerPort: 80 
      name: appname 
     volumeMounts: 
       # Name must match the volume name below. 
      - name: appname-disk-per-sto 
       # Mount path within the container. 
      mountPath: /var/www/html 
    volumes: 
     - name: appname-disk-per-sto 
     gcePersistentDisk: 
      # This GCE persistent disk must already exist. 
     pdName: appname-disk-per-sto 
     fsType: ext4 

ReplicationController Konfiguration:

apiVersion: v1 
kind: ReplicationController 
metadata: 
     labels: 
     name: appname 
     name: appname 
spec: 
     replicas: 2 
     selector: 
     name: appname 
     template: 
     metadata: 
      labels: 
      name: appname 
     spec: 
      containers: 
      - image: gcr.io/proj/app:tag 
       name: appname 
       env: 
       - name: POSTGRES_PASSWORD 
        # Change this - must match postgres.yaml password. 
        value: pazzzzwd 
       - name: POSTGRES_USER 
        value: rails 
       ports: 
       - containerPort: 80 
        name: appname 
       volumeMounts: 
        # Name must match the volume name below. 
       - name: appname-disk-per-sto 
        # Mount path within the container. 
        mountPath: /var/www/html 
      volumes: 
      - name: appname-disk-per-sto 
       gcePersistentDisk: 
       # This GCE persistent disk must already exist. 
       pdName: appname-disk-per-sto 
       fsType: ext4 

Antwort