Планирование изолированных решений (SharePoint Foundation 2010)

 

Применимо к: SharePoint Foundation 2010

Последнее изменение раздела: 2016-11-30

Изолированные решения Microsoft SharePoint Foundation 2010 ограничивают доступ к сетевым и локальным ресурсам для повышения уровня безопасности и стабильности. Их можно использовать для решений балансировки нагрузки, решений, которые не были полностью протестированы, и для развертывания пользовательских решений в размещенной среде. Изолированные решения работают в отдельном рабочем процессе и не имеют доступа к ресурсам, которые принадлежат другим решениям, а доступ к локальным и сетевым ресурсам ограничен.

При планировании изолированных решений прежде всего следует решить, необходимы ли такие решения вообще. Определите, что важнее — производительность или безопасность. Ферма с изолированными решениями создает больше рабочих и прокси-процессов, чем ферма без изолированных решений. Использование изолированных решений позволяет изолировать некоторые процессы и повысить безопасность фермы.

Дополнительные сведения об изолированных решениях см. в статьях Обзор изолированных решений (SharePoint Foundation 2010) и Изолированные решения (https://go.microsoft.com/fwlink/?linkid=220257&clcid=0x419, страница может быть на английском языке).

Содержание:

  • Определение целесообразности использования изолированных решений

  • Планирование балансировки нагрузки для кода изолированных решений

  • Определение места развертывания изолированных решений

  • Определение того, кто может развертывать изолированные решения

  • Определение семейств веб-сайтов, в которых будут использоваться изолированные решения

  • Планирование квот использования ресурсов для изолированных решений

  • Планирование уровней службы изолированных решений

  • Планирование управления изолированными решениями

Определение целесообразности изолированных решений

Использование изолированных решений оправдано в сценариях, когда требуется распределить нагрузку решений между несколькими серверами или необходимо обеспечить возможность выполнения не полностью протестированного кода или кода, не поддерживаемого организацией. Изолированные решения могут быть важным этапом пути масштабированного развертывания для разработчиков — от среды тестирования до изолированного решения в производственной среде. Когда изолированные решения докажут свою безопасность для полного развертывания, администратор фермы может им присвоить статус полного доверия.

Изолированные решения лучше всего подходят для следующих сценариев.

  • При необходимости распределения нагрузки решений между несколькими серверами SharePoint Foundation.

  • В организации, где требуется реализовать выполнение сотрудниками на рабочем сайте SharePoint Foundation кода, который не был полностью проверен.

  • В случаях, когда стороне, предоставляющей услуги размещения, требуется обеспечить владельцам размещенных сайтов SharePoint Foundation возможность передачи и выполнения пользовательского кода.

При использовании изолированных решений на каждом из серверов, где планируется разместить изолированные решения, необходимо запустить службу изолированных решений.

Планирование распределения нагрузки кода изолированных решений

Для изолированных решений можно выбрать одну из двух схем распределения нагрузки. На основании схемы балансировки нагрузки Microsoft SharePoint Foundation 2010 определяет сервер, на котором будет выполняться то или иное решение. При локальной балансировке нагрузки решение выполняется на том же сервере, который получает запрос. При удаленной балансировке нагрузки сервер для выполнения решения выбирается на основе соответствия решения, решение запускается на том сервере, где оно уже загружено или уже выполнялось. Это сокращает время обработки запроса. В обоих случаях на сервере с изолированными решениями должна быть запущена служба изолированных решений.

Выбор способа балансировки нагрузки определяет модель, используемую всей фермой SharePoint Foundation. Невозможно использовать локальную и удаленную балансировку одновременно. Необходимо выбрать какой-то один вариант. При выборе варианта балансировки учитываются следующие факторы.

  • Локальный режим требует выполнения меньшего объема работ по администрированию, но его масштабируемость ограничивается ресурсами локального сервера.

  • Удаленный режим более масштабируем, чем локальный, но требует большего администрирования.

В ферме SharePoint Foundation с несколькими серверами, на которых выполняются изолированные решения, обеспечивается более высокая производительность при использовании удаленного режима. Если изолированные решения используются как часть процесса разработки и необходимо ограничить их запуск сервером, на котором они вызываются, используйте локальный режим балансирования.

Дополнительные сведения см. в статье Обзор изолированных решений (SharePoint Foundation 2010).

Определение места развертывания изолированных решений

Изолированные решения развертываются в корне семейства веб-сайтов. Развернуть изолированное решение может любой пользователь, являющийся администратором семейства веб-сайтов. При развертывании в семействе веб-сайтов изолированное решение может использоваться везде в пределах данного семейства.

Можно принять решение запускать изолированные решения только на определенных серверах фермы SharePoint Foundation или на всех серверах. Для запуска на всех серверах необходимо включить службу изолированных решений. Эта служба должна быть включена на всех серверах, на которых необходимо разрешить запуск изолированных решений.

Определение того, кто может развертывать изолированные решения

При планировании ролей пользователей, участвующих в развертывании изолированных решений, необходимо определить, кто будет иметь право развертывать решения, а кто — администрировать их. Члены группы администраторов семейства веб-сайтов имеют право выполнять развертывание изолированных решений.

Для выполнения таких административных задач, как включение и выключение службы изолированных решений, блокировка и разблокировка решений и настройки и сброса квот, необходимо быть членом группы администраторов фермы.

Примечание

Для развертывания и активации изолированного решения недостаточно быть владельцем семейства сайтов. Необходимо быть администратором семейства сайтов, в котором выполняется развертывание изолированного решения.

Поскольку администраторы фермы могут менять статус изолированных решений на "полностью доверенный", позволяющий разворачивать их на любом сервере фермы, необходимо ограничить круг пользователей, которые принадлежат к группе администраторов фермы. Это также касается добавления пользователей в группу администраторов семейства сайтов, если есть вероятность угрозы безопасности со стороны развернутых изолированных решений.

Используя квоты, определите, в каком семействе веб-сайтов будут выполняться изолированные решения

Разрешить или запретить запуск изолированных решений в конкретных семействах веб-сайтов можно с помощью настройки квот. Если задать для семейства веб-сайтов квоту для изолированных решений со значением 0, изолированные решения в таком семействе запускаться не будут. Это позволяет точно настроить использование изолированных решений в пределах фермы.

Чтобы решить, где должны развертываться изолированные решения, следует определить следующее:

  • серверы, на которых будет выполняться служба изолированных решений;

  • семейства сайтов, в которых будут выполняться изолированные решения.

Разрешив запуск изолированных решений для одних семейств веб-сайтов, следует запретить их запуск для других семейств, установив квоты в значение 0.

Планирование квот использования ресурсов для изолированных решений

Отслеживание использования ресурсов изолированными решениями осуществляется на основании заданных по умолчанию квот для отдельных семейств. Если изолированное решение превышает общий объем ресурсов, то все изолированные решения отключаются на оставшуюся часть суток. Это позволяет администраторам выявлять случаи перерасхода изолированными решениями общих ресурсов и при необходимости увеличить квоты для семейства сайтов с высокой нагрузкой.

Точки ресурсов накапливаются для всего семейства веб-сайтов в процессе работы изолированных решений. При просмотре единиц измерения ресурсов в квоте отображается число ресурсов на точку. Это число указывает на то, сколько раз может использоваться определенный ресурс до того, как будет накоплена еще одна точка ресурса. Когда потребление ресурса достигает предела, указанного в свойстве ResourcePerPoint, семейство веб-сайтов накапливает точку ресурса. Если совокупное количество точек ресурсов превысит квоту, установленную для этого семейства веб-сайтов, все изолированные решения в таком семействе веб-сайтов отключаются до конца дня.

Пределы числа точек ресурсов, задаваемые по умолчанию, удовлетворяют большинству сценариев. Однако их значения можно корректировать индивидуально с учетом потребностей. Дополнительные сведения об индивидуальной настройке пределов числа точек ресурсов см. в статье Настройка точек ресурсов для изолированных решений (SharePoint Foundation 2010).

При планировании квот для изолированного решения следует продумать следующие вопросы.

  • Будет ли производиться корректировка числа ресурсов на точку для каких-либо категорий единиц измерения ресурсов?

    Можно задать ограничения ресурсов для всех изолированных решений. В некоторых случаях имеет смысл ограничить определенный ресурс, который более чувствителен к неправильному использованию или избыточному потреблению, например циклы ЦП на сервере с высокой нагрузкой на процессор. Путем настройки ограничений ресурсов можно наложить ограничения на изолированные решения, чрезмерно потребляющие ресурсы. Следует изучить список ресурсов, для наблюдения за которыми используются квоты изолированных решений, и определить, необходимо ли произвести настройку.

  • Будут ли изменяться абсолютные ограничения для каких-либо категорий ресурсов?

    Абсолютное ограничение — это верхний или нижний предел использования ресурса при выполнении запроса, при превышении которого запрос прерывается. Если уровень использования определенной категории ресурсов достигает абсолютного ограничения, работа изолированного решения останавливается. Следует проанализировать каждую категорию ресурсов, чтобы определить, следует ли скорректировать для нее абсолютные ограничения.

Список отдельных единиц измерения ресурсов, минимальное пороговое значение, абсолютный предел и объем ресурсов на одну точку для каждого ресурса см. в статье, посвященной ограничениям на потребление ресурсов изолированными решениями в SharePoint 2010 (https://go.microsoft.com/fwlink/?linkid=217149&clcid=0x419). Сведения о настройке абсолютного ограничения и объема ресурсов на одну точку для определенных единиц измерения ресурсов см. в статье Настройка точек ресурсов для изолированных решений (SharePoint Foundation 2010)..

Планирование уровней службы изолированных решений

В зависимости от среднего количества ресурсов, используемого изолированными решениями, их можно разделить на уровни в службе изолированных решений. Уровень в службе изолированных решений содержит один или несколько рабочих процессов, в которых выполняются изолированные решения. Каждое изолированное решение выполняется в собственном домене приложения, который используется повторно при запуске решения. По умолчанию все решения выполняются в службе изолированных решений на одном уровне. В службе изолированных решений можно настроить дополнительные уровни и рабочие процессы, чтобы разделить решения с целью повышения производительности, безопасности и надежности. Изолированные решения автоматически разделяются на дополнительные уровни в соответствии с использованием ресурсов. Дополнительные сведения об уровнях см. в статьях Обзор изолированных решений (SharePoint Foundation 2010) и Уровни изоляции (Возможно, на английском языке) (https://go.microsoft.com/fwlink/?linkid=217145&clcid=0x419).

Можно настроить необходимое число уровней, а также рабочих процессов, подключений и доменов приложений. Однако слишком большое число уровней негативно сказывается на производительности сервера SharePoint Foundation. При планировании настройки службы изолированных решений, следует продумать следующие вопросы.

  • Сколько уровней необходимо создать?

    Настройка нескольких уровней позволяет отделить "надежные" изолированные решения от "ненадежных", при работе которых часто происходят сбои или которые чрезмерно используют ресурсы. Благодаря выполнению изолированных решений на отдельных уровнях снижается негативное воздействие ненадежных приложений на надежные. Это позволяет сделать систему более стабильной и работоспособной. В общем случае для разделения изолированных решений требуется не более двух–трех уровней.

  • Сколько рабочих процессов необходимо настроить для каждого уровня?

    Максимальное число изолированных решений, выполняемых одновременно на определенном уровне, можно рассчитать с помощью следующей формулы.

    Число рабочих процессов на уровне x максимальное число подключений на процесс = максимальное число одновременно выполняемых изолированных решений на одном уровне

    Увеличение числа рабочих процессов на уровень позволяет одновременно выполнять больше изолированных решений в ферме. Добавление рабочих процессов может повысить пропускную способность сервера, но только до определенного момента. Поскольку нагрузка, связанная с дополнительными рабочими процессами, может снизить общую пропускную способность сервера, для всех уровней на отдельном сервере следует настраивать не более 20 рабочих процессов.

  • Сколько подключений на один рабочий процесс необходимо настроить?

    Максимальное число подключений на один процесс не должно превышать число доменов приложений на процесс. Если в рамках одного процесса одновременно выполняются два изолированных решения, то при сбое одного из них произойдет сбой и другого. Чем больше максимальное число подключений на процесс, тем больше число изолированных решений, которые могут одновременно выполняться в рамках одного процесса. Это повышает вероятность того, что сбой изолированного решения негативно скажется на других выполняемых запросах. Как правило, для уровней с большим значением свойства ResourceMaxValue, на которых изолированные решения обычно менее надежны, лучше использовать меньшее число подключений на процесс. Более надежные изолированные решения выполняются на уровнях с более низким значением свойства ResourceMaxValue. В общем случае следует увеличить число подключений на один процесс, чтобы повысить пропускную способность и снизить таким образом негативное воздействие сбоев изолированных решений, выполняемых в рамках того же процесса.

  • Сколько доменов приложений на один процесс необходимо задать?

    В каждом домене приложения одновременно может выполняться только одно изолированное решение. Таким образом, число доменов приложений соответствует числу изолированных решений, которые могут быть загружены одновременно. Это число должно быть по крайней мере не меньше числа подключений на один процесс.

Сведения о настройке уровней см. в статье Настройка уровней службы изолированных решений (SharePoint Foundation 2010).

Планирование управления изолированными решениями

Если планируется использование изолированных решений, необходимо продумать процессы управления ими, включая следующие.

  • В какой момент администратор фермы должен заблокировать или разблокировать изолированное решение? Определение политики администрирования в отношении блокировки и разблокировки изолированных решений исключит все сомнения.

  • В какой момент изолированное решение передается в глобальный каталог как решение с полным доверием? Этот вопрос касается кода решения, созданного разработчиками вашей организации. Необходимо установить политику определения уровня тестирования, необходимого для признания изолированного решения готовым к производственному использованию в организации.

  • При планировании пользователей, имеющих право выполнять развертывание изолированных решений, необходимо определиться, можно ли будет добавлять всех пользователей в группу администраторов семейства веб-сайтов или права на развертывание решений будут принадлежать только узкому кругу администраторов семейства веб-сайтов, которые будут выполнять эти действия от имени пользователей. В зависимости от требований безопасности, действующих в организации, можно разрешить добавление пользователей в группу администраторов семейства веб-сайтов и не требовать от них запрашивать разрешение на развертывание изолированных решений.

See Also

Concepts

Обзор изолированных решений (SharePoint Foundation 2010)

Other Resources

Sandboxed solutions administration (SharePoint Foundation 2010)
Центр ресурсов изолированных решений
Архитектура изолированных решений (https://go.microsoft.com/fwlink/?linkid=177368&clcid=0x419) (Возможно, на английском языке)
Изолированные решения в SharePoint 2010
Установка, удаление и обновление изолированных решений в SharePoint 2010