martes, 25 de octubre de 2016

Instalando SharePoint Server Enterprise 2016 En Premisas Parte III

En esta tercera parte vamos a instalar el servidor Front-End con la opción MinRole que es nueva opción que Microsoft entrega en este versión de SharePoint 2016 para garantizar la optimización en cuanto a los servicios que deben de correrse en el servidor para dicho rol.



Siempre que instalamos SharePoint necesitamos antes instalar los prerequisitos esto lo podemos hacer en línea o fuera de línea si los servidores por temas de políticas de seguridad no tienen acceso a Internet entonces tendrás que hacerlo fuera de línea.

Asegurese de conectarse al servidor donde va hacer la instalación del front-end que sea la misma cuenta conque instaló el primer servidor normalmente se nombra esta cuenta spadmin, spinstall o spsetup.   Esta cuenta debe de tener permisos de administrador local en el servidor donde vamos a realizar la instalación.  Favor no utilice la cuenta Domain Admin no es aconsejable por temas de seguridad.  Cree cuentas para cada servicio de SharePoint y para realizar esta instalación.

Para más información vea el siguiente enlace:


Ejecutamos la página splash.html  nos despliega la siguiente pantalla:


Luego seleccionamos la opción Install software prerequisites


Nos pedirá que reiniciemos una vez por lo menos y luego finalizará


Luego de finalizar exitosamente nos mostrará una pantalla para iniciar el asistente.  Para continuar presionamos el botón Close.


Página de bienvenida, presionamos el botón Next


Luego nos pregunta si vamos a crear una nueva granja o conectarnos a una existente.  Como ya hemos creado una en la parte II de esta serie vamos a indicar que deseamos conectarnos a un servidor de granja existente (Connect to an existing server farm). Para continuar presionamos el botón Next.


Ahora especificamos el nombre del servidor de SQL Server y la base de datos de configuración de la granja que habitualmente se llama SharePont_Config.  Podemos presionar el botón Retreive Database  Names y nos traerá las base de datos.  Si no nos da ninguna información deberemos de verificar el nombre del servidor y su instancia de base de datos, tambien la cuenta que estamos conectados al servidor debería ser la cuenta spadmin o la cuenta con que instalamos el primer servidor. Para continuar presionamos el botón Next.


Luego nos pedirá que ingresemos la frase de la granja que escribimos cuando instalamos el primer servidor de Aplicación en la Parte II. Para continuar presionamos el botón Next.


Ahora vamos a especificar el MinRole que para este servidor será Front-end.  Para continuar presionamos el botón Next.


Ahora nos muestra la pantalla de completación del asistente, para una ultima revisión.Para continuar presionamos el botón Finish.


Iniciará el proceso  de instalación


Si todo salió bien mostrará la pantalla de Configuración exitosa.  A veces nos da error y muy probablemente es porque la cuenta que utilizamos no tiene suficientes permisos en el servidor de base de datos o bien no hay abierto un puerto que utiliza para configurar SharePoint  se revisa el error del log y se actua conforme a la información que nos muestra.


Presionamos el botón de Finish. Y  ya hemos instalado el segundo servidor de la granja con el MinRole de Front-End.

Si vemos en el Central Administration podemos ver la diferencia de los servicios que se activan en el Font.-End Comparado con el de aplicación.

MinRole: Front-End a continuación:

Custom Role para servidor de Aplicación:


Listo!.   

En el próximo artículo relacionado veremos  como instalar el Office Online Server .

SharePoint4Fun!,


Juan Manuel Herrera Ocheita

viernes, 14 de octubre de 2016

Error al ingresar a la navegación luego de habilitar las características de publicación de SharePoint 2013



Pueda que te enfrentes a este error al momento de intentar modificar la navegación que se habilita cuando se activan las features de publicación de SharePoint Server 2013 y te muestra el siguiente error:

EL ERROR

  Error: String was not recognized as a valid DateTime.


 Debug:    at System.DateTimeParse.Parse(String s, DateTimeFormatInfo dtfi, DateTimeStyles styles)
 Microsoft.SharePoint.Publishing.PublishingPage.GetEffectivePageCacheProfileId(Boolean anonUserProfile)     at Microsoft.SharePoint.Publishing.CachedPage..ctor(PublishingPage page, SPListItem altItem, String id, String parentId, CachedUserResource title, String url, CachedUserResource description, CachedObjectFactory factory, List`1& fieldInfo)    at Microsoft.SharePoint.Publishing.CachedPage.CreateCachedPage(PublishingPage page, SPListItem altItem, CachedObjectFactory factory, List`1& fieldInfo)     at Microsoft.SharePoint.Publishing.CachedListItem.CreateCachedListItem(SPListItem item, SPListItem alternateItem, Boolean parentIsWeb, CachedObjectFactory factory, List`1& fieldInfo)     at Microsoft.SharePoint.Publishing.CachedObjectFactory.CreateWrappedObject(SPListItem superUserVersion, SPListItem superReaderVersion, List`1& fieldInfo)     at Microsoft.SharePoint.Publishing.CachedArea.GetChildForListByQuery(String listName, SPQuery query, SPWeb contextWeb, Boolean onlyPopulateCache, Boolean skipIfThrottled, List`1& itemsFetched)     at 


LA SOLUCIÓN

Si este es el error o similiar el problema se resuelve de forma sencilla, tienes un problema con la región.  Revisa que este colocada la región de tu país o del servidor de windows, con ello el problema se resuelve.

Las instrucciones son las siguientes:

Site Settings
Site Administration
REgional Settings
Locale: Tu País, para mi caso fue Spanish(Guatemala)

Presiona el botón Aceptar


SharePoint4Fun!,

Juan Manuel Herrera Ocheita

domingo, 9 de octubre de 2016

Script poderoso para crear colecciones de sitios y activar features en SharePoint 2016

Creación colecciones de sitios en SharePoint es una buena forma de distribuir el contenido, en especial si por cada colección de sitios creamos una base de datos de contenido por separado. De esta forma la copia de respaldo y la recuperación de las bases de datos de contenido pueden aislarse y administrar por separado.   

Aunque este script se ejecutó para SharePoint 2016, muy probablemente funciona para SP2013 y con algunos ajustes en 2010.

El problema
Tenemos 25 colecciones de sitios y debemos crearlas con sus bases de datos de contenido por separado ademas debemos de aplicar un master page personalizada y estilos.  

La solución
Hacer este problema vía Central Administration, demoraría mucho tiempo, por lo que se realizará un script en PowerShell para hacer las siguientes acciones:


  1. Crear una base de contenido con el nombre corto de la colección de sitios
  2. Crear una colección de sitios en esta nueva base de datos de contenido
  3. Habilitar la característica de publicación  a nivel de la colección de sitio
  4. Habilitar la característica de publicación a nivel de sitio primario
  5. Habilitar la característica de la solución personalizada  a nivel de colección de sitios

Utilizaremos dos archivos:


  1. Archivo CSV que tiene la información de la colección de sitio a crear
  2. Archivo PS1 que tiene los comandos de PowerShell para SharePoint para crearlas


El Formato del archivo CSV

Será el siguiente:

titulo, url, Sufijo

Título: Donde título es el título de la colección de sitios.

Url: Es la dirección url absoluta de la colección de sitios

Sufijo: El sufijo para la base de datos de contenido WSS_Content_[Sufijo]

Por ejemplo el archivo csv se vería así.

<# INICIO ARCHIVO NUEVASCOLECCIONES.CSV #>

titulo,url,Sufijo
RecursosHumanos,http://miportal/sitios/RRHH,RRHH
IT,http://miportal/sitios/IT,IT

<# FIN DE ARCHIVO NUEVASCOLECCIONES,CSV #>



El Script

El Script para crear las colecciones de sitios es el siguiente:

<# Script CreacionColecciones.ps1 inicia aquí  #>

#Importacion del contenido del archivo csv
$Colecciones = Import-Csv E:\Infoware\Scripts\ColeccionesNuevas.csv

#url de la WebApplication
$url = "http://miportal"

#recorre cada fila del contenido del archivo CSV
foreach($row in $Colecciones){
    
    Write-Host $row.Url $row.titulo $row.Sufijo
    
    #Construiyendo el nombre de la base de datos de contenido
    $Contentdb = "WSS_Content_"+$row.Sufijo
    
    #Creación de la base de datos de contenido para la nueva colección de sitios por crear
    New-SPContentDatabase -Name $Contentdb -WebApplication $url

    #Creación de la nueva colección de sitios con plantilla de Equipo en la nueva base de datos de contenido
    New-SPSite $row.Url -OwnerAlias "DOMINIO\spadmin" -Template "STS#0" -ContentDatabase $Contentdb -Name $row.titulo

    #Habilitación del característica de publicación a nivel de colección de sitios
    Enable-SPFeature "PublishingSite" -url $row.url

    #Habilitación de la caracteristica de publicación a nivel de sitio web primario y subsitios
    Get-SPWeb -Site $row.url -Limit all | % {Enable-SPFeature "PublishingWeb" -url $_.url}

    #Habilitación de la característica personalizada para aplicar una master page y estilos personalizados
    Enable-SPFeature -identity a830970f-9ef1-4712-8b45-f41a746d7fda -URL $row.url
}

<# FIN DEL ARCHIVO CREARCOLECCIONES.PS1 #>

Eso es  todo amigos, los dejo con las referencias bibliográficas del sitio de Technet por si les interesa conocer mas de los comandos ejecutados en este script.

New-SPContentDatabase "MyDatabase" -DatabaseServer "MyServer" -WebApplication http://sitename

New-SPSite http://www.contoso.com -OwnerAlias "DOMAIN\jdow" -HostHeaderWebApplication $w -Name "Contoso" -Template "STS#0"

Get-SPWeb -Site "http://rootWebUrl" -Limit all | % {Enable-SPFeature "PublishingWeb" -url $_.url}

Enable-SPFeature -identity "MyCustom" -URL http://somesite



SharePoint4Fun!,

Juan Manuel Herrera Ocheita

miércoles, 28 de septiembre de 2016

Instalando SharePoint Server Enterprise 2016 En Premisas Parte II

Ahora vamos a instalar el servidor de Aplicación de SharePoint Serve 2016 donde vamos a hospedar el Central Administration.



Según la arquitectura que vamos a configurar la granja el rol de este servidor será para ejecutar el resto de servicios que no se ejecutarán en un servidor de Front-End tradicional el cual incluye el servicio de Search, Perfiles de Usuario, Metadata Services, etc.  Por lo que seleccionaremos Custom Role para este servidor multifuncional. 

Si tuvieramos mas servidores disponibles este podría aplicarse para un App Server Minrole pero como solo son 4 servidores incluyendo base de datos y Office Online Server este será un Custom Role que es el rol que conocemos en las versiones anteriores de SharePoint (2013 y 2010).

Ahora vamos a instalar SharePoint 2016 


La página splash nos muestra una ventana azul y seleccionamos la opción Install software prerequisites.

Hay dos formas de instalar los prerequistos una requiere acceso a internet en el servidor donde se esta instalando el SharePoint y la otra es manual y puede ser descargado antes y luego instalado localmente, cuando son muchos servidores es conveniente la segunda opción.  

https://gallery.technet.microsoft.com/office/SharePoint-2016-Prerequisit-17912ad2 

* También es una buena práctica tener una copia local de los prerequisitos en caso de necesitar reinstalar o recuperar la granja de SharePoint en caso de desastres.


Bueno luego de finalizar la instalación parcial o total de los prerequisitos solicitará el reinicio del servidor luego continuará y al finalizar levantará la ventana para ejecutar el asistente de configuración de SharePoint.



Luego de visualizar la página de bienvenida y de aceptar la advertencia que los servicios de IIS y otros van hacer reiniciados, nos preguntará si deseamos conectarnos a una granja existente o crear una nueva.  Como es el primer servidor de SharePoint ha instalar deberemos seleccionar Crear una nueva granja.


Luego presionamos el botón Next y nos solicitará ingresemos el nombre o alias del servidor de SQL Server y el nombre de la base de datos que típicamente se denomina SharePoint_Config y luego la cuenta de servicio administradora de la granja (cuenta de dominio) normalmente denominada SPFarm.


Presionamos el botón Next.  Luego nos solicitará que ingresemos la frase de la granja para cuando adicionemos nuevos roles a la granja de SharePoint (por efectos prácticos la contraseña de la granja puede ser utilizada aquí también para que sea fácil el recordar la contraseña).




Luego presionamos el botón Next.  Esta pantalla es nueva y se adicionó hasta en esta versión 2016 la cual se puede definir un Minrole o Custom Role.  Si nos equivocamos o cambiamos de opinión sobre el Rol seleccionado después podemos cambiarlo a través del Central Administration.


Para mas información sobre este tema puedes visitar el siguiente enlace:

http://jmhogua.blogspot.com/2016/09/nueva-caracteristica-en-sharepoint-2016.html 


Luego presionamos el botón Next.  Luego nos pedirá que indiquemos el puerto del Central Administration.  Una buena práctica es especificar 5 veces 5 para recordar el puerto del CA. y luego nos pregunta que autenticación vamos a utilizar NTLM (Predeterminada de Windows) o Kerberos (Esta requiere configuración previa y es más utilizada cuando deseamos impersonar los usuarios hacia otros servicios dentro de la red Windows)

Si desea saber más puede leer el siguiente artículo: http://jmhogua.blogspot.com/2011/03/carrera-de-relevos-o-configuracion-de.html 



Luego nos muestra un resumen de las opciones seleccionadas en el Asistente de configuración.  



Luego presionamos el botón Next, para que inicie la configuración e instalación del Central Administration y de la granja de SharePoint con el primer nodo.


Felicitaciones si llegaste a este punto. Eureka! ya tienes un el servidor inicial para configurar toda la granja de SharePoint,  el cual definimos como Custom Role.

Bueno amigos eso es todo para este artículo donde estamos paso a paso instalando y configurando una granja de SharePoint Server 2016 con 4 servidores.

Hasta el próximo artículo. SharePoint Rules!

Juan Manuel Herrera Ocheita



Instalando SharePoint Server Enterprise 2016 En Premisas Parte I

SharePoint 2016 tiene como prerequisitos en temas de software de base de datos.   Las versiones permitidas para ejecutar SharePoint Server 2016 son:

  • La edición de 64 bits de Microsoft SQL Server 2014 Service Pack 1 (SP1)
  • Microsoft SQL Server 2016 RTM

Lo bueno es que ya se puede instalar con SQL server 2016.   Un tema importante de esta versión que no debe de sorprendernos es que el Management Studio ya no viene con la media de SQL Server 2016 sino que debe de ser descargado desde el sitio de Microsoft por aparte.

Requerimientos de Equipo o Hardware
La documentación oficial de MS puede encontrarla acá: https://technet.microsoft.com/en-us/library/cc262485(v=office.16).aspx y lo que indica es que el requerimiento mínimo para una granja de 3 capas que es la que vamos a configurar es:  12 GB RAM, 4 núcleos y 100 GB.  Pero sabemos que el requerimiento para SQL Server es mayor en RAM por lo menos.   Para nuestro ejercicio la configuración para el servidor de SQL Server es:

RAM 32 GB
PROCESSORS o cores 4
Disks: 1 HD 500 GB and 2 HD de 2 TB.



Las Características o Features requeridas por SharePoint Server 2016 Enterprise no han cambiado y son las siguientes:

Database Engine Services

     Full Text and Semantic Extraction for Search

Analysis Services
Reporting Services - SharePoint
Client Tools Connectivity

Named Instance
En esta versión ya es opción utilizar la Default o Nombrada y el nombre a vuestra elección en SQL Server 2012 la opción SharePoint Integrated obligaba a utilizar una instancia nombrada y era fijo el nombre PowerPivot.

Configuración de cuentas de servicios
Recomendado utilizar cuentas de dominio para el servicio de base de datos, Analysis Services y Reporting Services.  El objetivo de seguridad es asignarle a cada cuenta el privilegio menos posible.

Collection
Define comos serán almacenados, comparados y ordenados los caracteres, el predeterminado para nuestra región esta bien, es decir SQL_Latin1_General_CPI_CI_AS.

Mode Authentication
El modo de autenticación es a requerimiento del cliente, la mayoría selecciona Mixed Mode, pero por temas se seguridad se recomienda solo seleccionar Autenticación de Windows.

Directorio de Datos
Se recomienda utilizar otros drives para almacenar las bases de datos, seleccione según disponibilidad.

TempDB
Puede definir los valores iniciales de la base de datos TempDB.  Dejaremos los valores predeterminados, en este caso.




Server Mode
Este modo es para indicar el modo a utilizar para Analysis Services, para nuestro caso que vamos a instalar SharePoint Server Enterprise 2016 el modo debe de ser PowerPivot Mode, es no quiere decir que podamos crear otra instancia en el mismo servidor (aunque no recomendado) con otro Modo como Multidimensional o Tabular.  Solo tome en cuenta que esto demandará mas recursos del servidor (RAM, CPU y HD).

Data Directories
Especificar donde serán almacenados las bases de datos y archivos de registro y temporales del servicio de Analysis Services.  Recomendado utilizar otro drive separado al del sistema operativo.

Reporting Services Configuration
Install Only es la única opción disponible.

Ready to Install
Presione el botón Install


Ahora instalaremos SQL Server 2016 Management Studio que ahora es instalado por aparte desde un enlace público de descargas de Microsoft.




Bueno esto es solo el inicio, la base para la granja de  SharePoint ha instalar.

Referencias útiles:
http://go.microsoft.com/fwlink/?LinkId=717341 

SharePointRocks!

Juan Manuel Herrera Ocheita

sábado, 10 de septiembre de 2016

Nueva caracteristica en SharePoint 2016 MinRole

El equipo de SharePoint de Microsoft nos ha entregado una funcionalidad que pienso va hacer la diferencia en el rendimiento de SharePoint aunque hay que tomar en cuenta algunos otros aspectos como el licenciamiento ya que requeriremos para optimizar y aprovechar esta nueva  funcionalidad de SharePoint 2016 por lo menos 5 servidores.


MinRole es la respuesta de Microsoft para asegurar el mejor rendimiento posible según el Role que cada servidor pueda ejecutar.

Los Roles MinRole disponibles en SharePoint 2016 son:

1) Front End  - Servicios y Aplicaciones de servicios que se encargan de las solicitudes de los usuarios (optimizado para minimizar la latencia)
2) Application Server - Servicios y Aplicaciones de servicios que se encargas de las solicitudes hacia el back-end o trabajos de lado del servidor (optimizado para alto rendimiento)
3) Distriubute Cache - Servicios y Aplicaciones de servicios  relacionados al Distribute Cache
4) Search Server - Servicios y Aplicaciones de servicios  relacionados con el Search

Para cualquier otro Role o servicio y Aplicación de Servicio que no encaje en los MinRole se puede utilizar el Rol Custom o Legacy Role pero no estará garantizada su optimización como MinRole.

No me malinterprete esto no quiere decir que necesitemos como mínimo 5 o 6 Servidores ya que deberíamos incluir un servidor de base de datos Sql Server y un custom Role para el resto de servicios que no se ejecutan en los Roles incluidos en MinRole.  Sino que esta sería la configuración más optima garantizada por Microsoft 6 servidores para la granja.

Pero podemos iniciar con por lo menos:

2 servidores para ambientes de desarrollo y demostración:

1 Servidor Custom Role
1 Servidor de base de datos.

3 Servidores para ambientes de producción mínimo recomendado optimizando las solicitudes de los usuarios:

1 Min Role Front End
1 Custom Role para el resto de servicios
1 Servidor de base de datos

4 Servidores para optimizar las solicitudes del usuario y los trabajos del servidor:

1 Min Role Front End
1 Min Role Application Server
1 Custom Role para el resto de servicios
1 Servidor de base de datos

5 Servidores para mejorar el rendimiento de la granja

1 Min Role Front End
1 Min Role Application Server
1 Min Role para Distribute Cache
1 Custom Role para el resto de servicios
1 Servidor de base de datos

Las áreas done Distribute Cache mejora son:
  1. Claims-based authentication
  2. Newsfeeds, micro blogging and conversations
  3. OneNote client access
  4. Security trimming
  5. Page load performance
Y por último podriamos optimizar la búsqueda y toda la granja implementando cada Role de MinRole.

1 Min Role Front End
1 Min Role Application Server
1 Min Role para Distribute Cache
1 Min Role para Search
1 Custom Role para el resto de servicios
1 Servidor de base de datos

Algunas notas importantes que debes saber en SharePoint 2016 son las siguientes:

1) No hay edición Foundation o gratuita en SharePoint 2016
2) SharePoint 2016 no se puede instalar sobre SQL Server Expresss
3) No esta diseñado para instalarse en un solo servidor aunque sea para desarrollo


Al configurar el MinRole a nivel de servicios del servidor luce así, lo cual no permite configurar otros servicio garantizando que se respete la configuración optima para este Role.


En cualquier momento puede modificarse el Role de cada servidor a través de la opción Role Conversion


Referencia: https://technet.microsoft.com/en-us/library/mt667910(v=office.16).aspx

Bueno así que a planificar mejor las granjas de SharePoint 2016 y tomar en cuenta que si deseamos garantizar en optimo rendimiento de la granja tendrá que invertirse en mas servidores para aprovechar la opción MinRole que Microsoft nos entrega en esta nueva versión de SharePoint Server 2016.

Hasta la próxima SharePoint4Fun!,



Juan Manuel Herrera Ocheita