Red Hat Cluster Manager: Руководство по установке и администрированию Red Hat Cluster Manager | ||
---|---|---|
Назад | Глава 2. Установка оборудования и настройка операционной системы | Вперед |
Установив основное оборудование системы, выполните установку Red Hat Linux в каждой кластерной системе и убедитесь в том, что оборудование, подключенное к системе, было корректно определено. Выполните следующие шаги:
Установите операционную систему Red Hat Linux в каждой кластерной системе. Если вы дополнительно настраиваете ядро, убедитесь в том, что вы следуете требованиям и рекомендациям, приведенные в разделе Требования к ядру систему.
Перезагрузите кластерные системы.
Если вы используете терминальный сервер, настройте Linux на передачу консольных сообщений в последовательный порт консоли.
Отредактируйте файл /etc/hosts в каждой кластерной системе и укажите IP адреса, используемые в кластере. Обратитесь к разделу Редактирование файла /etc/hosts за дополнительной информацией о выполнении этой задачи.
Уменьшите таймаут загрузки ядра для ускорения загрузки кластерной системы. Обратитесь к разделу Уменьшение таймаута загрузки ядра за дополнительной информацией о выполнении этой задачи.
Убедитесь в том, что никакие программы регистрации в системе (или getty) не настроены на использование последовательных портов, используемых пульсирующим каналом или переключателем питания (если таковые применяются). Для выполнения этого требования, отредактируйте файл /etc/inittab, закомментировав с помощью символа (#) строки, соответствующие последовательным портам, к которым подключены пульсирующий канал и/или переключатель питания. Затем, выполните команду init q.
Проверьте, было ли все установленное оборудование выявлено корректно:
Воспользуйтесь командой dmesg для просмотра консольных сообщений о загрузке. Обратитесь к разделу Отображение консольных сообщений о загрузке за дополнительной информацией о выполнении этой задачи.
Выполните команду cat /proc/devices для просмотра списка устройств, поддерживаемых ядром. Обратитесь к разделу Отображение устройств, поддерживаемых ядром за дополнительной информацией о выполнении этой задачи.
Убедитесь в том, что кластерные системы соединяются друг с другом через все сетевые интерфейсы, с помощью команды ping отправляя пакеты от одной системы к другой.
Если вы намерены настроить службы Samba, убедитесь в том, что связанные с Samba RPM-пакеты установлены в вашей системе.
Настраивая ядро самостоятельно, придерживайтесь следующих требований к ядру системы:
Включите в ядре поддержку "IP Aliasing" (нескольких IP адресов), задав переменной ядра CONFIG_IP_ALIAS значение y. Определяя параметры ядра, в разделе Networking Options (Сетевые параметры), отметьте IP aliasing support (поддержка нескольких IP адресов).
Включите поддержку файловой системы /proc задав для переменной ядра CONFIG_PROC_FS значение y. Определяя параметры ядра, в разделе Filesystems (Файловые системы), отметьте /proc filesystem support.
Убедитесь в том, что драйвер SCSI-контроллера загружается до загрузки программного обеспечения кластера. Возможно вам придется отредактировать сценарии загрузки таким образом, чтобы драйвер SCSI запускался перед сценарием, запускающим кластер. Можно также встроить драйвер SCSI в ядро системы, вместо загрузки его в виде подгружаемого модуля, изменив файл /etc/modules.conf.
Кроме этого, после установки операционной системы Linux настоятельно рекомендуется выполнить следующее:
Определить IP адреса для интерфейсов кластерных систем и пульсирующего Ethernet канала точка-точка, до начала установки Linux. Обратите внимание, IP-адреса для интерфейсов, образующих соединений точка-точка могут быть частными IP, (например, 10.x.x.x).
По своему усмотрению, зарезервируйте IP адрес, который будет использоваться в качестве "псевдонима кластера". Обычно этот адрес применяется для упрощения удаленного управления.
Определите следующие параметры ядра Linux, при этом система будет предоставлять более подробную информацию о конфигурации системы и событиях, тем самым помогая выявить проблемы:
Включите ведение журнала работы SCSI, задав для параметра ядра CONFIG_SCSI_LOGGING значение y. Определяя параметры ядра, в разделе SCSI Support(Поддержка SCSI), отметьте SCSI logging facility (ведение журнала работы SCSI).
Включите поддержку sysctl, задав для параметра ядра CONFIG_SYSCTL значение y. Определяя параметры ядра, в разделе General Setup (Общие настройки), отметьте Sysctl support(поддержка Sysctl).
Не размещайте локальные файловые системы, такие как /, /etc, /tmp, и /var на общих дисках или на дисках подключенных к той же SCSI шине, что и общее хранилище. Это помогает предотвратить случайное монтирование этих файловых систем другим узлом кластера, также при этом не задействуются идентификационные номера SCSI-устройств, что может оказаться полезным, учитывая их ограниченное количество.
Размещайте разделы /tmp и /var на разных файловых системах. Это может улучшить производительность системы.
Убедитесь в том, что при загрузке узла кластера система определяет дисковые устройства в том же порядке, что и во время установки Linux. Если устройства будут определены в другом порядке, система может не загрузиться.
Если вы используете RAID-хранилище с номерами логических единиц устройств (LUNs) большими нуля, необходимо включить поддержку LUN в ядре, добавив следующую строку в файл /etc/modules.conf:
options scsi_mod max_scsi_luns=255 |
После изменения файла modules.conf необходимо перестроить образ ядра в памяти с помощью команды mkinitrd. Обратитесь к официальному руководству по настройке Red Hat Linux за дополнительной информацией о создании образа ядра с помощью mkinitrd.
Файл /etc/hosts содержит таблицу преобразования имен компьютеров в IP адреса. Файл /etc/hosts для каждой кластерной системы должен содержать следующие записи:
IP адреса и соответствующие имена компьютеров каждой кластерной системы
IP адреса и соответствующие имена компьютеров для пульсирующих Ethernet соединений (это могут быть также частные IP адреса)
В качестве альтернативы файлу /etc/hosts для определения имен узлов кластера могут использоваться системы именования компьютеров, такие как DNS или NIS. Однако чтобы уменьшить количество зависимостей, и тем самым увеличить степень доступности, настоятельно рекомендуется использовать файл /etc/hosts для определения IP адресов сетевых интерфейсов кластера.
Ниже приведен пример файла /etc/hosts в кластерной системе:
127.0.0.1 localhost.localdomain localhost 193.186.1.81 cluster2.yourdomain.com cluster2 10.0.0.1 ecluster2.yourdomain.com ecluster2 193.186.1.82 cluster3.yourdomain.com cluster3 10.0.0.2 ecluster3.yourdomain.com ecluster3 193.186.1.83 clusteralias.yourdomain.com clusteralias |
В предыдущем примере показаны IP адреса и имена компьютеров двух кластерных систем (cluster2 и cluster3), а также частные IP адреса и имена компьютеров на ethernet интерфейсе, используемом для пульсирующего соединения точка-точка (ecluster2 и ecluster3 соответственно), и кроме этого IP-псевдоним кластера clusteralias используемый для удаленного наблюдения за работой кластера.
Проверьте правильность форматирования в файле /etc/hosts записи, относящейся к локальному узлу - она не должна включать удаленные системы. Пример некорректной записи о локальном узле, включающей удаленную систему (server1) приведен ниже:
127.0.0.1 localhost.localdomain localhost server1 |
Пульсирующий канал может работать некорректно, если в формате записи допущена ошибка. Например, канал может ошибочно выглядеть как offline (недействующий). Проверьте файл /etc/hosts и исправьте формат этого файла, удалив удаленные системы из записи о локальном узле, если это необходимо.
Обратите внимание, каждый сетевой адаптер должен быть настроен на использование соответствующего IP адреса и маски сети.
Ниже приведен пример выполнения команды /sbin/ifconfig в кластерной системе:
# ifconfig eth0 Link encap:Ethernet HWaddr 00:00:BC:11:76:93 inet addr:192.186.1.81 Bcast:192.186.1.245 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:65508254 errors:225 dropped:0 overruns:2 frame:0 TX packets:40364135 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 Interrupt:19 Base address:0xfce0 eth1 Link encap:Ethernet HWaddr 00:00:BC:11:76:92 inet addr:10.0.0.1 Bcast:10.0.0.245 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:100 Interrupt:18 Base address:0xfcc0 |
В предыдущем примере показаны два сетевых интерфейса кластерной системы: Интерфейс eth0 - сетевой интерфейс кластерной системы, и eth1 - сетевой интерфейс, обеспечивающий пульсирующее соединение точка-точка.
Вы можете ускорить процесс загрузки кластерной системы, уменьшив таймаут загрузки ядра. При загрузке Linux, загрузчик позволяет в течении определенного времени выбрать альтернативное ядро. По умолчанию, на этот выбор дается десять секунд.
Чтобы изменить таймаут загрузки ядра кластерной системы, отредактируйте файл /etc/lilo.conf и задайте требуемое значение (в десятых долях секунды) для параметра timeout. В следующем примере таймаут устанавливается равным трем секундам:
timeout = 30 |
Для применения изменений, внесенных в файл /etc/lilo.conf, выполните команду /sbin/lilo.
Похожим образом, при использовании загрузчика grub, в файле /boot/grub/grub.conf задаётся параметр таймаут, определяющий количество секунд, отведенное на выбор ядра. Чтобы установить его равным 3 секундам, определите параметр, как показано ниже:
timeout = 3 |
Воспользуйтесь командой dmesg для просмотра консольных сообщений о загрузке. За дополнительной информацией обратитесь к странице руководства по команде dmesg(8).
В приведенном ниже примере выполнения команды dmesg показано, что во время загрузки системы была выявлена плата расширения последовательных портов:
May 22 14:02:10 storage3 kernel: Cyclades driver 2.3.2.5 2000/01/19 14:35:33 May 22 14:02:10 storage3 kernel: built May 8 2000 12:40:12 May 22 14:02:10 storage3 kernel: Cyclom-Y/PCI #1: 0xd0002000-0xd0005fff, IRQ9, 4 channels starting from port 0. |
В приведенном ниже примере выполнения команды dmesg показано, что в системе были обнаружены две внешних SCSI-шины и девять дисков (обратите внимание, сообщения, отмеченные обратной косой чертой, на большинстве экранов будут выводиться в одной строке):
May 22 14:02:10 storage3 kernel: scsi0 : Adaptec AHA274x/284x/294x \ (EISA/VLB/PCI-Fast SCSI) 5.1.28/3.2.4 May 22 14:02:10 storage3 kernel: May 22 14:02:10 storage3 kernel: scsi1 : Adaptec AHA274x/284x/294x \ (EISA/VLB/PCI-Fast SCSI) 5.1.28/3.2.4 May 22 14:02:10 storage3 kernel: May 22 14:02:10 storage3 kernel: scsi : 2 hosts. May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST39236LW Rev: 0004 May 22 14:02:11 storage3 kernel: Detected scsi disk sda at scsi0, channel 0, id 0, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdb at scsi1, channel 0, id 0, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdc at scsi1, channel 0, id 1, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdd at scsi1, channel 0, id 2, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sde at scsi1, channel 0, id 3, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdf at scsi1, channel 0, id 8, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdg at scsi1, channel 0, id 9, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdh at scsi1, channel 0, id 10, lun 0 May 22 14:02:11 storage3 kernel: Vendor: SEAGATE Model: ST318203LC Rev: 0001 May 22 14:02:11 storage3 kernel: Detected scsi disk sdi at scsi1, channel 0, id 11, lun 0 May 22 14:02:11 storage3 kernel: Vendor: Dell Model: 8 BAY U2W CU Rev: 0205 May 22 14:02:11 storage3 kernel: Type: Processor \ ANSI SCSI revision: 03 May 22 14:02:11 storage3 kernel: scsi1 : channel 0 target 15 lun 1 request sense \ failed, performing reset. May 22 14:02:11 storage3 kernel: SCSI bus is being reset for host 1 channel 0. May 22 14:02:11 storage3 kernel: scsi : detected 9 SCSI disks total. |
В приведенном ниже результате выполнения команды dmesg показано, что в системе было выявлено четыре Ethernet платы:
May 22 14:02:11 storage3 kernel: 3c59x.c:v0.99H 11/17/98 Donald Becker May 22 14:02:11 storage3 kernel: tulip.c:v0.91g-ppc 7/16/99 becker@cesdis.gsfc.nasa.gov May 22 14:02:11 storage3 kernel: eth0: Digital DS21140 Tulip rev 34 at 0x9800, \ 00:00:BC:11:76:93, IRQ 5. May 22 14:02:12 storage3 kernel: eth1: Digital DS21140 Tulip rev 34 at 0x9400, \ 00:00:BC:11:76:92, IRQ 9. May 22 14:02:12 storage3 kernel: eth2: Digital DS21140 Tulip rev 34 at 0x9000, \ 00:00:BC:11:76:91, IRQ 11. May 22 14:02:12 storage3 kernel: eth3: Digital DS21140 Tulip rev 34 at 0x8800, \ 00:00:BC:11:76:90, IRQ 10. |
Чтобы убедиться в том, что все установленные устройства, включая сетевые и последовательные интерфейсы, поддерживаются ядром, выполните команду cat /proc/devices в каждой кластерной системе. Также используйте эту команду для определения, поддерживается ли прямой (raw) доступ к устройству, установленному в системе. Например:
# cat /proc/devices Character devices: 1 mem 2 pty 3 ttyp 4 ttyS 5 cua 7 vcs 10 misc 19 ttyC 20 cub 128 ptm 136 pts 162 raw Block devices: 2 fd 3 ide0 8 sd 65 sd # |
В предыдущем примере показаны:
Интегрированные на материнской плате последовательные порты (ttyS)
Плата расширения последовательных портов (ttyC)
Устройства с прямым (raw) доступом
SCSI-устройства (sd)