Как установить Anchor CMS на CentOS 7 LAMP VPS
Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.
GlusterFS - это подключенная к сети файловая система, которая позволяет вам совместно использовать два диска на нескольких устройствах в сети. Эта файловая система идеально подходит для блочного хранилища Vultr, поскольку вы можете совместно использовать диск в сети, что невозможно из коробки.
С точки зрения возможностей, расширяемости и надежности, GlusterFS оказалась одной из самых сложных и стабильных доступных файловых систем.
Когда изменения вносятся в диск на одном сервере, они автоматически реплицируются на другой сервер в режиме реального времени. Чтобы этого добиться и следовать этому руководству, вам потребуется:
Заказав эти два блочных накопителя, вы должны подключить их к ВМ 1 и ВМ 2. Поскольку мы будем использовать оба блочных накопителя для одной и той же файловой системы, разделив общий размер обоих накопителей на два, вы получите полезную сумму. ГБ. Например, если у вас есть два диска по 100 ГБ, можно будет использовать 100 ГБ (100 * 2/2).
Кроме того, обе виртуальные машины должны находиться в одном и том же месте, чтобы они находились в одной частной сети. Мы будем подключаться к серверам, используя их внутренние IP-адреса. Обратите внимание, что мы будем стирать данные на блочном накопителе. Убедитесь, что они совершенно новые и не отформатированные.
В этом руководстве мы будем использовать storage1
и storage2
, соответственно, с частными IP-адресами 10.0.99.10 и 10.0.99.11. Ваши имена серверов и IP-адреса, скорее всего, будут отличаться, поэтому обязательно измените их в процессе настройки GlusterFS.
Это руководство было написано с учетом CentOS / RHEL 7. Тем не менее, GlusterFS относительно перекрестно совместима между несколькими дистрибутивами Linux.
/etc/hosts
файлЧтобы мы могли быстро подключаться к соответствующим экземплярам, мы должны добавить в hosts
файл легко запоминающиеся имена . Откройте /etc/hosts
файл и добавьте следующие строки внизу:
10.0.99.10 storage1
10.0.99.11 storage2
storage1
SSH в storage1
и выполните следующие команды. По умолчанию подключенные блочные накопители монтируются как /dev/vdb
. Если в вашем случае по какой-то причине это отличается, вам следует изменить это в приведенных ниже командах.
Отформатируйте диск:
fdisk /dev/vdb
Нажмите «enter» для следующих трех вопросов (в отношении размера раздела и т. П. Мы хотим использовать все доступное пространство на блочных накопителях) и введите «w», чтобы записать эти изменения на диск. После того, как это было успешно завершено, напишите:
/sbin/mkfs.ext4 /dev/vdb1
Теперь мы создали файловую систему, поскольку Vultr по умолчанию не создает файловых систем в блочном хранилище.
Далее мы создадим папку, в которой мы будем хранить наши файлы. Вы можете изменить это имя, но вы не увидите, чтобы оно выглядело много, поэтому ради устранения сложности я рекомендую оставить его в покое.
mkdir /glusterfs1
Чтобы автоматически смонтировать диск при загрузке, откройте /etc/fstab
и добавьте следующую строку внизу файла:
/dev/vdb1 /glusterfs1 ext4 defaults 1 2
Наконец, смонтируйте диск:
mount -a
Монтирование будет оставаться постоянным при перезагрузке, поэтому при перезагрузке сервера диск будет автоматически подключен снова.
storage2
Теперь, когда диск добавлен и смонтирован storage1
, нам нужно также создать диск storage2
. Команды почти не отличаются. Для fdisk
выполните те же действия, что и выше.
fdisk /dev/sdb
/sbin/mkfs.ext4 /dev/sdb1
mkdir /glusterfs2
Отредактируйте /etc/fstab
и добавьте следующую строку:
/dev/vdb1 /glusterfs2 ext4 defaults 1 2
Так же, как и на storage1
, диск будет автоматически монтироваться при перезагрузке.
Смонтировать диск:
mount -a
Наконец, давайте проверим, можем ли мы увидеть, как появляется раздел:
df -h
Вы должны увидеть ваш диск здесь. Если это не так, попробуйте выполнить действия, описанные выше.
storage1
иstorage2
Нам нужно установить GlusterFS дальше. Добавьте репозиторий и установите GlusterFS:
rpm -ivh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-5.noarch.rpm
wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/3.7/3.7.5/CentOS/glusterfs-epel.repo
yum -y install glusterfs glusterfs-fuse glusterfs-server
Есть вероятность, что вы получите ошибку, yum
потому что подпись для хранилища неверна. В этом случае безопасно принудительно не проверять подпись GPG:
yum -y install glusterfs glusterfs-fuse glusterfs-server --nogpgcheck
На обоих серверах выполните следующие команды, чтобы запустить GlusterFS прямо сейчас и запустить его автоматически после перезагрузки:
systemctl enable glusterd.service
systemctl start glusterd.service
Если вы используете более старую версию CentOS, вы можете использовать service
и chkconfig
команду:
chkconfig glusterd on
service glusterd start
storage1
иstorage2
Хотя это и не самое лучшее решение как таковое, рекомендуется отключить брандмауэр, чтобы устранить возможные конфликты с заблокированными портами. Если вам неудобно это делать, то смело изменяйте правила по своему вкусу, но из-за особенностей GlusterFS я настоятельно рекомендую отключить брандмауэр. Учитывая, что частная сеть на самом деле является частной в Vultr (и вам не нужно защищать других пользователей от брандмауэра), вы можете просто заблокировать весь входящий трафик из Интернета и ограничить разрешенные подключения к частной сети. Тем не менее, отключение брандмауэра и не изменять никакие другие конфигурации системы также будет достаточно:
systemctl stop firewalld.service
systemctl disable firewalld.service
В случае , если вы используете более старую версию CentOS , которая не поддерживает systemctl
, используйте service
и chkconfig
команду:
service firewalld stop
chkconfig firewalld off
Если вы не используете firewalld
, попробуйте отключить iptables
:
service iptables stop
chkconfig iptables off
После отключения брандмауэра мы можем добавить оба сервера в пул хранения. Это пул, состоящий из всего доступного хранилища. Выполните следующую команду storage1
:
gluster peer probe storage2
Эта команда добавляет storage2
в свой пул хранения. При выполнении следующей команды storage2
оба диска будут синхронизированы:
gluster peer probe storage1
После выполнения этого на обоих серверах мы должны проверить статус на обоих серверах:
gluster peer status
Оба сервера должны показывать состояние «Peers: 1». Распространенной ошибкой являются люди, ожидающие увидеть Peers: 2
, но, как storage1
будут смотреть storage2
и наоборот, они не смотрят друг на друга. Поэтому Peers: 1
это то , что нам нужно.
storage1
Теперь, когда оба сервера могут соединяться друг с другом через GlusterFS, мы собираемся создать общий диск.
На storage1
, выполнить:
gluster volume create mailrep-volume replica 2 storage1:/glusterfs1/files storage2:/glusterfs2/files force
Том был создан. В GlusterFS вам нужно «запустить» том, чтобы он активно использовался несколькими устройствами. Давайте начнем это:
gluster volume start mailrep-volume
Затем выберите папку, которая должна находиться на томе и реплицироваться на обоих серверах. В этом уроке мы будем использовать папку /var/files
. Естественно, это может быть что угодно. Создайте его storage1
только на :
mkdir /var/files
Далее монтируем его:
mount.glusterfs storage1:/mailrep-volume /var/files/
Обновите, /etc/fstab
чтобы диск автоматически монтировался при загрузке. Добавьте следующее:
storage1:/mailrep-volume /var/files glusterfs defaults,_netdev 0 0
Перемонтировать диск:
mount -a
storage2
Теперь, когда мы создали общий диск storage1
, нам нужно его создать storage2
. Создайте папку с таким же местоположением / путем и именем:
mkdir /var/files
mount.glusterfs storage2:/mailrep-volume /var/files/
Просто storage1
добавьте следующую строку в /etc/fstab
:
storage2:/mailrep-volume /var/files glusterfs defaults,_netdev 0 0
Перемонтировать диск:
mount -a
Перейдите в /var/files
папку storage1
и создайте файл:
cd /var/files
touch created_on_storage1
Далее идите на storage2
сервер. Выполните, ls -la
и вы должны увидеть файл created_on_storage1
появится.
Включите storage2
, перейдите в /var/files
папку и создайте файл:
cd /var/files
touch created_on_storage2
Вернитесь storage1
и выполните ls -la /var/files
. Вы должны увидеть, что файл created_on_storage2
появится здесь.
Чтобы перепроверить, останется ли ваша установка постоянной после перезагрузок, рекомендуется перезагрузить все серверы. Как уже упоминалось, вы должны подождать, пока один сервер будет включен, а затем перезагрузить другой, чтобы общий диск был автоматически подключен.
storage1
Сначала перезагрузите компьютер , подождите, пока он включится, затем перезагрузите компьютер storage2
. Теперь войдите в систему и выполните на обоих серверах:
cd /var/files
ls -la
Теперь вы должны увидеть оба файла. Обязательно начинайте без каких-либо файлов на томе, поэтому удалите созданные нами тестовые файлы. Вы можете сделать это storage1
, storage2
или оба. Изменения будут реплицированы мгновенно:
cd /var/files
rm created_on_storage1
rm created_on_storage2
У вас должен быть одинаковый общий том на обоих серверах, независимо от действий на обоих томах.
Теперь вы настроили полноценную установку GlusterFS с 100 ГБ (или более) доступного пространства. В случае, если вам понадобится больше в будущем, настройку легко масштабировать, чтобы увеличить емкость и / или количество серверов, если этого требует ваша рабочая нагрузка.
Спасибо за чтение!
GlusterFS позволяет поддерживать ваши данные в актуальном состоянии на двух дисках. Однако следует помнить, что когда оба сервера будут перезагружены одновременно , вам потребуется принудительно смонтировать диски на обоих серверах. Вы должны принудительно смонтировать монтирование вручную, выполнив следующую команду:
gluster volume start mailrep-volume force
Это потому, что один из серверов действует как сервер, а другой - как клиент. Хотя на практике эта разница не очень заметна, это означает, что, когда вам нужно перезагрузить оба сервера, вы должны перезагрузить один, подождать, пока он не заработает, а затем загрузить другой.
Несмотря на то, что ваши данные будут реплицированы на два диска, вы должны сделать это как минимум трижды. Хотя ваши данные лучше защищены от повреждения данных и тому подобного, вы должны помнить, что изменения происходят мгновенно, и вы никоим образом не будете защищены от человеческих ошибок. Когда вы удаляете все файлы на одном диске, эти изменения будут немедленно реплицированы на другой диск, что означает, что ваши данные будут стерты в обоих случаях.
К счастью, есть несколько подходов, чтобы избежать этого. Прежде всего, я рекомендую включить резервное копирование на самом облачном экземпляре. Хотя эти резервные копии не включают данные в хранилище блоков, они будут защищать данные самого экземпляра.
Когда дело доходит до резервного копирования данных в самом блочном хранилище, я рекомендую развернуть отдельный экземпляр (например, план SATA), чтобы вы могли, например, запускать резервное копирование с одного из двух подключенных серверов каждую ночь. Таким образом, ваши данные будут в безопасности на другом отдельном устройстве.
Вы можете увеличить размер хранилища блоков с панели управления Vultr. После этого вы должны изменить размер диска внутри операционной системы, но это выходит за рамки данной статьи.
Хотя это руководство было написано для двух серверов (то есть двух блочных накопителей, подключенных к обоим серверам), но можно взять это руководство и использовать его для более чем двух серверов. Настройка с более чем двумя серверами / дисками может выглядеть следующим образом для 6 серверов, например:
VM: storage1
VM: storage2
VM: storage3
VM: storage4
Block Storage: attached to storage1
Block Storage: attached to storage2
Block Storage: attached to storage3
Block Storage: attached to storage4
Учитывая, что все блочные накопители имеют емкость, например, 200 ГБ, вы получите 200 * 4/4. Другими словами, используемое пространство - это всегда емкость одного блочного хранилища. Это связано с тем, что один сервер с подключенным хранилищем блоков обрабатывается GlusterFS как «ведущий» и реплицируется на другие серверы. Тем не менее, установка построена так, чтобы иметь возможность выживать без главного сервера, что делает его таким избыточным и надежным, стабильным решением.
Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.
При настройке нового сервера Linux рекомендуется обновить ядро системы и другие пакеты до последней стабильной версии. В этой статье
Используете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам
Если вы хотите разместить свой инвентарь в Интернете или просто магазин технических аксессуаров, Magento - отличное решение для электронной коммерции в Интернете. Это статья
Используете другую систему? AirSonic - это бесплатный и потоковый сервер с открытым исходным кодом. В этом уроке я проведу вас через процесс развертывания
OrangeScrum - это бесплатный инструмент управления проектами с открытым исходным кодом, который широко используется в малом и среднем бизнесе. В этой статье я проведу вас через
OrientDB - это мультимодельная СУБД NoSQL с открытым исходным кодом нового поколения. Благодаря поддержке нескольких моделей данных OrientDB может обеспечить большую функциональность и гибкость в
Vtiger CRM - это популярное приложение для управления взаимоотношениями с клиентами, которое может помочь предприятиям увеличить продажи, обеспечить обслуживание клиентов и увеличить прибыль. я
MaraDNS - это легкая, но надежная программа с открытым исходным кодом для DNS-сервера. По сравнению с другими приложениями того же типа, такими как ISC BIND, PowerDNS и djbdns
Используете другую систему? Netdata - восходящая звезда в области мониторинга показателей системы в режиме реального времени. По сравнению с другими инструментами того же рода, Netdata:
Используете другую систему? В этом уроке я расскажу, как настроить сервер Starbound в CentOS 7. Предварительные условия Вы должны иметь эту игру на себе
RabbitMQ - это брокер сообщений с открытым исходным кодом, который поддерживает AMQP, STOMP и другие коммуникационные технологии. Широко используется в корпоративных приложениях
Добро пожаловать в другой учебник Vultr. Здесь вы узнаете, как установить и запустить сервер SAMP. Это руководство было написано для CentOS 6. Предварительные условия
Используете другую систему? Elgg - это движок социальных сетей с открытым исходным кодом, который позволяет создавать социальные среды, такие как социальные сети кампуса и
Bolt - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Bolts размещен на GitHub. Это руководство покажет вам, как установить Bolt CMS на новую CentOS 7 Vult.
Традиционные подходы к анализу данных невозможно использовать, когда наборы данных достигают определенного размера. Современная альтернатива анализу огромных массивов данных, которые я
Elasticsearch - популярный движок полнотекстового поиска и аналитики с открытым исходным кодом. Благодаря своей универсальности, масштабируемости и простоте использования, Elasticsearch широко используется
Обзор Эта статья призвана помочь вам в кратчайшие сроки запустить и запустить кластер Kubernetes с помощью kubeadm. Это руководство будет развертывать два сервера, на
Используете другую систему? Введение Sails.js - это инфраструктура MVC для Node.js, аналогичная Ruby on Rails. Это делает для разработки современных приложений вер
Введение В этом руководстве мы будем устанавливать PufferPanel на нашем Vultr VPS. PufferPanel - это бесплатная панель управления с открытым исходным кодом для управления вами.
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше