ArcGIS for Server: Administrative Scripting and Automation



Similar documents
ArcGIS for Server Deployment Scenarios An ArcGIS Server s architecture tour

Supporting High-Quality Printing in Web Applications with ArcGIS for Server

Securing ArcGIS Server Services: First Steps

Securing ArcGIS Server Services: Advanced Options

Agenda. How to configure

ArcGIS for Server Reference Implementations. An ArcGIS Server s architecture tour

Monitoring Oracle Enterprise Performance Management System Release Deployments from Oracle Enterprise Manager 12c

ArcGIS for Server in the Amazon Cloud. Michele Lundeen Esri

ArcGIS for Server in the Cloud

Background on Elastic Compute Cloud (EC2) AMI s to choose from including servers hosted on different Linux distros

Building your Server for High Availability and Disaster Recovery. Witt Mathot Danny Krouk

Portal for ArcGIS: An Introduction

Network Analysis with Python. Deelesh Mandloi

Performance Testing Process A Whitepaper

Using ArcGIS for Server in the Amazon Cloud

Tuning Tableau Server for High Performance

Exploiting the Web with Tivoli Storage Manager

No.1 IT Online training institute from Hyderabad URL: sriramtechnologies.com

ArcGIS 10.3 Server on Amazon Web Services

Enterprise GIS Architecture Deployment Options. Andrew Sakowicz

Overview. Timeline Cloud Features and Technology

Using ArcGIS for Server in the Amazon Cloud

Deploying ArcGIS for Server Using Managed Services

This module explains the Microsoft Dynamics NAV architecture and its core components.

Portal. from the trenches!

Supporting High-Quality Printing in Web Applications with ArcGIS 10.1 for Server

Sisense. Product Highlights.

Oracle Communications WebRTC Session Controller: Basic Admin. Student Guide

DottsConnected SHAREPOINT 2010 ADMIN TRAINING. Exercise 1: Create Dedicated Service Accounts in Active Directory

Vistara Lifecycle Management

SAS 9.4 Intelligence Platform

Responsive, resilient, elastic and message driven system

Backup / migration of a Coffalyser.Net database

AdRadionet to IBM Bluemix Connectivity Quickstart User Guide

Troubleshooting SQL Server Enterprise Geodatabase Performance Issues. Matthew Ziebarth and Ben Lin

Product Manual. MDM On Premise Installation Version 8.1. Last Updated: 06/07/15

7/15/2011. Monitoring and Managing VDI. Monitoring a VDI Deployment. Veeam Monitor. Veeam Monitor

MySQL Enterprise Monitor

State of Wisconsin DET File Transfer Protocol Service Offering Definition (FTP & SFTP)

BusinessObjects Enterprise XI Release 2 Administrator s Guide

WOS Cloud. ddn.com. Personal Storage for the Enterprise. DDN Solution Brief

Configure ActiveSync with a single Exchange server (Exchange sync for an iphone)

Setup Guide for AD FS 3.0 on the Apprenda Platform

Big data management with IBM General Parallel File System

Enterprise IT is complex. Today, IT infrastructure spans the physical, the virtual and applications, and crosses public, private and hybrid clouds.

DATABASE ANALYST I DATABASE ANALYST II

Using AppMetrics to Handle Hung Components and Applications

System Administration Training Guide. S100 Installation and Site Management

Administering Your Microsoft SQL Server Geodatabase

Features of AnyShare

FileMaker Server 11. FileMaker Server Help

EMC Data Protection Search

Okta/Dropbox Active Directory Integration Guide

ArcGIS Server Performance and Scalability Testing Methodologies. Andrew Sakowicz, Frank Pizzi

SAS 9.3 Intelligence Platform

Course 6425C: Configuring and Troubleshooting Windows Server 2008 Active Directory Domain Services

DeployStudio Server Quick Install

Big Data Spatial Analytics An Introduction

Understanding Server Configuration Parameters and Their Effect on Server Statistics

ELIXIR LOAD BALANCER 2

Password Reset PRO INSTALLATION GUIDE

Migrating SaaS Applications to Windows Azure

Preinstallation Requirements Guide

Improved metrics collection and correlation for the CERN cloud storage test framework

ArcGIS Server and Geodatabase Administration for 10.2

Building Secure Applications. James Tedrick

ArcGIS for Server Performance and Scalability: Testing Methodologies. Andrew Sakowicz, Frank Pizzi,

Embracing ArcGIS for Local Government. Robert Parsons Delaware County, Ohio Auditor s Office Steve Koenig Bruce Harris & Associates

CA Nimsoft Monitor. Probe Guide for E2E Application Response Monitoring. e2e_appmon v2.2 series

Managing your Red Hat Enterprise Linux guests with RHN Satellite

Certified The Grinder Testing Professional VS-1165

Administering Jive for Outlook

Administering Jive Mobile Apps

Deploying ArcGIS for Server using Managed Services

Basic TCP/IP networking knowledge of client/server concepts Basic Linux commands and desktop navigation (if don't know we will cover it )

ITG Software Engineering

SpringCM Troubleshooting Guide for Salesforce

LoadRunner and Performance Center v11.52 Technical Awareness Webinar Training

FileMaker Server 12. FileMaker Server Help

Expert Oracle Enterprise

ManageEngine Desktop Central Training

Network Analysis with ArcGIS for Server

Product Training Services. Training Options and Procedures for JobScheduler and YADE

SOA Solutions & Middleware Testing: White Paper

ArcGIS for Server Performance and Scalability-Testing and Monitoring Tools. Amr Wahba

Enabling High-Quality Printing in Web Applications with ArcGIS for Server. Craig Williams Scott Moore

ArcGIS Viewer for Silverlight An Introduction

KillTest. 半 年 免 费 更 新 服 务

Oracle WebLogic Server 11g Administration

How To Use Arcgis For Free On A Gdb (For A Gis Server) For A Small Business

Dell Enterprise Reporter 2.5. Configuration Manager User Guide

Installation Guide. Qlik Sense 1.1 Copyright QlikTech International AB. All rights reserved.

Course Description. Course Audience. Course Outline. Course Page - Page 1 of 5

Supporting GIS Best practices for Incident Management and Daily Operations

Web Application Hosting Cloud Architecture

Hands-On Lab. Embracing Continuous Delivery with Release Management for Visual Studio Lab version: Last updated: 12/11/2013

Configuring the BIG-IP system for FirePass controllers

10231B: Designing a Microsoft SharePoint 2010 Infrastructure

Transcription:

ArcGIS for Server: Administrative Scripting and Automation Shreyas Shinde Ranjit Iyer Esri UC 2014 Technical Workshop

Agenda Introduction to server administration Command line tools ArcGIS Server Manager Overview of the administrative API Automation Popular scripting workflows - Publishing of services - Setting up permissions - Extracting popular extents - Monitoring services and databases - Scaling and statistics

Introduction to server administration ArcGIS Server Installation Media Provision hardware Select a deployment pattern Keep it running Software Authorization ArcGIS Server Setup

The administrator s toolbox ArcGIS Server Administrator Directory ArcGIS Server Manager Console tools

Command line tools Located under /arcgis/server/tools A collection of most popular tools Categories - Administrative credentials - For resetting administrative accounts - SSL/certificate management - Backup and restore - Managing cache Lock the tools down using OS file permissions!

Demo Command line tools Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

ArcGIS Server Manager Browser based interactive application Located at: http://server.domain.com:6080/arcgis/manager Simple, easy-to-use Ability to manage your entire server site - Even though you are accessing Manager on a specific server node Great for common workflows!

Demo le Tour de Manager Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

ArcGIS Server Manager under the hood Simple HTTP requests to the administrative API

Overview of the administrative API Entire server administration is an API - If ArcGIS Server Manager can use it, so can you! RESTful - GET and POST of JSON data Well organized and well documented Lots of samples Scriptable Designed for automation!

The administrative API Create and manage your services. Start or stop them as wanted Manage system properties, web adaptors, server directories. System environment Services Machines + Clusters Add new nodes to grow capacity. Remove them to shrink. Organize machines into clusters. Get fine grained statistics on your GIS services. Admin API Statistics (new at 10.3) Manage all your database connections through a single interface. Databases Security Harvest logs for auditing, understanding usage patterns and troubleshooting. Logs Configure GIS tier or web tier authentication. Manage accounts, roles and permissions on services. Configure SSL.

Why automate? Common repeated workflows - Plot popular extents for the data Scheduled actions - Restarting services when data is updated - Build map caches during low demand by moving machines to caching cluster Reactive actions - Adding capacity (server nodes) to a cluster when demand increases - Send email notifications when errors are logged Works with all programming/scripting languages that support HTTP!

Where should you begin?

Demo Publish Services Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Motivation Publishing many services Moving services between Dev, Staging, Production environments - Backup/restore is an option but sometimes you just want to republish services Can publish from Desktop and Manager Tedious if you have lots of services Automation is your friend!

Task : Publish a list of services listed in a file Help system has a script that uses ArcPy ArcPy is an python library that complements the Admin REST API Provides many convenience functions

Caveats Works great, just need a few lines of code However, you need ArcPy on the machine Script publishes service definitions sequentially - For every SD - Upload - Publish With many SDs to publish this can be a very slow process Publishing ~100 services took hours

We can do better Run the script from any machine - No ArcPy dependency Exploit concurrency - Parallel uploads - Parallel publishing If your script is amenable to concurrency, exploit it by all means

Publishing a service with an SD Two step process - Upload the SD to the Server - QUICK - Invoke the publishing tool - INTENSIVE

Script design Upload Publish SD SD SD SD Upload UpldID UpldID UpldID Publish Upload

Comparison results Speed up of ~3 ArcPy publishing script DIY multi-threaded publishing script

Demo Starting a service Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Options Manager Admin Script Start Geometry Service

Anatomy of an Admin script Main function - Drives the logic Internal utility functions - Get Token - Make HTTP requests - Parse JSON responses

Demo Apply Permissions Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Task : Apply permissions to services Permissions are the way to secure your service Do it in Manager Tedious for lots of services. Must automate!

Demo Show them previously published services in Manager Show them roles Run the script Discuss the script

Demo Health check for services Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Using the report API, Get all the folders get all the service instances. Print report Using Geo-services REST API to test availability.

Demo Health check for databases Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Use finditems to search for all enterprise geodatabases Use validatedataitem to test database connectivity. Print output

Demo Popular extents Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Demo Elastic scaling Esri UC 2014 Technical Workshop ArcGIS for Server: Administrative Scripting and Automation

Task : Dynamically add machines to your site Add machines to reduce latency and increase throughput Dynamically add them when a latency threshold is breached De-allocate machines when traffic is less

Demo Start with a single node site Make service requests and watch latency (we ll use JMeter) Run a script that adds a machine to a cluster Watch the latency drop

Statistics in 10.3 (Sneak peak)

Statistics at 10.3 Server is always collecting statistics - Avg response - Number of requests - Number of timeouts -... Report defines the resource, metric and interval - Previous day, last 7 days, last 30 days - Custom time window Server chooses intelligent data point intervals in the reports REST API to harvest all this information

Python is great!!

Short detour Most modern languages (like Python) support Threads Some languages provide concurrency as a language feature - Go - Erlang - Clojure - Scala Suited for concurrent programming

Go Invented at Google About concurrency Lightweight threads (goroutines) Typed thread-safe communication and synchronization (channels) Readable concurrent code

Erlang Invented at Ericsson Functional language Light weight processes Can spawn 100s of thousands of them Concurrency via message passing Actors model

Python is great!! Don t get us in trouble, we don t want to start a rebellion J

Thank you Please fill out the session survey: First Offering ID: 1146 Second Offering ID: 1344 Online www.esri.com/ucsessionsurveys Paper pick up and put in drop box

Questions?

Resources GIS Tutorial for Python Scripting Esri Press, 2014 Python Scripting for ArcGIS Esri Press, 2013 Paperback and e-book Paperback and e-book Just released! Offers several hands-on tutorial exercises. Good reference text