Skip to content

arcgis‐enterprise Cookbook Recipes

Pavel Bobov edited this page Apr 26, 2018 · 24 revisions

arcgis-enterprise cookbook is used to install and configure ArcGIS Enterprise products, components, and tools.

Brief descriptions of arcgis-enterprise cookbook recipes along with cookbook attributes are available at README.md. This page provides more detailed descriptions of the recipes and specifies attributes used by each recipe.

Some cookbook attributes are not used directly by the recipes but used to set the default values for other attributes. For example node['arcgis']['version'] attribute affects default values of node['arcgis']['...']['product_code'] attributes, and node['arcgis']['...']['domain_name'] attributes affect default values of different URLs.

node['arcgis']['repository']['archives'] attribute defines path to local ArcGIS software repository with ArcGIS software setup archives. If setup archive for the specified software version is found in the local repository and node['arcgis'][...]['setup'] path is not explicitly specified, the setup is extracted from the archive to the setups repository specified by node['arcgis']['repository']['setups'] attribute and is used to install the software.

clean

Deletes data and installation directories of ArcGIS Server, Portal for ArcGIS, and ArcGIS Data Store.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "server": {
      "install_dir": "C:\\Program Files\\ArcGIS\\Server",
      "directories_root": "C:\\arcgisserver"
    },
    "portal": {
      "install_dir": "C:\\Program Files\\ArcGIS\\Portal",
      "data_dir": "C:\\arcgisportal"
    },
    "data_store": {
      "install_dir": "C:\\Program Files\\ArcGIS\\DataStore",
      "data_dir": "C:\\arcgisdatastore"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::clean]"
  ]
}

datastore

Installs and configures ArcGIS Data Store on primary machine.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "configure_windows_firewall": false,
    "server": {
      "domain_name": "domain.com",
      "admin_username": "admin",
      "admin_password": "changeit"
    },
    "data_store": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\DataStore\\Setup.exe",
      "install_system_requirements":  true,
      "configure_autostart": true,
      "install_dir": "C:\\Program Files\\ArcGIS\\DataStore",
      "data_dir": "C:\\arcgisdatastore",
      "backup_dir": "C:\\arcgisdatastore\\backup",
      "types": "tileCache,relational,spatiotemporal",
      "preferredidentifier": "hostname"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::datastore]"
  ]
}

The recipe uses https://<server domain_name>:6443/arcgis server URL when it configures Data Store.

datastore_standby

Installs and configures ArcGIS Data Store on standby machine.

The recipe uses that same attributes as arcgis-enterprise::datastore recipe.

disable_geoanalytics

Resets the big data analytics configuration on the Portal for ArcGIS.

Applies to: ArcGIS 10.5 and never versions.

The recipe uses that same attributes as arcgis-enterprise::enable_geoanalytics recipe.

egdb

Registers enterprise GeoDatabases with ArcGIS Server.

Attributes used by the recipe:

{
  "arcgis": {
    "server": {
      "private_url": "https://domain.com:6443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit",
      "managed_database": "<connection string>",
      "replicated_database": "<connection string>"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::egdb]"
  ]
}

enable_geoanalytics

Configures the Portal for ArcGIS to perform big data analytics.

Applies to: ArcGIS 10.5 and never versions.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "server": {
      "private_url": "https://domain.com:6443/arcgis",
      "web_context_url": "https://domain.com/server",
      "admin_username": "admin",
      "admin_password": "changeit",
      "is_hosting": false
    },
    "portal": {
      "wa_url": "https://domain.com/portal",
      "admin_username": "admin",
      "admin_password": "changeit"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::enable_geoanalytics]"
  ]
}

federation

Federates ArcGIS Server with Portal for ArcGIS.

Attributes used by the recipe:

{
  "arcgis": {
    "server": {
      "domain_name": "domain.com",
      "private_url": "https://domain.com:6443/arcgis",
      "web_context_url": "https://domain.com/server",
      "admin_username": "admin",
      "admin_password": "changeit",
      "is_hosting": true
    },
    "portal": {
      "domain_name": "domain.com",
      "wa_url": "https://domain.com/portal",
      "admin_username": "admin",
      "admin_password": "changeit"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::federation]"
  ]
}

fileserver

Creates and shares directories on file server machine.

Attributes used by the recipe:

{
  "arcgis": {
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "fileserver": {
      "shares": ["C:\\arcgisserver", "C:\\arcgisdatastore", "C:\\arcgisportal"]
    },
    "server": {
      "local_directories_root": "C:\\arcgisserver"
    },
    "portal": {
      "local_content_dir": "C:\\arcgisportal\\content"
    },
    "data_store": {
      "local_backup_dir": "C:\\arcgisdatastore\\backup"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::fileserver]"
  ]
}

hosts

Creates entries in /etc/hosts file for the specified hostname to IP address map.

Attributes used by the recipe:

{
  "arcgis": {
    "hosts": {
      "domain.com": "12.34.56.78",
      "node.com": ""
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::hosts]"
  ]
}

For empty IP address strings the IPv4 address of the machine is used.

iptables

Configures iptables to forward ports 80/443 to 8080/8443.

lp-install

Installs language packs for ArcGIS Enterprise software.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "server": {
      "lp-setup": "C:\\ArcGIS\\10.5\\Setups\\Server\\Japanese\\setup.msi"
    },
    "portal": {
      "lp-setup": "C:\\ArcGIS\\10.5\\Setups\\Portal\\Japanese\\setup.msi"
    },
    "data_store": {
      "lp-setup": "C:\\ArcGIS\\10.5\\Setups\\DataStore\\Japanese\\setup.msi"
    },
    "web_adaptor": {
      "lp-setup": "C:\\ArcGIS\\10.5\\Setups\\WebAdaptorIIS\\Japanese\\setup.msi"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::lp-install]"
  ]
}

patches

Installs hot fixes and patches for ArcGIS Enterprise software.

Attributes used by the recipe:

{
  "arcgis" : {
    "patches" : {
      "local_patch_folder" : "%USERPROFILE%\\Software\\Esri\\Patches"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::patches]"
  ]
}

portal

Installs, authorizes, and configures Portal for ArcGIS.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "cache_authorization_files": false,
    "configure_windows_firewall": false,
    "portal": {
      "domain_name": "domain.com",
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Portal\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\Portal",
      "authorization_file": "C:\\ArcGIS\\10.5\\Authorization_Files\\Portal.prvc",
      "authorization_file_version": "10.5",
      "install_system_requirements":  true,
      "configure_autostart": true,
      "data_dir": "C:\\arcgisportal",
      "content_dir":"C:\\arcgisportal\\content",   
      "log_dir":"C:\\arcgisportal\\logs",   
      "log_level": "WARNING",
      "max_log_file_age": 90,
      "content_store_type": "fileStore",
      "content_store_provider": "FileSystem",
      "content_store_connection_string": "C:\\arcgisportal\\content",
      "object_store": null,
      "url": "https://localhost:7443/arcgis",
      "private_url": "https://domain.com:7443/arcgis",
      "web_context_url": "https://domain.com/portal",
      "admin_username": "admin",
      "admin_password": "changeit",
      "admin_email":"[email protected]",
      "admin_full_name": "Administrator",
      "admin_description": "Initial account administrator",
      "security_question":"Your favorite ice cream flavor?",
      "security_question_answer":"bacon",
      "keystore_file": "C:\\domain_com.pfx",
      "keystore_password": "test",
      "cert_alias": "domain.com",
      "root_cert": "",
      "root_cert_alias": "",
      "upgrade_backup": true,
      "upgrade_rollback": true
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::portal]"
  ]
}

portal_security

Configures Portal for ArcGIS identity stores and assigns privileges to roles.

Attributes used by the recipe:

{
  "arcgis": {
    "portal": {
      "url": "https://sitehost.com:7443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit",
      "security": {
        "user_store_config" : {
          "type" : "BUILTIN", 
          "properties" : {
          }
        },
        "role_store_config" : {
          "type" : "BUILTIN", 
          "properties" : {
        }
      }
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::portal_security]"
  ]
}

portal_standby

Installs and configures Portal for ArcGIS on standby machine

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "cache_authorization_files": false,
    "configure_windows_firewall": false,
    "portal": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Portal\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\Portal",
      "authorization_file": "C:\\ArcGIS\\10.5\\Authorization_Files\\Portal.prvc",
      "authorization_file_version": "10.5",
      "install_system_requirements":  true,
      "configure_autostart": true,
      "data_dir": "C:\\arcgisportal",
      "content_dir":"C:\\arcgisportal\\content",   
      "url": "https://standby.com:7443/arcgis",
      "primary_machine_url": "https://primary.com:7443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit",
      "upgrade_backup": true,
      "upgrade_rollback": true
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::portal_standby]"
  ]
}

portal_wa

Installs ArcGIS Web Adaptor and configures it with Portal for ArcGIS. IIS or Java application server such as Tomcat must be installed and configured before installing ArcGIS Web Adaptor.

Attributes used by the recipe on Windows:

{
  "arcgis": {
    "version": "10.5",
    "web_adaptor": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\WebAdaptorIIS\\Setup.exe",
      "install_dir": "",
      "install_system_requirements": true
    },
    "portal": {
      "wa_name": "portal",
      "wa_url": "https://primary.com/portal",
      "url": "https://primary.com:7443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::portal_wa]"
  ]
}

Attributes used by the recipe on Linux:

{
  "arcgis": {
    "version": "10.5",
    "web_server": {
      "webapp_dir": "/opt/tomcat_arcgis/webapps"
    },
    "web_adaptor":{
      "setup": "/arcgis/10.5/WebAdaptor/CD_Linux/Setup",
      "install_dir": "/",
      "install_system_requirements": true
    },
    "portal": {
      "wa_name": "portal",
      "wa_url": "https://primary.com/portal",
      "url": "https://primary.com:7443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::portal_wa]"
  ]
}

post_install

Executes custom post-installation script if it exists.

{
  "arcgis": {
    "post_install_script": "C:\\imageryscripts\\deploy.bat"
  }
}

rds_egdb

Creates managed and replicated GeoDatabases in Amazon RDS DB instance.

Attributes used by the recipe:

{
  "arcgis": {
    "run_as_user": "arcgis",
    "server": {
      "install_dir": "C:\\Program Files\\ArcGIS\\Server",
      "private_url": "https://sitehost.com:6443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit"
    },
    "rds": {
      "engine": "postgres",
      "endpoint": "myinstance.123456789012.us-east-1.rds.amazonaws.com:5432",
      "username": "EsriRDSAdmin",
      "password": "changeit"
    }
  }
}

server

Installs and configures ArcGIS Server site.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "cache_authorization_files": false,
    "configure_windows_firewall": false,
    "server": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Server\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\Server",
      "authorization_file": "C:\\ArcGIS\\10.5\\Authorization_Files\\Server.prvc",
      "authorization_file_version": "10.5",
      "install_system_requirements":  true,
      "configure_autostart": true,
      "directories_root": "C:\\arcgisserver",
      "url": "https://sitehost.com:6443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit",
      "system_properties": {},
      "log_level": "WARNING",
      "log_dir": "C:\\arcgisserver\\logs",
      "max_log_file_age": 90,
      "config_store_type": "FILESYSTEM",
      "config_store_connection_string": "C:\\arcgisserver\\config-store",
      "config_store_connection_secret": "",
      "keystore_file": "C:\\domain_com.pfx",
      "keystore_password": "test",
      "cert_alias": "domain.com",
      "soc_max_heap_size" : 64
    },
    "python": {
      "install_dir": "C:\\Python27"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::server]"
  ]
}

Consult ArcGIS Administrator directory API for more information about different site configuration parameters.

server_node

Installs ArcGIS Server on the machine and joins an existing site.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "cache_authorization_files": false,
    "configure_windows_firewall": false,
    "server": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Server\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\Server",
      "authorization_file": "C:\\ArcGIS\\10.5\\Authorization_Files\\Server.prvc",
      "authorization_file_version": "10.5",
      "install_system_requirements":  true,
      "configure_autostart": true,
      "directories_root": "C:\\arcgisserver",
      "url": "https://node.com:6443/arcgis",
      "primary_server_url": "https://sitehost.com:6443/arcgis",
      "use_join_site_tool": false,
      "admin_username": "admin",
      "admin_password": "changeit",
      "keystore_file": "C:\\domain_com.pfx",
      "keystore_password": "test",
      "cert_alias": "domain.com",
      "soc_max_heap_size" : 64
    },
    "python": {
      "install_dir": "C:\\Python27"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::server_node]"
  ]
}

server_security

Configures ArcGIS Server identity stores and assigns privileges to roles.

Attributes used by the recipe:

{
  "arcgis": {
    "server": {
      "url": "https://sitehost.com:6443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit",
      "security": {
        "user_store_config" : {
          "type" : "BUILTIN", 
          "properties" : {
          }
        },
        "role_store_config" : {
          "type" : "BUILTIN", 
          "properties" : {
          }
        },
        "privileges" : {
          "PUBLISH" : [], 
          "ADMINISTER" : []
        }
      }
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::server_security]"
  ]
}

server_wa

Installs ArcGIS Web Adaptor and configures it with ArcGIS Server. IIS or Java application server such as Tomcat must be installed and configured before installing ArcGIS Web Adaptor.

Attributes used by the recipe on Windows:

{
  "arcgis": {
    "version": "10.5",
    "web_adaptor": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\WebAdaptorIIS\\Setup.exe",
      "install_dir": "",
      "install_system_requirements": true,
      "admin_access": true
    },
    "server": {
      "wa_name": "server",
      "wa_url": "https://node.com/server",
      "url": "https://node.com:6443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::server_wa]"
  ]
}

Attributes used by the recipe on Linux:

{
  "arcgis": {
    "version": "10.5",
    "web_server": {
      "webapp_dir": "/opt/tomcat_arcgis/webapps"
    },
    "web_adaptor":{
      "setup": "/arcgis/10.5/WebAdaptor/CD_Linux/Setup",
      "install_dir": "/",
      "install_system_requirements": true,
      "admin_access": true
    },
    "portal": {
      "wa_name": "server",
      "wa_url": "https://node.com/server",
      "url": "https://node.com:6443/arcgis",
      "admin_username": "admin",
      "admin_password": "changeit"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::server_wa]"
  ]
}

services

Publishes services to ArcGIS Server.

Attributes used by the recipe:

{
  "arcgis": {
    "server": {
      "url": "https://domain.com:6443/arcgis",
      "publisher_username": "publisher",
      "publisher_password": "changeit",
      "services": [{
         "folder": "",
         "name": "MyMap",
         "type": "MapServer",
         "definition_file": "C:\\data\\map_bv.sd",
         "properties": {
           "maxInstancesPerNode" : 4
         } 
      }] 
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::services]"
  ]
}

Service configuration properties, such as configuredState, minInstancesPerNode, maxInstancesPerNode, and all other properties can be specified by node['arcgis']['server']['services']['properties'] attribute.

sql_alias

Creates SQL Server alias 'egdbhost' for Amazon RDS endpoint.

Attributes used by the recipe:

{
  "arcgis": {
    "server": {
      "install_dir": "C:\\Program Files\\ArcGIS\\Server"
    },
    "rds": {
      "engine": "sqlserver-se",
      "endpoint": "myinstance.123456789012.us-east-1.rds.amazonaws.com:1433"
    }
  }
}

system

Creates arcgis user account, includes 'hosts' recipe. On Linux the recipe also sets process and file limits for the user account to 25059 and 65535 respectively to meet the requirements of ArcGIS Enterprise setups.

Attributes used by the recipe:

{
  "arcgis": {
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "hosts": {
      "domain.com": "12.34.56.78",
      "local.com": ""
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::system]"
  ]
}

node['arcgis']['run_as_password'] attribute is not required on Linux.

enterprise_installed

Installs ArcGIS Server, Portal for ArcGIS, ArcGIS Data Store, and ArcGIS Web Adaptors for server and portal.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "run_as_user": "arcgis",
    "run_as_password": "Pa$$w0rdPa$$w0rd",
    "server": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Server\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\Server",
      "wa_name": "server"
    },
    "portal": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Portal\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\Portal",
      "wa_name": "portal"
    },
    "data_store": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\DataStore\\Setup.exe",
      "install_dir": "C:\\Program Files\\ArcGIS\\DataStore"
    },
    "web_adaptor": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\WebAdaptorIIS\\Setup.exe",
      "install_dir": ""
    },
    "python": {
      "install_dir": "C:\\Python27"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::enterprise_installed]"
  ]
}

enterprise_uninstalled

Uninstalls all ArcGIS Enterprise software of the specified version.

Attributes used by the recipe:

{
  "arcgis": {
    "version": "10.5",
    "server": {
      "install_dir": "C:\\Program Files\\ArcGIS\\Server",
      "wa_name": "server"
    },
    "portal": {
      "install_dir": "C:\\Program Files\\ArcGIS\\Portal",
      "wa_name": "portal"
    },
    "data_store": {
      "install_dir": "C:\\Program Files\\ArcGIS\\DataStore"
    },
    "web_adaptor": {
      "install_dir": ""
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::enterprise_uninstalled]"
  ]
}

enterprise_validate

Checks if ArcGIS Enterprise setups and authorization files exist.

Attributes used by the recipe:

{
  "arcgis": {
    "server": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Server\\Setup.exe",
      "authorization_file": "C:\\ArcGIS\\10.5\\Authorization_Files\\Server.prvc"
    },
    "portal": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\Portal\\Setup.exe",
      "authorization_file": "C:\\ArcGIS\\10.5\\Authorization_Files\\Portal.prvc"
    },
    "data_store": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\DataStore\\SetupFile\\Setup.exe"
    },
    "web_adaptor": {
      "setup": "C:\\ArcGIS\\10.5\\Setups\\WebAdaptorIIS\\Setup.exe"
    }
  },
  "run_list": [
    "recipe[arcgis-enterprise::enterprise_validate]"
  ]
}