В ферме виртуализированных серверов Red Hat из соображений безопасности необходимо установить минимальную систему. Минимальные установки имеют несколько преимуществ (даже не связанных с безопасностью):
К сожалению, это непросто, потому что «Минимальная установка» Red Hat содержит множество ненужных пакетов.
Существует дополнительная проблема, поскольку на ферме работает Oracle iAS. Мне сказали, что у iAS есть зависимости от локальной графической среды. Итак, наконец, на каждом сервере в ферме есть gnome, X и т. Д.
Я искал в Интернете, и одно решение, похоже, создает сценарий кикстарта, который установит только необходимые пакеты. Но мне это сложно, и у меня есть несколько сомнений в том, как впоследствии поддерживать системные зависимости.
Как установить минимальные серверы Red Hat? Можно ли использовать кикстарт или у меня будут проблемы с зависимостями при установке или обновлениях? Есть ли способ избежать установки графической среды для iAS?
Я искал в Интернете, и одно решение, похоже, создает сценарий кикстарта, который будет устанавливать только необходимые пакеты. Но мне это сложно, и у меня есть несколько сомнений в том, как впоследствии поддерживать системные зависимости.
Создать файл кикстарта не так уж и сложно: поищите в / root одного из установленных серверов файл с именем anaconda-ks.cfg. Это файл кикстарта, позволяющий сделать новый сервер похожим на существующий. Этот файл есть на каждом сервере RH, Fedora или CentOS.
Вы можете отредактировать файл в system-config-kickstart, если вы не знакомы с написанием файлов кикстарта. Однако для этого вам нужен X.
Как установить минимальные серверы Red Hat? Можно ли использовать кикстарт или у меня будут проблемы с зависимостями при установке или обновлениях? Есть ли способ избежать установки графической среды для iAS?
У вас все в порядке с файлом кикстарта. Kickstart действительно влияет на способ обновления после установки. Во время установки зависимости рассчитываются автоматически. Пакеты, которые вы удалили (если это вообще возможно), которые так или иначе необходимы, добавляются. Вы не можете установить систему с неработающими зависимостями для системы. Зависимости для Oracle - совсем другое дело.
Если Oracle нужна графическая среда (а она нужна, я знаю, что это отстой, но это так), у вас нет другого выбора, кроме как установить X. Однако, черт возьми, Oracle нужен X, потому что у него есть графический установщик. После этого вам не понадобится X. Поэтому после установки вы можете удалить сертификат X.
В моем магазине мы устанавливаем только очень минимальный набор X-библиотек, кстати. Достаточно для запуска xclock (и, следовательно, установщика) удаленно с пересылкой X. Достаточно.
У Oracle более безумные зависимости. Установщику Oracle нужны несколько древних пакетов совместимости с библиотеками C. Не потому, что они действительно нужны, а потому, что они нужны для реализации zip, которую они поставляют. Почему они поставляют эту реализацию zip? Ходят слухи, что очень старая реализация zip, поставляемая Oracle, имеет более благоприятные условия лицензирования (например, она не под GPL), поэтому они отказываются использовать более новую реализацию. Правда, слухи, подтверждения так и не было ...
KIckstart в порядке. Если вы хотите убедиться, что определенные пакеты НЕ установлены, вы можете указать их в списке пакетов / групп для установки, перед которым стоит знак минус ('-').
например
%packages
@base
core-utils
-httpd
чтобы убедиться, что apache не установлен
Затем в разделе% post вы можете запускать такие команды, как chkconfig
отключать службы, которые вам не нужны, и делать все, что вы хотите, чтобы ускорить установку.
На самом деле ваша проблема не в RedHat, а в зависимости от Oracle.
Как было сказано на предыдущем постере, зависимости Oracle безумны и в основном связаны с дрянным установщиком, а не с самим продуктом.
Вам нужно разделить вашу проблему на две части:
Вторая часть самая сложная, вам нужно будет потратить некоторое время, чтобы определить из предварительных требований оракула, что действительно нужно, а что просто глупая зависимость.
Но когда это будет сделано, вы можете автоматизировать установку и минимизировать обслуживание всех систем.
Вы можете установить один раз, сделать резервную копию и использовать ее в других системах. Чтобы получить минимальную систему для использования в первую очередь, вы можете:
Я бы сказал, что последнее осуществить легче. Это может занять некоторое время, но это не имеет большого значения, поскольку вы будете делать это только один раз.
Если в ферме есть однородное виртуальное «железо», тем лучше. В противном случае все, о чем вам обычно нужно заботиться, - это полностью использовать дисковое пространство. Просто сделайте так, чтобы "основная" копия соответствовала наименьшему знаменателю с точки зрения размера, и см. Ниже.
Последнюю часть относительно легко достичь в некоторых условиях. Если в конце (виртуального) диска есть самый большой раздел, вы удаляете его в 'fdisk' и создаете заново, чтобы заполнить диск. Затем вы запускаете resize2fs, и все готово. Другая идея может заключаться в использовании LVM, который упрощает увеличение объема с помощью lvextend. (В LVM это довольно легко создать сценарий / автоматизировать.)
Отвечаю на другой старый, потому что вчера потратил на это некоторое время. Я хотел установить Red Hat с минимальным количеством пакетов для сервера специального назначения.
Кажется, что в последних версиях, даже если вы не укажете ни одного пакета в %packages
разделить группу @base
устанавливается по умолчанию.
Это устанавливает гораздо больше пакетов и служб, чем я хотел бы поддерживать в некоторых системах.
Затем я нашел %packages --nobase
в CentOS Kickstart / Anaconda Вики. Это действительно самая минимальная установка для дистрибутивов на основе Red Hat. Вы найдете множество команд, к которым вы привыкли, и которые зависят от отсутствия. Но если вам нужна минимальная отправная точка, вот она.