40

Cloud SharePoint Existing sites and services App web (optional) Existing sites and services App web (optional) Host web App web

Embed Size (px)

Citation preview

Understanding and maintaining SharePoint Apps for IT ProfessionalsSam HassaniPrincipal ConsultantBrightStarr

SPC366

Introductions…Who am I?Principal Consultant at BrightStarrMicrosoft Certified Master: SharePoint 2010Microsoft Certified Master: SharePointSharePoint 2013 Beta Engineer

Contact detailsTwitter: @samhassaEmail: [email protected]: www.brightstarr.comWeb: www.samhassani.comYammer: Operations and Management Group

AgendaOverview of Apps in SharePointConfiguring an on-premises farm for AppsApps lifecycle managementApps monitoring

Overview of Apps

Evolution of SharePoint customizations

Full trust solutions

Prone to stabilization issuesChallenging to upgradeUnfeasible on hosted platform

Sandboxed solutions

Too strict for developersHard to maintain and scaleConfusing for site owners

(Cloud) App model

Cloud/client code onlyHost/language independentFull life cycle and reuse ‘story’

So why the need for Apps in SharePoint?

Sites

Vie

ws

Columns

Libra

riesPages

List

sWeb Parts

WorkflowsM

ast

er

Pages

SolutionsFe

atu

res

Conte

nt Ty

pes

Docu

ments

So why the need for Apps in SharePoint?

Sites

Vie

ws

Columns

Apps

Libra

riesPages

List

sWeb Parts

WorkflowsM

ast

er

Pages

SolutionsFe

atu

res

Conte

nt Ty

pes

Docu

ments

SharePoint Store

Add an App

App hosting optionsCloud

SharePoint-hosted

SharePoint

Autohosted

Windows Azure and SQL Azure

Provider-hosted

Dedicated server or hosting service

CSOM/REST + OAuth

Existing sitesand services

App web(optional)

Existing sitesand services

App web(optional)

Host web

App web

CSOM/REST + OAuth

Host webs and App webs

Host webApp1

App3

App2

Windows Azure

App web

List

App web

List

Host web 2App2

App web

Document Library

List1

List2

App UI components

App UI componentsImmersive full page

App UI components

App UI componentsImmersive full page App part

App UI components

App UI components

Immersive full page App part UI custom actions

The isolated domain

http://app-bdf2016ea7dacb.contosoapps.com/sites/SPC/Scheduler

Host web

http://intranet.contoso.com/sites/SPC

App webScheduler App

/Scheduler

App prefix (tenant)

App ID

App domain

Host web

App name

http://app-bdf2016ea7dacb.contosoapps.com/sites/SPC/Scheduler

Demo: Apps in SharePoint

Sam Hassani

Infrastructure Configuration

Infrastructure configuration

Determine App domain• h

ttps://app-bdf2016ea7dacb.contosoapps.com/sites/SPC/Scheduler

Configure domain names in DNS• h

ttps://app-bdf2016ea7dacb.contosoapps.com/sites/SPC/Scheduler

• *.contosoapps.com

Create a new wildcard SSL certificate

SharePoint farm configuration

• Subscription Settings• App Management

Service applications

• App URLs (App prefix and App domain)• App Catalog• Store Settings• App Domains for multiple zones

SharePoint App settings

App Domains for multiple zonesMarch 2013 Public Update for SharePoint 2013 enables you to associate app domains to different zonesSteps to do this:Enable the feature using PowerShell:$contentService = [Microsoft.SharePoint.Administration.SPWebService]::ContentService $contentService.SupportMultipleAppDomains = $true $contentService.Update()

Create new App Domain:

New-SPWebApplicationAppDomain -AppDomain <AppDomain> -WebApplication <WebApplicationID> -Zone <Zone> -Port <Port> -SecureSocketsLayer

Additional Considerations

Apps do not support Kerberos

Special requirements for SAML authentication

A routing Web application may be needed

Routing Web application

No host header

https://app-bdf2016ea7dacb.contosoapps.com/sites/SPC/Scheduler

*.contosoapps.com= 192.168.1.2

https://intranet.contoso.com

https://my.contoso.com

App Management Service Application

NLB192.168.1.2

DNSFarm

Demo: Configuring an on-premises farm for AppsSam Hassani

Apps Lifecycle Management

Installing an AppTimer Job:• App Installation Service

Cmdlets:• Import-SPAppPackage• Install-SPApp• Uninstall-SPAppInstance

Tenant Scoped AppsHost web : app web mapping has an exceptionMultiple “instances” of an App can share an app webNot suitable for all scenariosLimitations:• Apps that contain a custom actions for the ribbon• Apps that contain an app part

Demo: Tenant Scoped Apps

Sam Hassani

Manage LicensingTimer Job:• License renewal

Powershell for DR:$appProxy = Get-SPServiceApplicationProxy “AppManagementProxyId”$appProxy.GetDeploymentID()

Set-SPAppManagementDeploymentID

Backup and RestoreSite exports do not include app assets:Export-SPWeb and Import-SPWeb

Site backup and restore:Backup-SPSite and Restore-SPSite

App exports:Export-SPAppPackage

Upgrading AppsSite administrators are responsible for upgrading AppsNotification state needs to be updated by SharePoint first

Timer Jobs:• App State Update• Internal App State Update

Cmdlets:• Get-SPAppStateUpdateInterval• Get-SPAppStateSyncLastRunTime• Set-SPAppStateUpdateInterval• Update-SPAppInstance

Apps Monitoring

Monitoring and logging

•App usage/Error details•Timer Jobs

Monitoring in Central Admin

•App usage/Error details

Monitoring in Site

Collections

•App Management, App Monitoring, Azure Access Control, App Marketplace, Marketplace Web Service

Logging Categories

Demo: Monitoring Apps

Sam Hassani

Apps are the order of the day

MySPCSponsored by

connect. reimagine. transform.

Evaluate sessionson MySPC using yourlaptop or mobile device:myspc.sharepointconference.com

© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.