arcgis for server deployment scenarios€¦ · • intranets / public access • advantages •...
TRANSCRIPT
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
GIS Server
ArcGIS Primary Site Administrator
Server Directories &
Configuration Store
Core GIS Server Concepts
ArcGIS Server Account
ArcGIS Server processes run under this user
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
Manager
Web browser based management console. You do not
need a separate web server to run this
http:6080
ArcGIS Server is a pure GIS Web Services Server. All communication for using and administering occurs via http
This is the user that can administer ArcGIS Server. Not a Windows/Linux user
(unless you want to)
ArcGIS Site
GIS Servers live within an ArcGIS Site: a logical grouping of servers that simplifies administration
• 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
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Data (Files)
Keep your files local Best performance Keep them local
Best performance Data (DBs)
Typically dedicated machine
Basic Single Machine Configuration
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Data (Files)
• Uses: • Development • Intranets
• Advantages • Easy to setup • Fast performance (keep file resources local)
• To keep in mind • No HA
• Security • Admin end-points exposed to clients (Consider restricting IPs)
• Only Esri’s token based authentication
• No http standard ports 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
Single Machine Configuration with Proxy
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Data (Files)
Data (DBs)
Proxy http:80
Hides your GIS Server machine, and ports
Block your admin end-points
http://acme.com/context/admin
http://acme.com/context/manager
Firewall
Forces all access to your GIS Server Through your Proxy
Administration through 6080
Single Machine Configuration with Proxy
• 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
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Data (Files)
Data (DBs)
Proxy http:80
Firewall
• 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
• 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
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Data (Files)
Data (DBs)
Web Adaptor http:80
Firewall
• Automatically handles GIS Servers in your site*
* Will see later
Web Server
Single Machine Configuration with Web Adaptor\s
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Data (Files)
Data (DBs)
Firewall
Web Adaptor (Private)
http:80
Client
Web Adaptor configured to block anonymous access
(Users can see private and public services)
Client
Web Adaptor (Public)
http:80
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)
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Active
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Stand-by
Client
Proxy\Load Balancer
All requests forwarded to the active site
Standby site not used until failure in active node is detected
Each GIS Server has its own Config-store and Server directories
Single Machine Configuration (Fail-over)
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Proxy\Load Balancer
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Active Stand-by
Data (Files) Data (Files)
Database Database Replication
With Replicated Data Tier
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
• License for standby server provided at no additional cost
• Must keep stand-by Server in sync
• 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)
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Proxy\Load Balancer
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Active Active
aka Siloed Architecture
Load balanced Single Machine Configuration (Active-Active)
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Client
Proxy\Load Balancer
GIS Server
http:6080
Manager
Server Directories &
Configuration Store
ArcGIS Site
Active Active
With Data Tier
Database and/or Network Share
Data (Files) Data (Files)
• 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
Load balanced Single Machine Configuration (Active-Active)
• 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
GIS Server
http:6080
Server Directories &
Configuration Store
ArcGIS Site
GIS Server
http:6080
• Two or more machines sharing single config-store & server directories • Pool of machines using ports 4000-4005+ Internall use only. Clients cannot use
• Data strategies: As usual. Keep local if you can Note: Map caches can’t be local If you share, share for all
4000…
• All GIS Servers kept in sync for you update one GIS Server… all other nodes in the pool updated*
* Unless using ‘Clusters’. We will see later
Basic 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
Basic Multi-Machine Configuration (without a load balancer)
GIS Server
http:6080
Server Directories &
Configuration Store
ArcGIS Site
GIS Server
http:6080
• Adds capacity to a single machine deployment
4000…
• Without a load balancer, single point of failure for applications
• Only practical for batch processing (Map caching)
Basic Multi-Machine Configuration (Map Caching Workflow Example)
GIS Server
http:6080
Server Directories &
Configuration Store
ArcGIS Site
GIS Server
http:6080
FileGDB One Way replica
Changes Multi-user Geodatabase
Desktop
Desktop Edit
FileGDB FileGDB
• 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
GIS Server
http:6080
Server Directories &
Configuration Store
ArcGIS Site
GIS Server
http:6080
• Typical configuration to support applications
• Load balancer fronts a pool of GIS Servers Note: How load balancing works?
4000…
• For High Capacity or HA with simplified administration
Client
Load Balancer
• Typically Load Balancer acts as or is complemented by a proxy + firewall
Firewall
• If not using Web Adaptor, can’t use Web Tier 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
Multi-Machine Configuration With Web Adaptor
GIS Server
http:6080
Server Directories &
Configuration Store
ArcGIS Site
GIS Server
http:6080
• A variation of the previous configuration
• Supports Web Tier Authentication
4000…
• Does not require overhead of managing a a third party load balancer
Client
Web Adaptor
Firewall
• 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
GIS Server
http:6080
Server Directories &
Configuration Store
ArcGIS Site
GIS Server
http:6080
• A HA variation of the previous configuration
• Requires third party load balancer or web farm clustering
4000…
Client
Web Adaptor
Firewall
Web Adaptor
• 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’
GIS Server
http:6080
Server Directories &
Configuration Store
Cluster A
GIS Server
http:6080
4000… GIS Server 4000 +1
Cluster B http:6080
Site
In ArcGIS Server, a ‘cluster’ is a logical group of machines within a site that run the same services
Concept: ‘Clusters’
GIS Server
http:6080
Server Directories &
Configuration Store
Cluster A
GIS Server
http:6080
4000… GIS Server 4000 +1
Cluster B http:6080
Site
4 4 2 Total instances (assuming 2 per GIS server)
GIS Server
http:6080
Server Directories &
Configuration Store
Cluster A
GIS Server
http:6080
4000… GIS Server 4000 +1
Cluster B http:6080
Site
2 2 4 Total instances (assuming 2 per GIS server)
Moving machines from cluster to cluster
Moving services from cluster to cluster
GIS Server
http:6080
Server Directories &
Configuration Store
Cluster A
GIS Server
http:6080
4000… GIS Server 4000 +1
Cluster B http:6080
Site
2 4 4 Total instances (assuming 2 per 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