ArcGIS for Server Deployment Scenarios

Report 48 Downloads 63 Views
ArcGIS for Server Deployment Scenarios

An ArcGIS Server’s architecture tour

Ismael Chivite Product Manager at Esri

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Core GIS Server Concepts This is the user that can administer ArcGIS Server. Not a Windows/Linux user (unless you want to)

ArcGIS Server is a pure GIS Web Services Server. All communication for using and administering occurs via http http:6080

ArcGIS Site

GIS Servers live within an ArcGIS Site: a logical grouping of servers that simplifies administration

Manager

ArcGIS Primary Site Administrator

GIS Server Web browser based management console. You do not need a separate web server to run this

ArcGIS Server Account

ArcGIS Server processes run under this user

Server Directories & Configuration Store Two folders that store key information needed for your server to run. Make sure the ArcGIS Server user has Read/Write access and that folders can be accessed from all GIS Servers

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Basic Single Machine Configuration Client

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

Data (Files) Keep your files local Best performance

Keep them local Best performance Typically dedicated machine

Data (DBs)

Basic Single Machine Configuration

Client

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

Data (Files)

• Uses: • Development • Intranets • Advantages • Easy to setup • Fast performance (keep file resources local) • To keep in mind • No HA • No http standard ports used • Security • Admin end-points exposed to clients (Consider restricting IPs)

• Only Esri’s token based authentication

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Single Machine Configuration with Proxy Client http:80

Proxy Firewall Forces all access to your GIS Server Through your Proxy

Block your admin end-points http:6080

ArcGIS Site

http://acme.com/context/admin http://acme.com/context/manager

Manager Administration through 6080

Hides your GIS Server machine, and ports

GIS Server Server Directories & Configuration Store

Data (DBs)

Data (Files)

Single Machine Configuration with Proxy Client http:80

Proxy

Firewall

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

Data (DBs)

Data (Files)

• Uses: • Intranets / Public access • Advantages • Fast performance (keep file resources local) • Enhanced security • To keep in mind • No HA • Token authentication only unless a Web Adaptor is used

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

The ArcGIS Web Adaptor Client Web Server

http:80

Web Adaptor

Firewall

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

Data (DBs)

• An Esri proxy implementation for ArcGIS Server • Runs on your web server • IIS, Java • Helps you leverage your third party web server security features Including Web Tier Authentication • Automatically handles GIS Servers in your site*

Data (Files) * Will see later

Single Machine Configuration with Web Adaptor\s Client

Client

http:80

Web Adaptor Web Adaptor configured to block anonymous access (Users can see private and public services)

(Private)

Web Adaptor

http:80

(Public)

Firewall

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

Data (DBs)

Data (Files)

Web Adaptor configured to allow anonymous access (Users can see public services)

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Single Machine Configuration (Fail-over) Client

All requests forwarded to the active site Standby site not used until failure in active node is detected

Proxy\Load Balancer

http:6080

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

Each GIS Server has its own Config-store and Server directories

ArcGIS Site

Manager

GIS Server Active

Server Directories & Configuration Store

Stand-by

Single Machine Configuration (Fail-over) With Replicated Data Tier

Client Proxy\Load Balancer

http:6080

http:6080

ArcGIS Site

Manager

Manager

GIS Server Server Directories & Configuration Store

ArcGIS Site

GIS Server Server Directories & Configuration Store

Data (Files)

Data (Files) Stand-by

Active Database

Replication

Database

Single Machine Configuration (Fail-over) • HA variation of a single machine deployment • Relies on an external load balancer • Must pay attention to data tier HA strategy • Must keep stand-by Server in sync • License for standby server provided at no additional cost • Duplicate shared token key across sites if using tokens

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Load balanced Single Machine Configuration (Active-Active) aka Siloed Architecture

Client Proxy\Load Balancer

http:6080

http:6080

ArcGIS Site

Manager

GIS Server

ArcGIS Site

Manager

GIS Server

Server Directories & Configuration Store

Server Directories & Configuration Store

Active

Active

Load balanced Single Machine Configuration (Active-Active) With Data Tier

Client Proxy\Load Balancer

http:6080

http:6080

ArcGIS Site

Manager

GIS Server Server Directories & Configuration Store

ArcGIS Site

Manager

GIS Server

Data (Files)

Server Directories & Configuration Store

Data (Files) Active

Active Database and/or Network Share

Load balanced Single Machine Configuration (Active-Active) • High Capacity variation of a single machine deployment • Relies on an external load balancer • Must keep all GIS Servers in sync! • Manually • Scripting • Virtualization • Duplicate shared token key across sites if using tokens • If performance is key: keep file-based data and caches locally • Ideal for serving map tiles (High capacity/HA)

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Multi-Machine Configurations Basic Concepts

• Two or more machines sharing single config-store & server directories • Pool of machines using ports 4000-4005+ Internall use only. Clients cannot use ArcGIS Site

http:6080

GIS Server

http:6080

4000…

GIS Server

• All GIS Servers kept in sync for you update one GIS Server… all other nodes in the pool updated* • Data strategies: As usual. Keep local if you can Note: Map caches can’t be local If you share, share for all

Server Directories & Configuration Store

* Unless using ‘Clusters’. We will see later

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Basic Multi-Machine Configuration (without a load balancer)

• Adds capacity to a single machine deployment • Without a load balancer, single point of failure for applications ArcGIS Site

http:6080

GIS Server

http:6080

4000…

Server Directories & Configuration Store

GIS Server

• Only practical for batch processing (Map caching)

Basic Multi-Machine Configuration (Map Caching Workflow Example)

Desktop Desktop Edit

Multi-user Geodatabase

Changes

FileGDB

One Way replica

ArcGIS Site

http:6080

http:6080

GIS Server FileGDB

GIS Server FileGDB Server Directories & Configuration Store

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Multi-Machine Configuration With Load Balancer Client

• Typical configuration to support applications

Load Balancer Firewall

• Load balancer fronts a pool of GIS Servers Note: How load balancing works?

ArcGIS Site

http:6080

GIS Server

http:6080

4000…

GIS Server

• For High Capacity or HA with simplified administration • Typically Load Balancer acts as or is complemented by a proxy + firewall • If not using Web Adaptor, can’t use Web Tier authentication

Server Directories & Configuration Store

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Multi-Machine Configuration With Web Adaptor Client

• A variation of the previous configuration

Web Adaptor Firewall

ArcGIS Site

• Supports Web Tier Authentication http:6080

GIS Server

http:6080

4000…

Server Directories & Configuration Store

GIS Server

• Does not require overhead of managing a a third party load balancer • Use redundant Web Adaptors for HA (see next)

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Multi-Machine Configuration With Redundant Web Adaptors Client Web Adaptor

• A HA variation of the previous configuration

Web Adaptor

Firewall

ArcGIS Site

• Requires third party load balancer or web farm clustering http:6080

GIS Server

http:6080

4000…

Server Directories & Configuration Store

GIS Server

• As in all HA configurations: Must consider HA implications for Server Directories, Config-Store and Data tier

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Concept: ‘Clusters’ Cluster A

http:6080

GIS Server

http:6080

4000…

GIS Server

Cluster B

4000 +1

http:6080

GIS Server

Site Server Directories & Configuration Store

In ArcGIS Server, a ‘cluster’ is a logical group of machines within a site that run the same services

Concept: ‘Clusters’ Cluster A

http:6080

GIS Server

http:6080

4000…

GIS Server

Site Server Directories & Configuration Store

Total instances (assuming 2 per GIS server)

4

4

2

Cluster B

4000 +1

http:6080

GIS Server

Moving machines from cluster to cluster Cluster A

http:6080

GIS Server

http:6080

4000…

GIS Server

Site Server Directories & Configuration Store

Total instances (assuming 2 per GIS server)

2

2

4

Cluster B

4000 +1

http:6080

GIS Server

Moving services from cluster to cluster Cluster A

http:6080

GIS Server

http:6080

4000…

GIS Server

Site Server Directories & Configuration Store

Total instances (assuming 2 per GIS server)

2

4

4

Cluster B

4000 +1

http:6080

GIS Server

• GIS Server Concepts • Single Machine Configurations • • • • •

Basic Basic with Proxy With Web Adaptor Fail-Over Load Balanced or Siloed

• Multi Machine Configurations • • • • • •

Concepts Basic (without a load balancer) With Load Balancer With Web Adaptor With redundant Web Adaptors Cluster Concepts

Questions