Mostrando las entradas con la etiqueta Deployment SharePoint. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Deployment SharePoint. Mostrar todas las entradas

martes, 31 de mayo de 2016

Exportando una biblioteca de 850 GB en SharePoint 2010

Para exportar una biblioteca de este tamaño se necesita espacio disponible mucho espacio disponible.  Alrededor de 2 TB, muy probablemente espacio de una SAN.

Lo interesante del tema es que es muy sencillo de hacerlo entre tanto se realicen los ajustes necesario para que todo funcione como un reloj suizo, es decir exacto y sincronizado.



Para esta mega tarea vamos a utilizar el comando de SharePoint Management Shell export-SPWeb. Pero antes de iniciar tenemos que realizar varias tareas de ajustes importantes para que sea un exíto el proceso.

Primero debemos de mapear el disco de red o Network Drive del File Share donde por lo menos tenemos que disponer de 2 TB por el tamaño de la biblioteca y si se preguntan cuantos elementos tiene alrededor de 265,000 archivos (imágenes y documentos).

net use z: \\ipaddress\share_folder

Luego necesitamos configurar la variable de ambiente del Sistema Operativo %Temp% para que no apunte al directorio del perfil del usuario sino al disco mapeado o Map Drive.  

Para ello abrimos la ventana de consola de línea de comando de Windows y escribimos el siguiente comando:

c:> set Temp = z:\Temp



Bueno ahora levantamos una ventana de SharePoint Management Shell y ejecutamos la siguientes líneas de comando:



net use z: \\ipaddress\share_folder


export-SPWeb -Identity http://hostname/sites/WebSite/SubWeb -ItemUrl "Nombre_Biblioteca" -IncludeUserSecurity -IncludeVersions 4 -Path "z:\MiBiblioteca.cmp" -NoFileCompression-Verbose

-Identity = La Url del subistio donde esta la biblioteca
-ItemUrl = El Nombre de la biblioteca
-IncludeUserSecurity = Incluye los permisos de la biblioteca
-IncludeVersions 4 = El Número 4 Indica todas las versiones
-Path = La ruta y el nombre del archivo donde incluirá todo el contenido migrado
-NoFileCompression = Para que solo cree un archivo y no demore 30% más del tiempo que requiere
-Verbose = Detalle de lo que esta exportando e incluyendo en el archivo

Bueno luego de esto paciencia y esperar que termine.   Para un tamaño tan grande podría demorar hasta 24 horas.

SharePoint4Fun,

Juan Manuel Herrera

martes, 17 de abril de 2012

Script para permitir a las bibliotecas abrir los archivos PDFS en SharePoint 2010

Esta opción esta bloqueada en SharePoint 2010 de forma predeterminada y a pesar que habilitemos a nivel de Aplicación Web el navegador de manejo de archivos a permisivo, esto solo funcionará para las bibliotecas del sitio primario de la colección de sitios, pero no para las bibliotecas de otros sub-sitios, ya que SharePoint 2010 tiene a nivel interno de cada biblioteca esta opción definida como estricta y no permisiva.

Al final hay que habilitar cada biblioteca en la colección de sitios la opción “browserfilehandling” como permisiva, para ello necesitamos ejecutar un script a nivel de línea de comando apoyados en powershell.

Un agradecimiento por su contribución a la comunidad de SharePoint a Kim Nguyen en:  http://www.freakingsharepoint.com/2010/08/sp2010-forces-users-to-save-pdfs.html

Lo que hice, fue modificar un poco el script para que funcione para cualquier colección de sitios y para que valide que la lista siempre sea un documento library.

Para ejecutar el script sugiero creen un archivo ps1 como por ejemplo:

ChangePermissiveOptionInLibs.ps1

La sintaxis es la siguiente:

.\ChangePermissiveOptionInLibs.ps1 –siteurl http://yoursitecollectionAddress

Y el script es el siguiente:

# Inicio del Script

param (
     [string]$siteUrl = "$(Read-Host 'Enter the Site Collection URL. [e.g. http://sp2010vm]')"
 
)
 
function main() {
 
# check to ensure Microsoft.SharePoint.PowerShell is loaded
  $snapin = Get-PSSnapin | Where-Object {$_.Name -eq 'Microsoft.SharePoint.Powershell'}
  if ($snapin -eq $null)
{
   Write-Host "Loading SharePoint Powershell Snapin"
   Add-PSSnapin "Microsoft.SharePoint.Powershell"
  }
 
$site = Get-SPSite($siteUrl)
write-host $siteurl

  foreach ($web in $site.AllWebs)
  { 
       write-host "web:" $web.Title
    foreach ($list in $web.Lists)
    {
        write-host "list:" $list.Title $list.BaseType
        if ($list.BaseType -eq "DocumentLibrary")
        {
 
            write-host "browserfilehandling:" $list.browserfilehandling
            if($list.browserfilehandling -eq "Strict")
            {
            $list.browserfilehandling = "Permissive";
            $list.update();
            write-host $site.url, $list.title, $list.browserfilehandling
            }
        }
    } 
  }


$site.Dispose()
 
}
 
main

# Fin del Script

 

En este artículo vimos como habilitar la opción para permitir el manejo de archivos en el navegador que esta bloqueada de forma predeterminada en SharePoint 2010.  Esto aunque representa un riesgo, es una funcionalidad habitual que los usuarios de SharePoint están acostumbrados a utilizar y que desean este disponible en el portal.

Enable4Fun!,

Juan Manuel Herrera Ocheita

miércoles, 11 de abril de 2012

Compartiendo Servicios entre distintas granjas de SharePoint 2010 (Un caso práctico)

SharePoint 2010 dispone de una arquitectura de servicios flexible y fácil de configurar, de tal forma que podemos compartir los servicios entre distintas granjas de servidores de SharePoint.  El caso práctico que les voy a presentar es el siguiente:

1) Una Granja de SharePoint Server 2010 consta de 2 servidores donde este el portal de la organización. 

2) Una Granja de Project Server 2010 separada que consta de un servidor.

3) Motivación: Se desea que el perfil de usuario del portal de la organización sea el mismo para el servidor de Proyectos.

Diagrama de Configuración de Servicios Compartidos

image

En el diagrama muestra dos granjas de servidores distintas una para un portal de colaboración y la otra para hospedar Project Server 2010.  La granja para el portal de colaboración tiene publicado el servicio de Perfiles de Usuario y una realización de confianza hacia la granja que hospeda Project Server 2010 a través de compartir ambas granjas sus certificados. En la granja consumidor del servicio de perfiles de usuario solo hay una conexión o proxy hacia el servicio publicado de la granja emisor o que publica el servicio que en este caso es la granja del portal de colaboración.

Aspectos importantes a notar son: 

  • La administración de los perfiles de usuario son únicamente efectuados en la granja emisor, es decir los permisos y características sociales son administradas por la granja emisor y no por la granja consumidor.
  • Los perfiles de usuario son compartidos por ambas granjas por lo que no importa que aplicación están accediendo la misma información.

El procedimiento para publicar y consumir un servicio es el siguiente:

  1. Cree los certificados de ambas granjas. Es necesario para el intercambio de certificados entre los servidores. El consumidor tendrá el certificado raíz de la publicación de la granja, pero la granja emisor tendrá el certificado raíz y el certificado STS (Security Token Service) del consumidor.
  2. Copia el certificado de la granja emisor para la granja consumidor y los certificados (raíz y sts) de la granja consumidor a la granja emisor.
  3. Importe los certificados de la granja consumidor en la granja emisor (primero el raíz y luego el sts).
  4. Importe el certificado raíz de la granja emisor en la granja consumidor
  5. Publique el Servicio deseado en la granja emisor.
  6. Consuma el Servicio publicado en la granja consumidor (para ello es necesario copiar de la granja emisor el URN).

Para realizar el procedimiento a detalle siga los siguientes enlaces:

http://technet.microsoft.com/en-us/library/ee704552.aspx

http://technet.microsoft.com/en-us/library/ee704545.aspx

http://www.aiim.org/community/blogs/expert/Connecting-to-the-User-Profile-Service-Proxy

Si en caso no le funciona, puede utilizar la interface Web desde el Central Administration pueda importar nuevamente los certificados.

Los certificados debería esperar generar 3 archivos como los mostrados abajo:

image

Para revisar la relación de confianza puede hacerlo en Seguridad, Administra la confianza.

image

Ventana de publicación del Servicio:

image

Ventana al momento de presionar el botón Conectar en la página de servicios de aplicación:

image

Luego de realizar la conexión exitosa le mostrará en el menú del usuario conectado las opciones sociales que se habilitan cuando el servicio esta disponible.

Para incluir en el Search de la granja consumidor la búsqueda de personas, le recomiendo cree una nueva fuente de contenido y escriba la url sps3://ServerEmisor, haga una indagación o crawl y vea si no sucedió ningún error.

image

En este artículo vimos como compartir los servicios entre granjas distintas, aunque es una tarea cuidosa y un poco tediosa, para nada complicada, los beneficios son palpables a primera vista, como la mejor utilización de los recursos disponibles y la unificación de la información, como la regla a mayor disponibilidad de servicios más crítico se vuelve la infraestructura e interconexiones, pero ese mi querido amigo es otro tema que hablaremos en el futuro sobre configuraciones de alta disponibilidad.

ShareService4Fun,

Juan Manuel Herrera Ocheita

jueves, 18 de agosto de 2011

Instalación de una solución wsp que no refleja cambios en SharePoint

Aunque esto puede deberse a diferentes razones la técnica para verificar si no hay algo malo en nuestra  solución si es la misma.

Escenario:  Una solución desarrollada con la herramienta WSPBuilder no mostraba ningún problema al momento de crearse y de instalarse o hacerle un deploy sobre el servidor.  Pero la solución no reflejaba los cambios realizados.

Revisión:  Fui a revisar el Central Administration en la sección de  Operations y en la opción Solution Management encontré que la solución instalada tenía un error y que se debía a que al copiar unas imágenes desde el explorador de windows hacia el explorador de la solución de Visual Studio me había copiado también el archivo Thumbs.db que guarda el caché de las imágenes en miniatura para mostrarlas mas rápido obviamente me estaba bloqueando la actualización de la solución.

ErrorThumbs

Solución:

Eliminar el archivo Thumbs.db de la solución de Visual Studio, volver a compilar el proyecto, generar el paquete WSP y reinstalarlo en el servidor destino.

Moraleja:

Cuando una solución en particular de elementos web no refleje cambios debemos de revisar en el Solution Management del Central Administration si esta no reporta ningún error.

SharePoint4Fun!,

Manolo Herrera

miércoles, 13 de mayo de 2009

WSPBuilder, Could not load file or assembly CabLib

Si esta corriendo sobre 32 bits, y te da este error es porque predeterminadamente el instalador coloca la versión de 64 bits en el directorio donde esta WSPBuilder.

Solución:

Copia el dll de 32 bits en el mismo directorio donde esta WSPBuilder.exe. Este se encuentre en C:\Program Files\WSPTools\WSPBuilderExtensions\Resources\x86 .

Y esto es todo debería darte como resultado algo parecido como esto:

========== Build: 11 succeeded, 0 failed, 1 up-to-date, 0 skipped WSPBuilder
Version: 0.9.8.1029
Created by Carsten Keutmann
GPL License 2007
Building the solution - please wait
Saving the Manifest.xml file
Creating the WSP file
Cleanup
Done!

Hasta la próxima,

Manolo Herrera

lunes, 13 de abril de 2009

Bitácora: Conflictos irreconciliables entre Microsoft Enterprise Library 4.1 y Visual Studio Extension Tools V 1.2 para SharePoint

Luego de instalar la Entlib 4.1 no pude mas hacer un deploy con las extensiones de Visual Studio 2008 para SharePoint o VSSe V1.2. Al parecer hay un conflicto irreconciliable hasta el momento no documentado.

Hice mi tarea y publique el problema en el sitio de codeplex, espero tener noticias en el futuro. Este es el enlace para los que quieran consultar:

http://entlib.codeplex.com/WorkItem/View.aspx?WorkItemId=22029

La descripción del error la momento de seleccionar la opción de deploy es la siguiente:

2009/04/02 22:12:37 Error
System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. Retrieve the LoaderExceptions property for more information.
at System.Reflection.Module._GetTypesInternal(StackCrawlMark& stackMark)
at System.Reflection.Module.GetTypes()
at Microsoft.SharePoint.Tools.Reflection.ModuleWrapper.GetTypes()
at Microsoft.SharePoint.Tools.Reflection.TypeFinder.GetTypesAsType(IAssemblyWrapper assembly, ITypeWrapper targetType)
at Microsoft.SharePoint.Tools.Reflection.TypeFinder.Find(IAssemblyWrapper assembly, ITypeWrapper targetType)
at Microsoft.SharePoint.Tools.SharePointProxies.WSPViewFacade.FindClasses(IAssemblyWrapper assembly)
at Microsoft.SharePoint.Tools.SharePointProxies.WSPViewFacade.GetAssemblyFeatureElementDirectorClassMap(String projectAssemblyPath)
at VSeWSS.Server.Services.SPService.GetAssemblyFeatureElementDirectorClassMap(String projectAssemblyPath)

Hice de todo, probé desinstalar y volver a instalar las VSSe 1.2 , el SP1 de VS 2008 e incluso el CTP 1.3 de las VSSe y tampoco.

Solución

Por lo que busque otra herramienta, y al hacer una rápida evaluación de cada una de ellas me pareció que la que mejor herramienta disponible aún mejor que la VSSe era WSPBuilder y efectivamente ahora puedo no solo hacer el deploy sino que me permite crear la solución WSP y hacer el deploy automático o manual según yo lo desee. Tuve que reorganizar el código de los elementos Web ya que este organiza y crea de diferente forma las archivos xml pero finalmente pude hacer el deployment exitoso al portal, incluyendo la instalación en mi portátil de las EntLib 4.1 sin ningún conflicto aparente con VS 2008 y WSPBuilder.

Dolorosa experiencia que espero poder evitar a alguien.

Links de referencia que puede consultar:

Donde bajar WSPBuilder : http://www.codeplex.com/wspbuilder

Comentarios de comparación entre productos:

http://www.cmswatch.com/Trends/1473-Updated-Visual-Studio-Extensions-for-SharePoint

http://wss.made4the.net/archive/2009/02/22/the-ultimate-sharepoint-development-tool-and-the-new-release-of-vsewss-1-3-ctp-and-stsdev-2008-v2-0.aspx

http://www.sharepointdevwiki.com/display/public/Solution+package+development+tool+comparisons

Hasta la próxima!,

Manolo Herrera

miércoles, 11 de marzo de 2009

Tip del día: Como hacer el deployment remoto de un worfkflow en SharePoint 2007

Basado en los pasos que realiza Visual Studio 2008 para hacer el deployment del WorkFlow hice una archivo de lotes (Batch file) para hacer el deployment de una sola vez.

Estas son las instrucciones que van dentro del archivo de extensión .bat:

>gacutil.exe /i [ubicación y nombre del dll]

>iisreset /noforce /restart

>xcopy workflow.xml "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\FEATURES\[Nombre del Workflow]\workflow.xml" /s /y

>xcopy feature.xml "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\TEMPLATE\FEATURES\[Nombre del Workflow]\feature.xml" /s /y

>cd "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\"
>stsadm.exe -o installfeature -name [Nombre del Workflow]

>stsadm.exe -o activatefeature -name [Nombre del Workflow]-url [url del portal]

En resumen los pasos son:

  1. Instalar en el GAC el DLL
  2. Reiniciar el IIS
  3. Copiar el archivo workflow.xml en el directorio de las features del servidor de sharepoint
  4. Copiar el archivo feature.xml en el directorio de las features del servidor de sharepoint
  5. Cambiarse al directorio 12hive de sharepoint
  6. Ejecutar la linea de comando con la herramienta administrativa de sharepoint stsadm para instalar el workflow como una feature
  7. Activar el workflow
  8. Luego deberá asociar el workflow a la lista o librería de documentos, para ello vaya a configuración del sitio, seleccione la lista, seleccione configuración de la lista y vaya a configuración del flujo de trabajo y deberá aparecerle dentro de los workflows disponibles.

Eso es todo amigos, Code4Fun!.

Manolo Herrera

jueves, 5 de marzo de 2009

Tip del día: Como cambiar la aplicación web de depuración del workflow en SharePoint desde las extensiones de Visual Studio 2008

Pueda que necesite cambiar la referencia de la aplicación Web donde apunto que haría el deployment del workflow en Visual Studio con las extensiones para SharePoint o Vsse 2.0.

Si es así es algo muy sencillo pero engañoso:

  1. Vaya al Solution Explorer (Ctrl+Alt+L)
  2. Clic derecho sobre las propiedades del proyecto de WF
  3. Seleccione SharePoint Debug Settings...
  4. Y en What local site do you want to use for debuggin?, coloque la nueva url.
  5. Para finalizar presione next, next, finish.

Eso es todo... espero les sirva!

Manolo Herrera