Работа с конфигурацией Свойства конфигурации 1с
Каждый объект конфигурации обладает уникальным набором свойств. Этот набор описан на уровне системы и не может быть...
В предыдущей статье мы уже рассказывали об управлении загрузкой выделенных серверов и обещали показать что-то ещё интереснее. Рады представить полностью автоматическую установку операционной системы на выделенные серверы.
Для многих наших клиентов установка ОС на сервер представляется делом хлопотным и при этом не сильно интересным. Обычно этим занимались наши инженеры, тратя все больше времени с ростом количества серверов и клиентов. Поэтому было решено полностью автоматизировать этот процесс, при этом сделать его максимально гибким и простым для клиента.
Также было решено немного разнообразить формат статей и показать весь процесс в виде скринкаста на примере установки недавно вышедшего CentOS 6.4.
Начнем естественно с анкеты сервера - открываем список серверов, находим нужный сервер и переходим к нему. Обязательно назначаем серверу IPv4 адрес, если это не сделано ранее.
Выбор типа программного RAID рассмотрим подробнее. На большинстве наших выделенных серверов присутствует два и более жестких диска, но при этом нет аппаратного RAID контроллера. Поэтому мы настойчиво рекомендуем нашим клиентам использовать программный RAID1 (зеркалирование) или RAID10 (зеркалирование плюс чередование, но на такой рейд требуется 4+ диска) для повышения надежности хранения данных. По этой же причине мы отказались от добавления опции RAID0 (чередование), так как при его использовании и выходе из строя одного из HDD будет потеряна вся информация, хранящаяся на сервере. Итого на данный момент доступны:
Обращаем внимание, на то что не стоит пытаться собрать RAID10 на сервере с 1 диском, установщик ОС скорее всего этой шутки не поймет. Учесть все возможные комбинации серверов, не представляется возможным, особенно, принимая во внимание серверы произвольной конфигурации. Поэтому в этом вопросе мы полагаемся на ваше благоразумие.
Далее последний, но очень важный этап - выбор разметки дисков. Обязательные разделы: /boot (1 Гб), / (не менее 5 ГБ), swap (не менее 4 ГБ). Вы можете добавлять любое количество разделов и удалять их. Для каждого раздела указывается размер в ГБ, и один из разделов должен быть отмечен для заполнения места. В качестве файловой системы мы рекомендуем использовать по умолчанию ext4, также учтите, что некоторые ОС накладывают определенные ограничения на выбор ФС.
После выбора и проверки всех настроек нажимаем “Начать переустановку” и подтверждаем в диалоговом окне. Ещё раз обращаем внимание на то, что при переустановке все данные со всех дисков удаляются. Даже если вы выбрали разметку “Без RAID” на сервере с 4 дисками, все 4 диска будут затерты. Это необходимо так как большинство установщиков входят в ступор при нахождении остатков метаданных RAID/LVM на дисках во время их разметки.
Сразу после подтверждения сервер будет перезагружен через IPMI и начнет загрузку соответствующего установщика ОС по сети. Страница переустановки будет заблокирована на время установки ОС, на её месте будет выводиться соответствующее сообщение. Если вы поняли, что ошиблись сервером, то можете прервать установку в любой момент нажав кнопку “Отменить переустановку”. При этом сервер будет немедленно перезагружен, а загрузка по сети переключится на загрузку с первого жесткого диска. За процессом установки можно наблюдать через KVM-консоль, ссылка на которую находится на этой же странице.
Установка сервера занимает 5-10 минут, в зависимости от производительности сервера и дистрибутива ОС. Для сокращения времени установки и повышения надежности используется наше зеркало mirror.selectel.ru. Если во время установки сервера произошла какая-либо ошибка, например, прервался доступ в интернет, то для начала попробуйте перезагрузить сервер, установка начнется сначала. Если это не поможет, то обратитесь в техподдржку через тикет-систему, вам обязательно помогут.
Итак, сервер загрузился и готов к дальнейшей настройке и работе.
Все системы устанавливаются в минимально возможной конфигурации по умолчанию, никакие системные настройки не изменяются без крайней необходимости. На всех системах автоматически устанавливается и включается только ssh-сервер. Пароль при установке можно посмотреть после установки на странице переустановки сервера, при каждой переустановке генерируется новый пароль. При установке ОС Ubuntu пользователь root отключен, создается пользователь с логином ‘user’, во всех остальных системах пользователь один - ‘root’. Также мы всегда рекомендуем самостоятельно сменить пароль после установки сервера, создать нового пользователя и отключить доступ root пользователя по ssh.
Как размечаются диски? При разметке дисков используется LVM и mdraid:
Почему LVM? Использование LVM добавляет гибкости при редактировании разделов, позволяет относительно легко изменять их размеры, объединять, добавлять и удалять разделы. Также использование LVM позволило унифицировать шаблоны установки и обойти некоторые проблемы при разметке дисков (отпала необходимость в использовании extended разделов и их нумерации).
Почему /boot отдельно и такой большой? Большинство ОС рекомендуют выносить /boot раздел отдельно при использовании LVM или RAID для корневого раздела. 1Гб совсем не много- это ~0.2% от 500Гб диска (минимальный не SSD диск доступный для наших серверов). При этом этого достаточно для хранения нескольких десятков обычных ядер с initrd или нескольких dev ядер, размер которых может превышать 200Мб. С учетом того что изменить размер /boot раздела- дело чрезвычайно хлопотное, мы решили не жадничать.
Хочу оставить свободное место на диске, но не могу снять галочку “заполнить место”. Это баг? Нет, это не баг, большинство установщиков требуют растягивать один из разделов на все свободное место. В качестве решения проблемы мы рекомендуем создавать раздел пустышку, отмечать его галочкой “заполнить место” и удалять после установки системы.
Как это работает? Все системы устанавливаются своими штатными установщиками с использованием preseed, kickstart или autoyast в зависимости от дистрибутива. На данный момент доступны:
Все сервера, предлагаемые нами в аренду, оснащены контроллером IPMI (Intelligent Platform Management Interface), позволяющим осуществлять включение, выключение, удаленное подключение (KVM) с возможностью монтирования ISO-образов, а также обеспечивающим доступ к информации о текущем состоянии сервера.
При помощи IPMI после выдачи сервера вы сможете произвести установку операционной системы и первоначальную настройку сервера. Так как IPMI-контроллер подключён отдельным кабелем и имеет собственный IP-адрес, даже в случае потери доступа к ОС Вы всегда сможете управлять сервером удаленно без необходимости прямого физического доступа.
Для установки операционной системы Вам потребуется подключиться к IPMI сервера одним из удобных для вас способов: через Web-интерфейс или при помощи программы IPMIView. В статье будут описаны оба варианта, однако мы рекомендуем использовать второй способ.
Для подключения через web-интерфейс необходимо в адресной строке вашего браузера ввести адрес IPMI и авторизоваться. Адрес и реквизиты для авторизации вы можете найти в письме с доступом к серверу или в вашем личном кабинете. Далее потребуется перейти во вкладку Remote Control -> Console Redirection и нажать кнопку Launch Console .
В разделе Device 1 выберите ISO File в выпадающем списке Logical Drive Type и укажите путь до образа на вашем диске при помощи кнопки Open Image , после чего подключите образ кнопкой Plug In .
После подключения образа перезагрузите ваш сервер в разделе Power Control ->
Некоторые серверы позволяют подключить до трёх устройств при помощи вкладок Device 2 или Device 3 в разделе Virtual Media -> Virtual Storage . Это может быть полезно, если при установке потребуется установить дополнительные драйвера.
Если вы планируете установить на сервер ОС Windows, комбинацию клавиш Ctrl+Alt+Del можно передать в разделе Macro - Macro .
Для использования программы Supermicro IPMIView необходимо скачать её с официального сайта , указав свои данные, либо напрямую с ftp-сервера: ftp://ftp.supermicro.com/utility/IPMIView/
После установки и запуска программы необходимо добавить ваш сервер в разделе File - New - System .
В качестве System Name укажите имя вашего сервера, а в графу IP address впишите адрес IPMI , который вы можете найти в письме с доступом к серверу или в вашем личном кабинете. Убедитесь, что в графе адреса отсутствуют пробелы в конце строки и нажмите OK .
В списке слева дважды нажмите на имя добавленного сервера, после чего вы увидите окно авторизации. Заполните его при помощи реквизитов из письма или личного кабинета и нажмите Login . В случае успешного подключения вы увидите надпись Connected , а в самом низу окна появятся дополнительные вкладки для управления сервером.
Для удалённого управления сервером перейдите в разде KVM Console и нажмите кнопку Launch KVM Console .
Дальнейшие действия аналогичны работе через
При помощи программы IPMIView вы также можете перезагрузить, включить или выключить ваш сервер во вкладке IPMI Device .
Установка ОС на сервер один из самых ответственных этапов при его запуске. От выбора OS в большей степени зависит его работоспособность и успешность функционирования.
Серверная операционная система должна отвечать ряду требований, а именно:
В той или иной степени каждая система, предназначенная для установки на сервер, отвечает этим требованиям.
На сегодняшний день, на рынке наиболее популярны два вида таких операционных систем: ОС от Microsoft и ОС на основе Unix. Приблизительный перечень выглядит так:
Помимо представленных преимуществ и недостатков, для того, чтобы выбрать и установить ОС необходимо учитывать еще множество параметров, в зависимости от ваших целей.
Установка операционной системы на сервер сильно отличается от установки Ос на обычный ПК. Для этого можно привлечь следующих специалистов:
От правильной установки и настройки вашего сервера зависит работа всего сервера, безопасность вашей информации и престиж компании, поэтому, для настройки вашего сервера необходимо привлекать только профессионалов.
С помощью онлайн биржи YouDo вы можете заказать услуги специалистов, которые помогут вам установить ОС качественно, в срок и по самой выгодной цене. Для этого вам достаточно оставить свой номер телефона на этом сайте, наши сотрудники перезвонят и помогут подобрать специалистов самого высокого уровня.
Самым радикальным способом избавиться от «мусора» в операционной системе является ее «чистая» переустановка. Что достаточно простая задача, при наличии физического доступа к серверу (компьютеру). Однако большинство WEB серверов находятся на расстоянии многих и многих километров от своих хозяев. В данной статье я подробно расскажу как установить CentOS удаленно используя только доступ к консоли сервера по SSH.
Причин может быть несколько. Неполадки в работе, когда система тормозит, или ни с того ни с чего терять производительность. Периодически может «глючить» какой-нибудь софт или вообще отказывается работать. Если необходимо сменить разрядность, к примеру с 32-х бит на 64 или наоборот. Когда необходима чистая ОС, к примеру для установки панели управления хостингом ISPmanager или Vesta Panel .
Мне по душе третий вариант.
Для себя вижу несколько причин переустановить операционную систему самостоятельно:
Писал, пишу и буду писать: не забудь про бэкап! И хотя статья не об этом, но резервные копии надо сделать обязательно, так как после переустановки операционной системы Ваш сервер будет чист как белый лист.
Необходимо определить сетевые настройки Вашего сервера. Нас интересуют следующие значения:
Сетевой интерфес (МАС адрес или наименование);
IP адрес сетевого интерфейса сервера;
Маска сети;
IP адрес шлюза по-умолчанию;
IP адрес доступного DNS сервера, как правило можно использовать публичные DNS от Google 8.8.8.8 и 8.8.4.4
Для определения необходимый параметров выполним в консоли несколько команд:
Ifconfig ip route show cat /etc/sysconfig/network-scripts/ifcfg-eth0 cat /etc/sysconfig/network cat /etc/resolv.conf
Я получил следующие значения:
//Ip 193.170.128.128 //Gateway 193.170.128.1 //DNS 193.170.128.2 //MASK 255.255.252.0 //MAC 12:14:01:4a:25:b5
Необходимо выбрать загружаемые образы в зависимости от версии операционной системы и ее разрядности. К примеру для CentOS 64 бит версии 6.4 выполните следующие команды:
Wget -O /boot/vmlinuz_remote http://mirror.centos.org/centos/6.4/os/x86_64/isolinux/vmlinuz wget -O /boot/initrd_remote.img http://mirror.centos.org/centos/6.4/os/x86_64/isolinux/initrd.img
Если необходима установка 32-х битной операционной системы то смените в адресах x86_64 на i386 :
Wget -O /boot/vmlinuz_remote http://mirror.centos.org/centos/6.4/os/i386/isolinux/vmlinuz wget -O /boot/initrd_remote.img http://mirror.centos.org/centos/6.4/os/i386/isolinux/initrd.img
Обращаю Ваше внимание, что загрузка будет произведена с официальных серверов CentOS. Предварительно проверьте правильность путей открыв адреса в браузере.
Переходим к самому важному пункту — настройка конфигурации загрузчика GRUB. В двух словах, мы пропишем в настройках альтернативную загрузку с использованием свежескаченного дистрибутива. И укажем grub попробовать загрузить его один раз. А если что-то пойдет не так, то автоматически вернемся к ранее установленному дистрибутиву после перезагрузки через 120 секунд (в некоторых случаях для перезагрузки может понадобиться помощь специалистов ДАТА центра).
Открываем файл grub.conf (как правило /boot/grub/grub.conf) и добавляем в него следующие строки:
Title Remote Install root (hd0,0) kernel /boot/vmlinuz_remote lang=en_US keymap=us method=http://mirror.centos.org/centos/6.4/os/x86_64/ vnc vncpassword=123456 ip=193.170.128.128 netmask=255.255.252.0 gateway=193.170.128.1 dns=193.170.128.2 noselinux ksdevice=eth0 headless xfs panic=120 initrd /boot/initrd_remote.img
где, root (hd0,0)
— расположении /BOOT партиции, vncpassword
— пароль для доступа к удаленному рабочему столу VNC сервера (придумайте свой), ip
— ip адрес Вашего сервера, netmask
— маска сети, gateway
— ip адрес шлюза по-умолчанию, dns
— ip адрес DNS сервера (можно использовать публичные от Google 8.8.8.8 или 8.8.4.4), ksdevice
— наименование сетевого интерфейса или его MAC-адрес, panic
— время перезагрузки, если что-то пойдет не так.
Кроме этого проверьте адреса загрузки на доступность и имена файлов, которые мы скачали на предыдущем шаге.
Для 32-х битной операционной системы изменения будут выглядеть так (как всегда меняем в адресе x86_64 на i386):
Title Remote Install root (hd0,0) kernel /boot/vmlinuz_remote lang=en_US keymap=us method=http://mirror.centos.org/centos/6.4/os/i386/ vnc vncpassword=123456 ip=193.170.128.128 netmask=255.255.252.0 gateway=193.170.128.1 dns=193.170.128.2 noselinux ksdevice=eth0 headless xfs panic=120 initrd /boot/initrd_remote.img
Теперь самое важное, куда же все это вставлять 🙂
Мой файл grub.conf выглядит так:
# grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root # initrd /initrd-version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.32-358.2.1.el6.i686) root (hd0,0) kernel /boot/vmlinuz-2.6.32-358.2.1.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /boot/initramfs-2.6.32-358.2.1.el6.i686.img title CentOS (2.6.32-358.el6.i686) root (hd0,0) kernel /boot/vmlinuz-2.6.32-358.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /boot/initramfs-2.6.32-358.el6.i686.img
Как Вы видите система имеет в списке загрузки два варианта. И мы должны добавить свой. Добавим его в самый конец:
# grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,0) # kernel /vmlinuz-version ro root=/dev/mapper/VolGroup-lv_root # initrd /initrd-version.img #boot=/dev/sda default=0 timeout=5 splashimage=(hd0,0)/grub/splash.xpm.gz hiddenmenu title CentOS (2.6.32-358.2.1.el6.i686) root (hd0,0) kernel /boot/vmlinuz-2.6.32-358.2.1.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /boot/initramfs-2.6.32-358.2.1.el6.i686.img title CentOS (2.6.32-358.el6.i686) root (hd0,0) kernel /boot/vmlinuz-2.6.32-358.el6.i686 ro root=/dev/mapper/VolGroup-lv_root rd_NO_LUKS LANG=en_US.UTF-8 rd_NO_MD rd_LVM_LV=VolGroup/lv_swap SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=VolGroup/lv_root KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet initrd /boot/initramfs-2.6.32-358.el6.i686.img title Remote Install root (hd0,0) kernel /boot/vmlinuz_remote lang=en_US keymap=us method=http://mirror.centos.org/centos/6.4/os/i386/ vnc vncpassword=123456 ip=193.170.128.128 netmask=255.255.252.0 gateway=193.170.128.1 dns=193.170.128.2 noselinux ksdevice=eth0 headless xfs panic=120 initrd /boot/initrd_remote.img
Наша конфигурация загрузки CentOS идет третьим пунктом. Укажем grub попробовать загрузить ее один раз:
Grub grub> savedefault --default=2 --once savedefault --default=2 --once grub> quit
После чего можно перегружать сервер:
Ждем когда сервер начнет пинговаться и пробуем подключиться по VNC по адресу 193.170.128.128:1 (адрес нашего сервера, VNC порт=1). В зависимости от мощности сервера и скорости канала на это может уйти до получаса. За это время скачаются и установятся все необходимые пакеты.
После этого на экране будет стандартный рабочий стол установщика CentOS с графическим интерфейсом. Ну а сама установка операционной системы на сервер — это совсем другая история.
VNC не поддерживает Keepalives и при длительном простое может «отвалиться». Поэтому если Вы подключили VNC клиент, то нужно сразу приступать к делу, либо принудительно отключиться от сервера.
Если у Вас на сервере нет файла grub.conf, то это значит, что у вас виртуальный сервер на основе OpenVZ и данная инструкция Вам не подходит. Это еще один повод использовать аппаратные методы виртуализации, к примеру VmWare, как это сделано в компании Adman .
В статье приведен безопасный метод загрузки, с возможностью вернуться к существующей операционной системе. Но Вы можете записать новую конфигурацию на первое место и тогда не будет необходимости в команде savedefault —default=2 —once
. Grub будет использовать первую по списку.