Здесь нужна помощь с NFS. Вот что у меня есть (все серверы под управлением CentOS 5.6 с SELinux):
172.17.20.1 - Primary server with static IP. Varnish redirects requests to the web servers.
172.17.20.2 - Web server 1
172.17.20.3 - Web server 2
Приложение, находящееся на веб-серверах, работает под управлением Drupal, и мне нужно, чтобы они оба использовали один и тот же каталог файлов. Я создал папку в 172.17.20.1 под названием / var / nfs с пользователем root. Вот мой / etc / exports содержание:
/var/nfs 172.17.20.2(rw,sync,no_root_squash) 172.17.20.3(rw,sync,no_root_squash)
На обоих веб-серверах (172.17.20.2/3) он установлен, как показано ниже:
[root@web2 ~]# mount
...
172.17.20.1:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,sync,hard,intr,addr=172.17.20.1)
На всех серверах я добавил пользователя Apache в корневую группу, чтобы получить желаемый доступ для записи:
[root@main ~]# cat /etc/group
root:x:0:root,apache
....
....
apache:x:48:
[root@web1 ~]# cat /etc/group
root:x:0:root,apache
....
....
apache:x:48:
Разрешение папки на главном:
drwxrwxr-x 4 root root 4096 Mar 11 15:49 nfs
Разрешение папки на веб-серверах:
drwxrwxrwx 3 apache apache 4096 Feb 18 13:51 mnt
Несмотря на все это, когда я пытаюсь записать файлы в / мнт / нфс / вар / нфс папка из Drupal / PHP, запись в нее невозможна. Я даже пробовал использовать простой скрипт загрузки PHP, но он не работает, так что проблема не в Drupal.
Любая помощь, которую вы можете сделать, очень ценится. Я провел с ним часы и часы, без особого успеха :(
Заранее спасибо.
Я добавил пользовательский apache в корневую группу, чтобы получить желаемый доступ на запись
Но вы не показали нам, какие разрешения есть у файлов / каталогов. (и, кстати, это не очень хорошая идея с точки зрения безопасности - аналогично no_root_squash).
Зачем синхронизировать?