Я занимаюсь настройкой новых серверов для организации. Каковы стандарты или передовые практики для создания новой среды с помощью разработки, тестирования, промежуточной обработки и производства (или я открыт для других уровней, с которыми я не знаком)? Кроме того, я слышал об организациях, разделяющих серверы на SQL, приложения, веб-серверы и т. Д. Где я могу найти хорошие примеры возможных решений для настройки сервера?
Является ли хорошей практикой виртуализация этих сред между несколькими физическими блоками?
Я поискал в Интернете некоторые идеи о том, как устроена среда в других организациях, но не нашел ничего особенно полезного. Я приветствую любые ссылки, на которые вы можете указать мне, которые обсуждают создание полного корпоративного решения для небольшой и средней компании.
Я только что нашел эту ссылку: http://dltj.org/article/software-development-practice/ Я хотел бы найти больше подобных статей, если кто-нибудь знает какие-нибудь хорошие, на которые они могут мне указать.
Прежде чем проголосовать против моего вопроса, оставьте комментарии, чтобы я мог объяснить больше. Я могу просто не знать достаточно, чтобы задавать правильные вопросы.
Это довольно сложный вопрос. Мой общий совет - сосредоточить свое внимание на управлении сложностью и позволить системе расти органически.
Виртуализация:
Вы действительно хотите избежать разрастания серверов, а в наши дни все виртуализировано. Выберите платформу, которая позволит вам быстро добавлять виртуальные серверы, а также эффективно управлять ими. Одна из тенденций, которую я заметил, - это наличие двух (например) кластеров AIX или VMWare, один для prod, один для non-prod. Непродуктивная среда используется для всех сред разработки, тестирования и тестирования. Эти среды идеально подходят для веб-серверов или серверов приложений, но я бы старался избегать размещения больших, растущих производственных баз данных в качестве виртуальной машины (по крайней мере, в Windows).
Базы данных
Они могут легко выйти из-под контроля, когда им нужно разделить ресурсы с другими серверами. Всегда имейте базы данных, работающие в выделенной ОС, никогда не передавайте их приложению или веб-серверу, если для этого нет действительно веской причины. Вопрос только в том, используете ли вы виртуальную машину или оборудование.
Вам нужна масштабируемая инфраструктура, которая не будет ограничивать вас, если вам когда-нибудь понадобится, например, перейти к кластерному решению. Многие базы данных подойдут для виртуальной машины, но для тех немногих, которым в конечном итоге потребуется больше мощности, чем это удобно в среде виртуальной машины, вы обнаружите, что захотите установить их. сырое оборудование вместо.
Если вы не говорите об окнах, некоторые из этих рекомендаций не будут иметь отношения. Например, общепринятой практикой является размещение больших растущих баз данных в качестве разделов LPAR в гипервизоре AIX.
Место хранения
Настоящая виртуализация (с мобильностью виртуальных машин и кластеризацией хостов) невозможна без общего хранилища. Серверы Prod, Dev, Testing и QA выглядят одинаково для вашего хранилища, однако вы можете потратить некоторое время на то, чтобы найти способ расставить приоритеты для вашего продукта. Это очень плохая идея, например, иметь облагаемую налогом базу данных prod, разделяющую диски (наборы рейдов, пулы, что угодно) с сервером разработки. Иногда Dev может ударить по дискам так же сильно, как и prod, и последнее, что вам нужно, - это выяснить, не замедляет ли производство какой-то тест.
Попросите кого-нибудь, кто знает ваше хранилище, сесть и проанализировать все потенциальные узкие места (порты, кеш, контроллеры, диск и т. Д.) И приложить все усилия, чтобы предотвратить конкуренцию по как можно большему количеству из них между prod и non-prod.
Тем не менее, иногда разработчикам приложений необходимо запускать тесты, чтобы помочь количественно оценить эффекты нового патча или чего-то еще. В этой ситуации вам может потребоваться предложить им аналогичные (или, по крайней мере, количественно разные) объемы накопительной мощности.
Зачем вам эта среда? Поставщик программного обеспечения или ваша организация занимается собственной разработкой?
Не знаю, поможет ли это, но и HP, и Dell бросятся на все, чтобы прийти и оценить ваш текущий центр обработки данных и дать вам рекомендацию обновить или создать с нуля. Читатели форума могут дать хорошие подробные ответы, но, не видя, «что у вас есть и где вы находитесь, чего вы хотите и где вам нужно быть», будет трудно дать вам твердый ответ. Сделайте себе одолжение и остановитесь на одном производителе оборудования по административным причинам.
У нас есть центр обработки данных, ориентированный на это (у нас есть оборудование для этого)
Среда VMWare C7000 Hp для блейд-серверов с серверной частью EMC SAN, 8-гигабайтное оптоволоконное соединение.
Это позволяет нам ограничить расходы на нерестилищ, потребление электроэнергии и кондиционирование воздуха. Он будет использоваться для тестовых машин, серверов проверки концепции, производственных серверов, которым не требуется оборудование, уникальное для приложения (USB-ключи, платы факсов и т. Д.)
Физическая среда блейд-серверов Корпус C7000 Hp для блейд-серверов с 16-блейд-адаптерами HBA, подключенными к бэкэнду EMC SAN через 8-гигабайтное волокно.
Это будет для машин, которым требуется большое количество ОЗУ и ЦП, но нет уникальных аппаратных дополнений. Виртуальные машины хороши, за исключением случаев, когда им требуется огромное количество ЦП или ОЗУ. VMWare позволяет vmotion перемещать vmserver на хост-машину, чтобы сбалансировать использование оборудования. Ресурсы виртуальной машины рентабельны только при максимальном использовании. Это означает, что больше машин меньшего размера вместо нескольких больших. Это также зависит от системы, с которой вы пытаетесь встать.
Физический сервер (от 1U до 5U)
HP DL360 - серверы DL 5xx. Специальное оборудование, такое как 4x 8-ядерный CPUS и оперативная память 256 Gigs, последовательные карты для телекоммуникационных интерфейсов или платы факсов высокого класса, подключенные к нескольким телефонным линиям. В эту группу будут включены серверы, для которых поставщик требует большого локального хранилища.
Это пример, но не полный ответ. Серьезно, поговорите с поставщиком оборудования и позвольте ему дать вам представление о том, где вы находитесь и как сделать его лучше / эффективнее.
Каковы стандартные или лучшие практики для создания новой среды с помощью разработки, тестирования, подготовки и производства.
Это зависит, помимо прочего, от бюджета. Не уверен, есть ли стандартные, но вы хотели бы, чтобы ОС и другое программное обеспечение были одинаковыми на всех устройствах. Используйте инструменты автоматизации, такие как Puppet, для автоматизации и стандартизации ваших сборок.
Является ли хорошей практикой визуализация этой среды среди нескольких физических ящиков?
Виртуализация? Да. Отличная практика. Но необходимо проверить ваши конфигурации, если они подходят для работы в качестве виртуальных машин.
Я слышал об организациях, разбивающих серверы на SQL, приложения, веб-серверы и т. Д. Где найти хорошие примеры возможных решений по настройке сервера?
Возможно, другие могут вмешаться, но имхо, вы хотели бы установить разные компоненты на разные серверы по нескольким причинам, среди которых есть обновления ОС и приложений, а также их доступность.