Что означает термин изолированный сервер
Изолированный сервер Machine Learning Server или R Server в SQL Server
Поддержка Machine Learning Server (прежнее название — R Server) будет прекращена 1 июля 2022 года. Дополнительные сведения см. в разделе Что будет с Machine Learning Server?
SQL Server поддерживает установку изолированного сервера R Server или Machine Learning Server, который работает независимо от SQL Server. В зависимости от версии SQL Server изолированный сервер основан на среде R с открытым кодом и, возможно, на среде Python, поверх которых работают высокопроизводительные библиотеки Майкрософт, добавляющие возможности статистической и прогнозной аналитики. Библиотеки также обеспечивают задачи машинного обучения, реализованные как скрипты на R или Python.
В SQL Server 2016 этот компонент называется R Server (изолированный) и поддерживает только язык R. В SQL Server 2017 он называется Сервер машинного обучения (изолированный) и поддерживает как R, так и Python.
Изолированный сервер, установленный программой установки SQL Server, функционально эквивалентен версиям Microsoft Machine Learning Server, не зависящим от языка SQL, и поддерживает те же сценарии использования, в том числе удаленное выполнение, ввод в эксплуатацию и веб-службы, а также полную коллекцию библиотек R и Python.
Components
SQL Server 2016 поддерживает только язык R. SQL Server 2017 поддерживает R и Python. В приведенной ниже таблице описаны функции каждой версии.
Компонент | Описание |
---|---|
Пакеты R | RevoScaleR — это основная библиотека для масштабируемого R с функциями для обработки, преобразования, визуализации и анализа данных. MicrosoftML добавляет алгоритмы машинного обучения для создания пользовательских моделей, предназначенных для анализа текста, анализа изображений и анализа тональности. sqlRUtils предоставляет вспомогательные функции для помещения скриптов R в хранимую процедуру T-SQL, регистрации хранимой процедуры в базе данных и ее запуска из среды разработки R. Пакет olapR предназначен для определения запросов MDX на языке R. |
Microsoft R Open (MRO) | MRO — это дистрибутив R с открытым кодом от корпорации Майкрософт. В него входят пакет и интерпретатор. Всегда используйте версию MRO, включенную в программу установки. |
Средства R | Окна консоли и командные строки R являются стандартными средствами в дистрибутиве R. Они находятся в папке \Program files\Microsoft SQL Server\140\R_SERVER\bin\x64. |
Примеры и скрипты R | Пакеты R и RevoScaleR с открытым кодом включают в себя встроенные наборы данных, позволяющие создавать и запускать скрипты с использованием предварительно установленных данных. Они находятся в папке \Program files\Microsoft SQL Server\140\R_SERVER\library\datasets and \library\RevoScaleR. |
Пакеты Python | revoscalepy — это основная библиотека для масштабируемого Python с функциями для обработки, преобразования, визуализации и анализа данных. microsoftml добавляет алгоритмы машинного обучения для создания пользовательских моделей, предназначенных для анализа текста, анализа изображений и анализа тональности. |
Средства Python | Встроенная программа командной строки Python полезна для автоматизированного тестирования и других задач. Она находятся в папке \Program files\Microsoft SQL Server\140\PYTHON_SERVER\python.exe. |
Anaconda | Anaconda — это дистрибутив Python с открытым кодом, включающий в себя ряд важных пакетов. |
Примеры и скрипты Python | Как и в случае с R, дистрибутив Python включает в себя встроенные наборы данных и скрипты. Данные revoscalepy находятся в папке \Program files\Microsoft SQL Server\140\PYTHON_SERVER\lib\site-packages\revoscalepy\data\sample-data. |
Предварительно обученные модели на R и Python | Предварительно обученные модели создаются для конкретных вариантов использования и поддерживаются командой специалистов Майкрософт по обработке и анализу данных. Их можно использовать «как есть» для оценки положительной или отрицательной тональности в тексте или для обнаружения признаков на изображениях с использованием предоставляемых вами новых входных данных. Предварительно обученные модели поддерживаются и могут использоваться на изолированном сервере, но их нельзя установить с помощью программы установки SQL Server. Дополнительные сведения см. в статье Установка предварительно обученных моделей машинного обучения в SQL Server. |
Использование изолированного сервера
Разработчики на R и Python обычно выбирают изолированный сервер, чтобы избежать ограничений памяти и процессорных ресурсов, налагаемых средами R и Python с открытым кодом. Библиотеки R и Python, которые выполняются на изолированном сервере, позволяют загружать и обрабатывать большие объемы данных на нескольких ядрах и объединять результаты в единый выходной объект. Высокопроизводительные функции обеспечивают как масштабирование, так и максимальную эффективность. Они предоставляют возможности прогнозной аналитики, статистического моделирования, визуализации данных, а также алгоритмы машинного обучения в рамках коммерческого серверного продукта, разработанного и поддерживаемого корпорацией Майкрософт.
В качестве независимого сервера, отделенного от SQL Server, среда R и Python настраивается, защищена и доступна с помощью базовой операционной системы и стандартных средств, предоставляемых на отдельном сервере, не являющимся SQL Server. Встроенная поддержка реляционных данных SQL Server отсутствует. Если нужно использовать данные SQL Server, можно создать объекты и подключения к источникам данных так же, как из любого клиента.
Как дополнение SQL Server, изолированный сервер также полезен в качестве эффективной среды разработки, если требуются как локальные, так и удаленные вычисления. Пакеты R и Python на изолированном сервере те же, что и при установке ядра СУБД, что обеспечивает переносимость кода и переключение контекста вычислений.
Начало работы
Начните с установки, добавьте двоичные файлы в свое любимое средство разработки и напишите свой первый скрипт.
Шаг 1. Установите программное обеспечение
Установите одну из следующих версий:
Шаг 2. Настройте среду разработки
На изолированном сервере часто работают локально с использованием среды разработки, установленной на том же компьютере.
Шаг 3. Написание первого скрипта
Напишите скрипт R или Python, используя функции из RevoScaleR и revoscalepy, а также алгоритмы машинного обучения.
Обзор R и RevoScaleR в 25 функциях. Начните с базовых команд R, а затем перейдите к распространяемым аналитическим функциям RevoScaleR, которые обеспечивают высокую производительность и масштабирование решений R. Она содержит параллелизуемые версии многих популярных пакетов моделирования для R, например кластеризацию методом К-средних, деревья и леса принятия решений, а также средства для работы с данными.
Краткое руководство. Пример двоичной классификации с использованием пакета Python microsoftml. Создайте модель двоичной классификации с помощью функций из пакета microsoftml и хорошо известного набора данных по раку груди.
Выберите оптимальный язык для задачи. R лучше всего подходит для статистических вычислений, проведение которых с помощью SQL может вызывать трудности. Для достижения максимальной производительности операций на основе наборов данных используйте возможности SQL Server. Для очень быстрых вычислений на основе столбцов используйте выполняющееся в памяти ядро СУБД.
Шаг 4. Ввод решения в эксплуатацию
Изолированные серверы могут использовать функцию ввода в эксплуатацию сервера Microsoft Machine Learning Server, не зависящего от языка SQL. Настройка изолированного сервера для ввода в эксплуатацию дает следующие преимущества: развертывание и размещение кода как веб-служб, проведение диагностики и проверка емкости веб-служб.
Шаг 5. Обслуживание сервера
Для SQL Server регулярно выпускаются накопительные пакеты обновления. Их применение повышает безопасность и расширяет функциональные возможности существующей установки.
Описание новых возможностей и изменений см. в статье Загружаемые файлы CAB, а также на веб-страницах накопительных пакетов обновления для SQL Server 2016 и SQL Server 2017.
Дополнительные сведения о применении обновлений к существующему экземпляру см. в разделе Применение обновлений инструкций по установке.
Что такое сервер и как он работает
Каждый сайт, который вы посещаете, каждое отправленное в интернете письмо, каждый персонаж в игровой вселенной любимой MMO – все эти цифровые сущности живут на серверах. Давайте разберемся, что представляют собой серверы и почему так важны для работы всего интернета.
Разбираем понятие «сервер»
Изначально сервером называли приложение или процесс, запущенный на компьютере. Термин появился в 1969 году в документации, описывающей ARPANET (это предшественник интернета). Он произошел от слова serving, то есть «служить», которое хорошо описывает деятельность сервера в общих чертах.
Со временем термин немного расширился и теперь описывает любое устройство, на котором запущены серверные приложения. То есть те, что обслуживают пользователей в той или иной стези.
Если говорить чуть более ясно, то это ПК, который беспрерывно работает и выступает в качестве площадки для разработки, базирования сетевых шлюзов, создания игровых платформ или хранения данных на постоянной основе.
Такие устройства делятся на категории по различным параметрам. В связи с этим обретают новые имена. Например, VDS, VPS, виртуальный хостинг. О том, что эти названия под собой подразумевают, поговорим позже. Говорю об этом, чтобы вы не смущались, если в дальнейшем буду называть сервер просто компьютером, VPS или «машиной».
Для чего нужны серверы?
Основное направление — поддержка интернет-ресурсов. Количество задач, возлагаемых на сервер велико. Вот несколько сценариев, в которых необходимы подобные устройства:
Почему их никогда не выключают?
Все описанные выше задачи подразумевают наличие аппаратной и программной платформы, которая постоянно находится в активном состоянии, обеспечивает высокую скорость и достаточную стабильность, чтобы сайты, приложения, почта и видеоигры неожиданно не отключались. Весь интернет держится на таких компьютерах.
Люди всегда хотят играть в любимые ММО, круглосуточно переписываются по электронной почте, работают и заходят на сайты. Это не физический магазин или компьютерный клуб. Нельзя просто взять и закрыть сайт на ночь и открыть к утру. Они должны быть доступны круглосуточно, а любое временное отключение считается критической ошибкой администрации ресурса, которая сильно бьет по репутации.
На серверы полагаются банковские службы, мессенджеры, такси, сервисы доставки еды, курьеры, государственные службы. Можно представить себе масштаб трагедии, если какой-то из удаленных компьютеров, поддерживающих инфраструктуру страны, вырубится.
Поэтому ими занимаются профессиональные компании, называемые хостинг-провайдерами. Они закупают мощное «железо», нанимают команду инженеров, обслуживающих все накупленное, и обеспечивают людей бесперебойным доступом к нужному им оборудованию.
Типы серверов
Есть несколько вариантов разделения серверов на группы. Мы рассмотрим две конкретные системы сортировки.
По назначению
По техническим характеристикам
Теперь разберемся, почему серверы имеют разные названия.
Физический выделенный сервер
Первичный вариант. Компьютер, который расположен в хостинге. Полноценный ПК. Мало чем отличающийся от того, что стоит у вас дома. Разве что он мощнее и никогда не выключается. Любой тип сервера в плане назначения может базироваться на таком PC.
Блейд-сервер
Примерно то же самое, только в ультракомпактном корпусе. Это попытка выдать каждому арендатору полноценное выделенное «железо», но при этом сократить издержки. Это делается за счет общего питания и некоторых других компонентов, которые можно делить между клиентами.
Виртуальный хостинг
Общее пространство на одном компьютере, которое регулируется единственным администратором и предлагает клиентам пользоваться ресурсами выбранной машины дешевле, но вместе с тем лишиться ряда функций и независимости.
VDS
Виртуальный выделенный сервер. Имитация реального «железа» с помощью гипервизора. Каждый арендатор получает практически полноценный ПК, несмотря на то, что чисто технически и физически это не так. Ограничений VDS практически не имеет. Можно ставить Windows Server и даже контролировать параметры BIOS.
VPS
То же самое, что и VDS. Только с иной технологией виртуализации. Более дешевой и ограниченной даже в плане программного обеспечения. Сюда нельзя установить Windows, только дистрибутивы Linux.
Как другие компьютеры подключаются к серверу?
VPS, VDS и любой другой сервер так же, как и обычные компьютеры, подключается к сети через кабельное соединение. Попав в интернет, он тут же становится доступен другим пользователям.
Подключение со стороны клиентов происходит разными путями в зависимости от того, что представляет собой сервер. Если на нем базируется веб-сайт, то в роли клиента выступает браузер, который через доменное имя подключается к VDS и получает от него нужную пользователю информацию. Доменное имя, естественно, моментально транслируется в стандартный IP-адрес. И адрес может оставаться прежним, даже если домен был в какой-то момент изменен.
В других случаях это работает похожим образом. Разве что аспекты работы программ, подключаемых к удаленным «машинам», могут слегка варьироваться.
Где находятся серверы?
Я уже упомянул выше хостинг-провайдеров. У них. Хостинг — это компания, которая фокусируется на обеспечении своих клиентов серверными мощностями. Обычно они арендуют крупное здание, в котором располагаются сотни и тысячи ПК с различными видами «железа» и виртуальными «машинами» на них.
Эти компьютеры надежно охраняются наемной охраной, датчиками движения, системами защиты от пожара и прочими решениями в зависимости от того, какие угрозы предвидит провайдер.
Программная защита тоже играет роль. Хостинг обязан сохранять конфиденциальность клиентов, оберегать их VDS от вирусов и атак извне. Регулярно делать резервные копии данных каждого арендатора, чтобы даже в случае форс-мажора можно было бы восстановить максимум полезной информации и файлов.
Также значимую роль играет геолокация. От расположения дата-центра зависит скорость работы проектов, базированных на удаленном ПК. Игровой сервер, расположенный в Варшаве, будет быстрее и стабильнее для жителей Европы, чем аналогичный в условном Мурманске. Ну и подчиняются такие серверы законам разных стран.
Можно ли использовать любой компьютер в качестве сервера?
Да. Хоть ноутбук в сервер превращайте. Всего-то надо установить подходящее программное обеспечение. Поставил FTP-клиент, вот тебе и хранилище файлов. Поставил ПО для старта игровых платформ, вот тебе очередная площадка для игры в World of Warcraft. С хостингом веб-сайтов ситуация аналогичная.
Правда, нужно учесть ряд моментов:
Отличия сервера от обычного компьютера
И тот, и другой работают на идентичной архитектуре процессора. Только в серверные «машины» устанавливается несколько гнезд под чипы. То есть на одной материнской плате «живут» 2, 3, 4, а то и более процессора. Также на них используется память с системой коррекции ошибок.
На них устанавливаются запасные компоненты с предохранителями. На тот случай, если один из сетевых кабелей выйдет из строя, его работу на себя возьмет второй. С блоками питания схожая история. Лишившись питания от него, ПК получит нужную энергию от запасного. Предусмотреть подобное в домашних условиях на обычном компьютере тяжело.
Визуально серверы тоже отличаются. В дата-центрах их монтируют в компактные блоки. Дизайн же домашних системных блоков не предусматривает портов, систем быстрой замены компонентов и других особенностей удаленных «машин».
Программное обеспечение тоже отличается. Нужна платформа, лицензированная для работы в качестве виртуальной машины. Ну и зачастую на них стоят дистрибутивы Linux без графической оболочки с минимальным необходимым набором приложений.
Как выбрать подходящий сервер?
Есть куча аспектов, на которые надо обращать внимание. Но я бы предложил положиться на хорошего хостинг-провайдера. Он знает свое дело. Предложит подходящее «железо», обеспечит необходимым программным обеспечением.
Можно зайти на главную страницу Timeweb и спокойно выбрать доступный вариант. Можно купить виртуальный хостинг, если грядет мелкий проект, не требующий особого контроля. Можно купить VDS, чтобы сэкономить на покупке выделенного сервера, но при этом получить доступ к расширенным функциям. Для тех, кто строит онлайн-магазин или собрался открывать игровой сервер, есть выделенные «машины». Причем все они учитывают современные реалии. Есть защита от DDoS-атак, ежедневное резервное копирование, круглосуточная техподдержка и физическая защита дата-центров от любой неприятности.
Так что в первую очередь обращайте внимание на репутацию хостинга. Затем рассматривайте его предложения и не беспокойтесь о других технических аспектах.
1.Опишите различия между рабочей группой и доменом.
2.Каково основное различие между ОС Windows XP и Windows Server 2003?
3.Возможно ли создать домен в сети, где все компьютеры сети работают под управлением ОС Windows XP?
4.Дайте определение контроллера домена.
5.Перечислите известные Вам встроенные учетные записи пользователей и групп пользователей домена и опишите их назначение.
Что означает термин «изолированный» сервер?
Опишите различия между рабочей группой и доменом.
Все компьютеры являются одноранговыми узлами сети; ни один компьютер не может контролировать другой. На каждом компьютере находится несколько учетных записей пользователя. Для использования любого компьютера, принадлежащего рабочей группе, необходимо иметь на этом компьютере свою учетную запись. В составе рабочей группы обычно насчитывается от десяти до двадцати компьютеров. Все компьютеры должны находиться в одной локальной сети или подсети.
Один или более компьютеров являются серверами. Администраторы сети используют серверы для контроля безопасности и разрешений для всех компьютеров домена. Это позволяет легко изменять настройки, так как изменения автоматически производятся для всех компьютеров. Если пользователь имеет учетную запись в домене, он может войти в систему на любом компьютере. Для этого не требуется иметь учетную запись на самом компьютере. В домене могут быть сотни или тысячи компьютеров. Компьютеры могут принадлежать к различным локальным сетям
2. Они различаются по
а) числу поддерживаемых процессоров;
б) объему поддерживаемой физической памяти;
в) возможному количеству одновременных сетевых соединений (например, в клиентской версии допускается максимум 10 одновременных соединений со службой доступа к общим файлам и принтерам) ;
а) При помощи учетной записи «Администратор» можно полностью контролировать домен, назначать права пользователей, а при необходимости и разрешения управления доступом для пользователей домена. Эта запись должна использоваться только для задач, выполнение которых требует учетных данных администратора
б) Учетная запись «Гость» используется теми, кто не имеет действительной учетной записи в домене.
Пример создания политики изоляции сервера
Относится к:
В этом примере разработки по-прежнему используется фиктивное предприятие Woodgrove Bank, как описано в разделе Пример разработки политики брандмауэра и в разделе Пример разработки политики изоляции домена.
В дополнение к средствам защиты, предоставляемым брандмауэром и изоляции домена, Woodgrove Bank хочет предоставить дополнительную защиту устройствам, работающим Microsoft SQL Server для программы WGBank. Они содержат персональные данные, включая финансовую историю каждого клиента. Правительственные и отраслевые правила и правила указывают, что доступ к этой информации должен быть ограничен только для тех пользователей, которые имеют законные деловые потребности. Это включает требование о предотвращении перехвата и доступа к информации при ее транзите по сети.
Сведения, представленные серверами WGBank на клиентских устройствах, и сведения, представленные серверами WGPartner на устройствах удаленных партнеров, не считаются конфиденциальными для целей правительственных правил, так как обрабатываются для удаления конфиденциальных элементов перед передачей данных на клиентские устройства.
В этом руководстве в примерах покажите изоляцию сервера, на слоях поверх дизайна изоляции домена. Если у вас есть изолированный домен, клиентские устройства уже оснащены GPOs, которые требуют проверки подлинности. Чтобы требовать проверки подлинности в входящие подключения, необходимо только добавить параметры на изолированный сервер и проверить членство в NAG. Попытка подключения будет успешной только в том случае, если будет подтверждено членство в NAG.
Изоляция сервера без изоляции домена
Изоляция сервера также может быть развернута сама по себе, только для устройств, которые должны участвовать. GPO на сервере не отличается от того, что обсуждалось в предыдущем абзаце для сервера в существующем изолированном домене. Разница в том, что необходимо также развернуть GPO с поддержкой правил безопасности подключения для клиентов, которые должны иметь возможность общаться с изолированным сервером. Так как эти устройства должны быть членами NAG, эта группа также может использоваться в фильтре группы безопасности на клиентской GPO. Это GPO должно содержать правила, которые поддерживают требования к проверке подлинности изолированного сервера.
Короче говоря, вместо применения клиентского GPO для всех клиентов в домене, вы применяет GPO только к членам NAG.
Если у вас нет домена Active Directory, вы можете вручную применять правила безопасности подключения, использовать сценарий командной строки netsh или использовать сценарий Windows PowerShell, чтобы автоматизировать конфигурацию правил на большом количестве устройств. Если у вас нет домена Active Directory, вы не можете использовать протокол Kerberos V5, но вместо этого должны предоставить клиентам и изолированным серверам сертификаты, которые ссылались в правилах безопасности подключения.
Требования к проектированию
Помимо защиты, предоставляемой правилами брандмауэра и изолированностью доменов, описанными в предыдущих примерах разработки, сетевые администраторы хотят реализовать изолированность серверов, чтобы защитить конфиденциальные данные, хранимые на устройствах, SQL Server.
На следующем рисунке показаны потребности в защите трафика для этого примера разработки.
Доступ к SQL Server устройствам должен быть ограничен только для тех компьютеров или учетных записей пользователей, которые имеют бизнес-требования для доступа к данным. Это включает учетные записи служб, используемые на сервере WGBank, и администраторы SQL Server устройств. Кроме того, доступ предоставляется только при его отправлении с авторизованном компьютере. Авторизация определяется членством в группе сетевого доступа (NAG).
Весь сетевой трафик на SQL Server устройства должен быть зашифрован.
Клиентские устройства или пользователи, чьи учетные записи не являются членами NAG, не могут получить доступ к изолированным серверам.
Другие заметки о трафике:
Все требования к проектированию, показанные в разделе Пример разработки политики брандмауэра, по-прежнему исполняются.
Все требования к проектированию, показанные в разделе Пример разработки политики изоляции домена, по-прежнему исполняются.
Сведения о проектировании
Woodgrove Bank использует группы Active Directory и GPOs для развертывания параметров и правил изоляции серверов на устройствах в сети.
Как и в описанных выше примерах разработки политики, GPOs для реализации среды изоляции домена связаны с контейнером домена в Active Directory, а затем фильтры WMI и фильтры групп безопасности присоединены к ГПО, чтобы убедиться, что на каждом компьютере применяется правильное GPO. Следующие группы были созданы с помощью оснастки Active Directory Users and Computers, и все устройства, Windows, были добавлены в правильные группы.
Примечание: Вы можете создать свои GPOs в вложенных группах. Например, можно сделать группу границ членом изолированной доменной группы, чтобы она получала брандмауэр и основные изолированные параметры домена через это вложенное членство, только с изменениями, предоставленными GPO пограничной зоны. Однако устройства с более старыми версиями Windows могут поддерживать только одну политику IPsec, активную одновременно. Политики для каждого GPO должны быть полными (и в значительной степени избыточными друг с другом), так как вы не можете слоя их, как вы можете в новых версиях Windows. Для простоты в этом руководстве описываются методы, используемые для создания независимых, неуровневых политик. Рекомендуется создавать и периодически запускать сценарий, который сравнивает членство групп, которые должны быть взаимоисключающими, и сообщать о любых устройствах, неправильно назначенных более чем одной группе.
Группы сетевого доступа (NAGs) не используются для определения того, какие GPOs применяются к компьютеру. Вместо этого эти группы определяют, какие пользователи и устройства могут получить доступ к службам на изолированном сервере.
CG_NAG_SQL_COMPUTERS. Эта группа доступа к сети содержит учетные записи компьютеров, которые могут получать доступ к устройствам, работающим SQL Server размещения данных WGBank. В эту группу входят серверы переднего входа WGBank и некоторые клиентские устройства, с которых администраторам SQL Server разрешено работать на серверах.
CG_NAG_SQL_USERS. Эта группа доступа к сети содержит учетные записи пользователей, которым разрешен доступ SQL Server устройств, на которых размещены данные WGBank. Члены этой группы включают учетную запись службы, которую интерфейсная программа WGBank использует для запуска на своих устройствах, и учетные записи пользователей для членов SQL Server администрирования.
Примечание: Можно использовать одну группу для учетных записей пользователей и компьютеров. Woodgrove Bank решил сохранить их отдельно для ясности.
Если Woodgrove Bank хочет реализовать изолированность серверов без изоляции домена, группа CG_NAG_SQL_COMPUTERS также может быть присоединена в качестве фильтра группы безопасности на ГПО, которые применяют правила безопасности подключения к устройствам клиента. При этом все устройства, уполномоченные на доступ к изолированном серверу, также имеют необходимые правила безопасности подключения.
Не нужно включать правила, способные к шифрованию, на всех устройствах. Вместо этого можно создавать GPOs, которые применяются только к членам NAG, в дополнение к стандартной GPO изоляции домена, которые содержат правила безопасности подключения для поддержки шифрования.