Initial Setup to Start a Secure Data Grid

Procedure

  1. Set up PATH to point to TIBCO FTL and ActiveSpaces.
    export TIBFTL_ROOT=/opt/tibco/ftl/<version>
    export TIBDG_ROOT=/opt/tibco/as/<version>
    export PATH=$TIBFTL_ROOT/bin:$TIBDG_ROOT/bin:$PATH
  2. On a computer with TIBCO FTL and ActiveSpaces, create the directories to hold the initial setup and configuration files.
    >cd /home/youruser
    >mkdir -p as
    >cd as
    >mkdir -p init
    >cd init
    >mkdir grid1
    >cd grid1
    >mkdir ftl_security
  3. Initialize the files for a secure ftlserver.
    >cd ftl_security
    >vi keystore_password.txt (enter a single line password and save file)
    >tibftlserver --init-security file:/home/youruser/as/init/grid1/ftl_security/keystore_password.txt
    Initializing TIBCO FTL server security.
    Generating keystore 'ftl-tport.p12' and trust file 'ftl-trust.pem'.
  4. Create the TIBCO FTL server YAML configuration file.
    cd..
    vi ftl.yaml (paste the config below)
    globals:
      core.servers:
        ftl1: host1:8085
        ftl2: host2:8185
        ftl3: host3:8285
      tls.secure: file:/home/youruser/as/ftlservers/keystore_password.txt
    servers:
      ftl1:
      - realm:
          ftl: host1:8088
          data: /home/youruser/as/ftlservers/ftl1/realm_data
          logfile: /home/youruser/as/logs/ftlservers/ftl1-rs-log.txt
      ftl2:
      - realm:
          ftl: host2:8188
          data: /home/youruser/as/ftlservers/ftl2/realm_data
          logfile: /home/youruser/as/logs/ftlservers/ftl2-rs-log.txt
      ftl3:
      - realm:
          ftl: host3:8288
          data: /home/youruser/as/ftlservers/ftl3/realm_data
          logfile: /home/youruser/as/logs/ftlservers/ftl3-rs-log.txt
    services:
      realm: {}
  5. Create the grid1.tibdg file. This configuration file is used to configure the data grid later after the TIBCO FTL server is running.
    vi grid1.tibdg (paste the config below)
    grid create copyset_size=2 encrypted_connections=all grid1
    copyset create cs_01
    copyset create cs_02
    node create --copyset cs_01 --dir /home/youruser/as/grid1/cs_01.n_1_data cs_01.n_1
    node create --copyset cs_01 --dir /home/youruser/as/grid1/cs_01.n_2_data cs_01.n_2
    node create --copyset cs_02 --dir /home/youruser/as/grid1/cs_02.n_1_data cs_02.n_1
    node create --copyset cs_02 --dir /home/youruser/as/grid1/cs_02.n_2_data cs_02.n_2
    keeper create --dir /home/youruser/as/grid1/k_1_data k_1
    keeper create --dir /home/youruser/as/grid1/k_2_data k_2
    keeper create --dir /home/youruser/as/grid1/k_3_data k_3
    proxy create proxy_client_listen_port=7771 p_01
    proxy create proxy_client_listen_port=7772 p_02
    proxy create proxy_client_listen_port=7773 p_03
    proxy create proxy_client_listen_port=7774 p_04
    table create t1 key long
    column create t1 value string