Kubernetes ConfigMap доступен для записи только root

Я использую ConfigMap , чтобы открыть файл php, предназначенный для совместного использования между модулями и для записи пользователем www-data (Apache).

ConfigMap

apiVersion: v1
kind: ConfigMap
metadata:
  name: magento-config
data:
  env.php: |
    <?php
    return array ( ...

Развертывание

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: apache-deployment
spec:
    ...
    spec:
      containers:
        - name: apache
          image: apache:2.4
          ...
          volumeMounts:
          - name: magento-configs
            mountPath: /var/www/html/etc
          imagePullPolicy: Always
      volumes:
        - name: magento-configs
          configMap:
            name: magento-config

Файл доступен для записи только root , хотя

root@apache-deployment-79c8548cdc-r6qhs:/# realpath /var/www/html/etc/env.php
/var/www/html/etc/..2018_04_23_16_21_10.435323593/env.php
root@apache-deployment-79c8548cdc-r6qhs:/# ls -l /var/www/html/etc/..2018_04_23_16_21_10.435323593/env.php
-rw-r--r-- 1 root root 909 Apr 23 16:21

Есть ли способ изменить это? Я заметил, что VolumeMount имеет свойство readOnly , которое по умолчанию имеет значение false . На самом деле том доступен для записи, но только для root .

Я попытался установить APACHE_RUN_USER на root в Apache, но он хочет, чтобы я перекомпилировал (в настоящее время использую построить от apt) lol, что кажется неправильным направлением. Я хотел бы просто выяснить, как правильно использовать ConfigMap , если это возможно. Мы планируем иметь только один экземпляр для всех приложений и, следовательно, хотели переместить репозитории из меньшего нексуса в другой ...

У нас есть два экземпляра нексуса, работающие на двух разных серверах Linux.

Я проверил внешний жесткий диск, подключенный к Windows Server 2012 R2, с помощью следующей команды и вывода (извините, это на португальском языке - в нем говорится, что в файловой системе нет проблем и никаких действий не требуется, и никакой другой текст не говорит о чем-либо существенном ):

E:\>chkdsk e: /scan
O tipo do sistema de arquivos é NTFS.
O rótulo do volume é Seagate Expansion Drive.

Estágio 1: examinando a estrutura básica do sistema de arquivos...


  347392 de registros de arquivos processados.
Verificação de arquivos concluída.


  0 registros de arquivos grandes processados.


  0 registros de arquivos inválidos processados.

Estágio 2: examinando a ligação do nome do arquivo...


  413056 de entradas de índice processadas.
Verificação de índices concluída.


  0 arquivos não indexados verificados.


  0 arquivos não indexados recuperados.

Estágio 3: examinando os descritores de segurança...
Verificação de descritores de segurança concluída.


  32832 arquivos de dados processados.

Não há problemas no sistema de arquivos.
Nenhuma ação necessária.

 976759807 KB de espaço total em disco.
 682677304 KB em 314448 arquivos.
    142432 KB em 32834 índices.
         0 KB em setores defeituosos.
    443199 KB em uso pelo sistema.
     65536 KB ocupados pelo arquivo de log.
 293496872 KB disponíveis em disco.

      4096 bytes em cada unidade de alocação.
Total de  244189951 unidades de alocação no disco.
  73374218 unidades de alocação disponíveis em disco.

Я не уверен в параметрах chkdsk. Достаточно ли использования / сканирования для проверки на наличие логических и физических ошибок и битых секторов? Ожидается ли, что внешний HD будет в порядке?

2
задан 24 April 2018 в 21:30
1 ответ

Диск исправен. Вы всегда можете запустить "chkdsk / f", чтобы исправить проблемы с NTFS.

Если вы ищете более глубокое сканирование жесткого диска, я бы посоветовал Виктории: http://www.softpedia.com/get/ System / Hard-Disk-Utils / Victoria.shtml

3
ответ дан 3 December 2019 в 10:33

Теги

Похожие вопросы