DSTORIE DALLA TRINCEA: TEAM FOUNDATION SERVER IN CASI LIMITE E NON SOLO...

Post on 15-Aug-2015

28 views 0 download

Transcript of DSTORIE DALLA TRINCEA: TEAM FOUNDATION SERVER IN CASI LIMITE E NON SOLO...

Template designed by

Storie dalla trincea: Team Foundation Server in casi limite e non solo...

Matteo Emilimatteo.emili@live.comhttp://mattvsts.blogspot.com || @MattVSTS

Di cosa stiamo parlando?

Servizi accessori

Client

I backup

•Stiamo proteggendo dei database

•Il tool di backup integrato nella console e’ la migliore soluzione per i backup di TFS

•Si puo’ utilizzare un tool esterno• Solo DR – backup avviene senza detach• E’ necessario marcare le transazioni

•Se si usa SSRS – backuppare la Encryption Key!

Detached vs DR backup

•Un backup detached marca il riferimento delle identita’ di TFS_Configuration (GUID), mantenendo sincronizzati i database

•Il tool di TFS esegue backup detached senza mandare offline i database

•Un DR backup permette il restore solo ripristinando il server (Application Tier Only Wizard)• E’ necessario che TFS_Configuration sia backuppato insieme o

successivamente agli altri DB

Template designed by

DEMO

TFS ed i backup

Operazioni quotidiane

•Operational Intelligence

•Administrative Report Pack

•Best Practices Analyzer

•TFS Administration Tool

•TFS Team Project Manager

•BYOT/R!

Build-Your-Own-Tool/Report!

•Automatizzate il piu’ possibile

•Report, report, report…• Permettono di essere operativi su un problema in tempo molto ridotto• Excel and PowerPivot sono vostri amici

•PowerShell ISE• Ambiente per scripting• PowerShell ha accesso al .NET Framework

•Comandi essenziali• ConvertFrom-Csv • Export-Csv• ConvertTo-Html • Invoke-Command

Interroghiamo SQL Server?

•Non dobbiamo mai modificare i database di TFS

•Fondamentale usare le DMV di SQL Server

•Esempi? Stato del Transaction Log, operazioni in corso

Versioning dei Process Template

•E’ essenziale tenere un versioning dei Process Template

•Una copia di quelli OOB si trovano in:C:\Program Files\Microsoft Team Foundation Server <vNumber>\Tools\Deploy\ProcessTemplateManagerFiles

•Branch-per-customisation su albero separato

•Nuova folder/repo per Process Template• I Process Template cambiano da Update ad Update,

non branchare mai quelli OOB

Template designed by

DEMO

Report, BYOT e versioning dei Process Template

High Availability

•SQL Server AlwaysOn Availability Group!

•Soluzione nativa di HA e DR in SQL Server• RTO di pochi secondi

•Il Transaction Log e’ critico

•E’ dispendioso in termini di hardware• Lo storage va sostanzialmente duplicato

Security model

•Tre differenti aree di ACL• TFS• SharePoint• Reporting Services

•Permessi ereditati da group membership

•Se un permesso non e’ esplicitamente allow, viene negato a meno che allow non sia ereditato

•Se un utente appartiene a piu’ gruppi ed uno di questi ha specificamente un deny, l’utente non avra’ quel permesso a livello globale (salvo explicit allow)

Consigli

•Usare gruppi Active Directory• Sono gestiti al di fuori di TFS• Creano una gerarchia facile da manutenere

•TFS Administration Tool per la gestione• Console unica

•Least Privilege Principle• Facile garantire privilegi maggiori, difficile tracciare un deny fra

centinaia di gruppi

Access Levels

•Non sono gruppi di sicurezza

•Basati sul licensing• Stakeholder – niente licenza• Standard – TFS CAL, Visual Studio Professional with MSDN• Advanced – Visual Studio Enterprise with MSDN

•CONSIGLIO: default su Stakeholder per dare accesso a tutti ed evitare problemi di compliance

Access Levels a confronto

Auditing

•Permessi• http://

blogs.msdn.com/b/willy-peter_schaub/archive/2014/12/10/extracting-effective-permissions-from-tfs-whitepaper-and-sample.aspx

•Licenze• analisi veloce con Excel dall’Audit Log

per gestire licenze ed accessi

•Attivita’• …in demo

Template designed by

DEMO

Gestire le ACL e l’auditing

Visual Studio ALM Rangers

•Le guide dei Visual Studio ALM Rangers sono la colonna portante di ogni amministratore di Team Foundation Server

•Sono tutte basate su esperienze reali

•http://blogs.msdn.com/b/visualstudioalmrangers/

Storia di troubleshooting

•TFS 2012 Update 3

•Accade solo da Web Access

•Due report da due progetti diversi

•?!?!?!

Su le maniche…

•TF237165 mai visto prima• Tre risultati su un qualunque motore di ricerca, nessuno rilevante

•“Errore di validazione”• Process Template customizzato? No.• Transizione orfana dopo l’upgrade? No.

•TFS BPA per verificare i web services• Nulla di anomalo.

Eureka!

•TFS Operational Intelligence• Diverse operazioni fallite (-1), con stacktrace ed informazioni dettagliate

•Microsoft Customer Support Service• Due giorni di lavoro e fix dedicata• Bug dell’integrazione fra TFS 2012 e Project Server 2010 solo in

determinate condizioni…• Rimozione dell’integrazione per quei progetti

•Bug delle Global List• Global List sono sopra le regole dei singoli Team Project e una Global

Workflow Rule di PS andava in errore

•Costo: £0.00 – bug del prodotto

Grazie a tutti per la partecipazione

Riceverete il link per il download a slide e demo via email nei prossimi giorni

Per contattarmi

matteo.emili@live.com

Grazie