Архитектура современного усредненного PC-сервера. Прежде чем углубляться в тонкости серверных технологий, зададимся простым вопросом: чем сервер отличается от обычного персонального компьютера? Ответ будет тоже прост: с обывательской стороны – ничем. Неискувольно трудно объяснить нюансы различий между серверами и обычными ПК. Однако согласно философскому принципу перехода количества в качество количество нюансов в серверах настолько велико, что в совокупности они дают новое качество, которое позволяет выделить сервер в самостоятельную категорию – одну из самых важных на ИТ-рынке. Как устроен среднестатистический сервер?
Прежде всего хочется отметить, что сервер предназначен для «вычислительных» функций и функций хранения, то есть для быстрой обработки, передачи и хранения каких-либо данных, именно поэтому сервера б у купить будет выгодным решением. Для ускорения обработки данных необходим больший объем памяти; чтобы передача данных производилась быстрее и к тому же занимала меньше драгоценного процессорного времени (которого и так не хватает), требуются быстрые каналы передачи и интеллектуальные контроллеры, которые возьмут на себя всю заботу о процессе ввода-вывода.
И наконец, для хранения этих самых данных нужны большие объемы дисковой памяти, причем тоже по возможности быстрой. Понятно, что все самое быстрое в один сервер установить просто невозможно да и не нужно, поэтому надо уделить серьезное внимание сбалансированности конфигурации. И еще одно немаловажное требование, предъявляемое к серверу: надежность.
Мы уже упоминали, что одно из требований, предъявляемых к серверу, – надежность. Мало собрать сервер из работоспособных совместимых комплектующих. Скрытой, невидимой на первый взгляд формой надежности является управляемость, то есть способность оперативно и предсказуемо реагировать на неожиданные факторы, как-то: сбои в памяти, отказ или небольшая неисправность жестких дисков, авария в системе питания.
Подобных факторов можно перечислить много. Для их правильной обработки на «правильном» сервере существует отдельный контроллер – BMC (Baseboard Management Controller), который должен постоянно следить за датчиками и сообщать куда следует в случае каких-либо отклонений.
Отличительной особенностью BMC является его работоспособность при выключенном питании. Конечно, сам по себе BMC не так ценен, как в комплекте с управляющей программой, позволяющей в полной мере реализовать все его возможности. Система управления сервером – это целый подводный мир, и, к сожалению, его нельзя отобразить в рамках одной статьи.
Мы подошли к моменту, когда приверженцы персональных компьютеров наконец-то могут ехидно усмехнуться. В серверах нет и никогда не будет шины AGP. Да она там просто не нужна, поскольку от сервера не требуется большой графической мощности, равно как и поддержки последних навороченных игр. Не для того он создан.
На этом остановимся в перечислении нюансов околосерверных технологий. Детальное их рассмотрение интересно только узкому кругу специалистов.