Revision as of 20:19, February 2, 2015 by Jumunn (talk | contribs) (Modifying the Server Settings)
Jump to: navigation, search

Configuring Workspace Web Edition & Web Services

Configuration for the Workspace Web Edition & Web Services node is handled in three files:

  • server-settings.yaml
  • onpremise-settings.yaml
  • cassandra-cluster.yaml

You can find these files in the main Workspace Web Edition & Web Services config folder you created in Step 6 of the Deploying the Web Application procedure.

Modifying the Server Settings

Start of Procedure

  1. Open the server-settings.yaml and review the options. This file contains a number of core parameters that are used by the server.
  2. The following is an unmodified file:

    externalApiUrl: [ToBeChanged: "PUBLIC_SCHEMA_BASE_URL"]/api/v1
    internalApiUrl: [ToBeChanged: "INTERNAL_SCHEMA_BASE_URL"]/api/v1
    externalApiUrlV2: [ToBeChanged: "PUBLIC_SCHEMA_BASE_URL"]/api/v2
    internalApiUrlV2: [ToBeChanged: "INTERNAL_SCHEMA_BASE_URL"]/internal-api
    reconnectAttempts: [ToBeChanged: "RECONNECT_ATTEMPTS"]
    reconnectTimeout: [ToBeChanged: "RECONNECT_TIMEOUT"]
    activationTimeout: 12000
    connectionTimeout: 4000
    configServerActivationTimeout: 35000
    configServerConnectionTimeout: 15000
    contactCenterSynchronizationTimeout: 60000
    opsUserName: [ToBeChanged: "OPS_USER_NAME"]
    opsUserPassword: [ToBeChanged: "OPS_USER_PASSWORD"]
    applicationName: [ToBeChanged: "APPLICATION_NAME"]
    applicationType: [ToBeChanged: "APPLICATION_TYPE"]
    cmeUserName: [ToBeChanged: "CME_USER_NAME"]
    cmePassword: [ToBeChanged: "CME_PASSWORD"]
    syncNode: [ToBeChanged: true|false]
    inactiveUserTimeout: 60
    nodePath: /US
    
  3. Review the General Configuration and Connectivity options to learn more about the default options included in the server-settings.yaml file, as well as the other options you can add to adjust Workspace Web Edition & Web Services for your solution. Make sure to update all the options marked [ToBeChanged].
    Important
    In each Workspace Web Edition & Web Services cluster, one node must be configured as the synchronization node: syncNode = true. All other nodes in the cluster must have syncNode = false.
  4. Save your changes and close the file.
  5. Open the onpremise-settings.yaml file and review the options. This file contains parameters that are used to connect to Configuration Server.
  6. The following is an unmodified file:

    cmeHost: localhost
    cmePort: 8888
    countryCode: US
    

    The following options are valid in this file:

  • cmeHost – The Configuration Server host name (FQDN) or IP
  • cmePort – The Configuration Server port
  • backupCmeHost – The backup Configuration Server host name (FQDN) or IP
  • backupCmePort – The backup Configuration Server port
  • countryCode – The premise contact center's country code
Important
Configure the backupCmeHost and backupCmePort options if there is a backup Configuration Server in the Genesys environment and you want high-availability support.
  • Save your changes and close the file.
  • Open the cassandra-cluster.yaml file and review the options.
  • The following is an unmodified file:

    thrift_port: 9160
    jmx_port: 7199
    keyspace: sipfs
    nodes: [ToBeChanged: <CASSANDRA_PRIMARY_DC_NODES>]
    backup_nodes: [ToBeChanged: <CASSANDRA_BACKUP_DC_NODES>]
    replication_factor: [ToBeChanged: <REPLICATION_FACTOR>]
    write_consistency_level: [ToBeChanged: "CL_LOCAL_QUORUM" for multi-datacenters env, "CL_QUORUM" for single-DC env.]
    read_consistency_level: [ToBeChanged: "CL_LOCAL_QUORUM" for multi-datacenters env, "CL_QUORUM" for single-DC env.]
    max_conns_per_host: 16
    max_cons: 48
    max_pending_conns_per_host: 80
    max_blocked_threads_per_host: 160
    
    cassandraVersion: [ToBeChanged: "1.1" | "1.2"]
    useSSL: [ToBeChanged: sopporting only for 1.2 Cassandra "false" | "true"]
    
  • Modify the settings as needed, making sure to update all the options marked [ToBeChanged]:
    • thrift_port — The port for Thrift to listen for clients. It should be the same as the rpc_port you set in the cassandra.yaml file as part of the Configuring Cassandra procedure.
    • jmx_port — The port Cassandra uses for Java Manage Extension (JMX).
    • keyspace — The name of the Cassandra keyspace. This name should be the same as the keyspace name you set while Creating the Cassandra Keyspace. If you used the keyspace creation scripts that come with WWE&WS, then you can leave this value as sipfs.
    • nodes — A comma-separated list of Cassandra node IPs or host names.
    • backup_nodes — A comma-separated list of backup Cassandra node IPs or host names.
    • replication_factor — A replication factor appropriate for your Cassandra topology. This value should be the same as the replication factor you set in Step 2 of the Creating the Cassandra Keyspace procedure.
    • read_consistency_level — Set this value according to your Cassandra topology:
    Development
    (1 Cassandra node)
    Single Datacenter
    (1 datacenter with a minimum of three Cassandra nodes)
    Two Datacenters
    (datacenters with a minimum of three Cassandra nodes in each datacenter)
    CL_ONE CL_QUORUM CL_LOCAL_QUORUM
    • write_consistency_level — Set this value according to your Cassandra topology:
    Development
    (1 Cassandra node)
    Single Datacenter
    (1 datacenter with a minimum of three Cassandra nodes)
    Two Datacenters
    (datacenters with a minimum of three Cassandra nodes in each datacenter)
    CL_ONE CL_QUORUM CL_LOCAL_QUORUM
    • cassandraVersion — Possible values are 1.1 (for 1.1.x versions) and 1.2 (for 1.2.x versions).
    • useSSL — Set to true to enable Cassandra to use SSL. This option is only valid for Cassandra 1.2.x.

    The following options tune the Cassandra database access. The default values were used by Genesys during internal load tests.

    • max_conns_per_host — Maximum number of connections to allocate for a single host's pool.
    • max_cons — Maximum number of connections in the pool.
    • max_pending_conns_per_host — Maximum number of pending connect attempts per host.
    • max_blocked_threads_per_host — Maximum number of blocked clients for a host.
  • Save your changes and close the file.
  • End of Procedure

    Tuning the Workspace Web Edition & Web Services Host Performance

    Complete the steps below on each Workspace Web Edition & Web Services node to tune the performance of the host environment.

    Start of Procedure

    1. To optimize TCP/IP performance, you can run the following commands:
    2. sudo sysctl -w net.core.rmem_max=16777216 
      sudo sysctl -w net.core.wmem_max=16777216 
      sudo sysctl -w net.ipv4.tcp_rmem="4096 87380 16777216" 
      sudo sysctl -w net.ipv4.tcp_wmem="4096 16384 16777216" 
      sudo sysctl -w net.core.somaxconn=4096 
      sudo sysctl -w net.core.netdev_max_backlog=16384
      sudo sysctl -w net.ipv4.tcp_max_syn_backlog=8192 
      sudo sysctl -w net.ipv4.tcp_syncookies=1 
      sudo sysctl -w net.ipv4.tcp_congestion_control=cubic
      
    3. Increase the file descriptors by adding the following to the /etc/security/limits.conf file:
    4. <user_name>		hard nofile	100000
      <user_name>		soft nofile	100000
      
    • <user_name> — The name of the user or group that is starting Jetty.

    End of Procedure

    Comments or questions about this documentation? Contact us for support!