TestEngineering/Services/TSVerifierSyncTestEnvironments

From MozillaWiki
Jump to: navigation, search
  • NOTE: We currently have two Verifier stacks in Stage (and probably Production):
    • The standalone Browser_ID Verifier stack: See that Verifier Stage section below...
    • A Tokenserver+Verifier stack: See the TokenServer Stage section below...

Tokenserver, Verifier, and Sync Production Environments

  • QA Access: not allowed

TokenServer+Verifier Stage Environment

  • NOTE: In an upcoming deployent, the Verifier functionality will be rolled into the Tokenserver stack of services.
  • Version:
TokenServer:
rpm -qa | grep -E 'token|browser'
  • AWS
    • tokenserver app server or Token app server or similar
      • (1 or more instances behind a CF stack and ELB)
    • tokenserver db (1 large DB instance behind RDS)
  • Files
    • /opt/aws
    • /opt/ec2
    • /opt/openresty
    • /opt/rh
    • /opt/stackdriver
    • /data/tokenserver
    • /data/fxa-browserid-verifier
      • esp. /data/fxa-browserid-verifier/config/settings.json
    • /data/hekad
    • /etc/heka.d
    • /etc/puppet
      • esp. /etc/puppet/yaml/app
      • fxa.stage.yaml
      • fxa.yaml
      • tokenserver.stage.yaml
      • tokenserver.yaml
  • Processes
    • tokenserver app server:
      • Search for token, circus, nginx, gunicorn, python, hekad, node
  • Logs
    • /media/ephemeral0/logs/tokenserver/token.error.log
    • /media/ephemeral0/logs/tokenserver/token.log.*
    • /media/ephemeral0/logs/tokenserver/process_account_deletions.error.log
    • /media/ephemeral0/logs/tokenserver/process_account_deletions.log
    • /media/ephemeral0/logs/tokenserver/purge_old_records.log
    • /media/ephemeral0/logs/tokenserver/purge_old_records.error.log
    • /media/ephemeral0/nginx/logs/default.access.log (not in use)
    • /media/ephemeral0/nginx/logs/default.error.log (not in use)
    • /media/ephemeral0/nginx/logs/tokenserver.access.log
    • /media/ephemeral0/nginx/logs/tokenserver.error.log
    • /media/ephemeral0/fxa-browserid-verifier/verifier_err.log
    • /media/ephemeral0/fxa-browserid-verifier/verifier_out.log
    • /var/log/circus.log
    • /var/log/hekad/tokenserver.stdout.log
    • /var/log/hekad/tokenserver.stderr.log
  • Hekad
    • /etc/puppet/modules/hekad
  • QA Access via a Bastion Host
    • Old Dev IAM
      • SSH with AWS keys to the Stage bastion host in US-East-1. From there SSH directly into any instance.
    • New Dev IAM
      • SSH with AWS keys to the Stage bastion host in US-East-1 or EU-West-1. From there SSH directly into any instance.

Verifier Stage Environment

  • NOTE: In an upcoming deployment, the Verifier functionality will be rolled into the Tokenserver stack of services.
  • Version:
    • rpm -qa | grep verifier
  • AWS
    • Shared:
      • shared-elasticsearch
      • shared-elasticsearch
      • shared-elasticsearch
      • shared-elasticsearch
      • shared-rabbitmq
      • shared-rabbitmq
      • shared-bastion
      • shared-heka
    • fxa-browserid_verifier or fxa-bv-stage (usually a single instance)
  • Files
    • /data/fxa-browserid-verifier
      • esp. /data/fxa-browserid-verifier/config/settings.json
    • /data/hekad
    • /opt/aws
    • /opt/ec2
    • /opt/openresty
    • /opt/rh
    • /opt/stackdriver
    • /etc/heka.d
    • /etc/puppet
      • esp. the /etc/puppet/yaml/app files
      • /etc/puppet/yaml/app/fxa.stage.yaml
      • /etc/puppet/yaml/app/fxa.yaml
  • Processes
    • Search for node, heka, nginx, circus
  • Logs
    • /media/ephemeral0/fxa-browserid-verifier/verifier_err.log
    • /media/ephemeral0/fxa-browserid-verifier/verifier_out.log
    • /media/ephemeral0/nginx/logs/fxa-browserid-verifier.access.log
    • /media/ephemeral0/nginx/logs/fxa-browserid-verifier.access.log
    • /media/ephemeral0/nginx/logs/default.access.log (not in use)
    • /media/ephemeral0/nginx/logs/default.error.log (not in use)
    • /media/ephemeral0/squid/access.log
    • /var/log/circus.log
    • /var/log/hekad/fxa-browserid_verifier.stderr.log
    • /var/log/hekad/fxa-browserid_verifier.stdout.log
  • Hekad
    • /etc/puppet/modules/hekad
    • /data/hekad
  • QA Access via a Bastion Host
    • Old Dev IAM
      • SSH with AWS keys to the Stage bastion host in US-East-1. From there SSH directly into any instance.
    • New Dev IAM
      • SSH with AWS keys to the Stage bastion host in US-East-1 or EU-West-1. From there SSH directly into any instance.
  • Quick verifications
Browser: https://verifier.stage.mozaws.net/
returns "Method Not Allowed"

$ curl https://verifier.stage.mozaws.net
returns "Method Not Allowed"

$ curl -I https://verifier.stage.mozaws.net
HTTP/1.1 405 Method Not Allowed
Cache-Control: no-cache, max-age=0
Content-length: 18
Content-Type: text/plain
Date: Wed, 23 Jul 2014 20:19:40 GMT
Connection: keep-alive

Sync 1.5 Stage Environment

  • Versions
Server-Syncstorage (sync node):
rpm -qa | grep syncstorage
Example: server-syncstorage <latest version>
  • AWS
    • Search for sync node instances in US East: "stage-sync-node-X"
    • Each node is a specific large instance (mixed m3 and c3)
  • Files
    • /data/server-syncstorage/*
    • /var/log/nginx
    • /etc/puppet
  • Processes
    • Search for sync, mysql, circusd, hekad, nginx, memcached
  • Logs
    • /media/ephemeral0/logs/
    • /media/ephemeral0/logs/nginx/access.log
    • /media/ephemeral0/logs/nginx/error.log
    • /media/ephemeral0/logs/sync/sync.err
    • /media/ephemeral0/logs/sync/sync.log
    • /var/log/circus.log
    • /var/log/hekad/sync_1_5.stderr.log
    • /var/log/hekad/sync_1_5.stdout.log
  • Hekad
    • /etc/heka.d/sync_1_5.toml
  • QA Access via a Bastion Host
    • SSH with AWS keys to the Stage bastion host in US East 1. From there SSH directly into any instance.
  • Firefox Configs
    • services.sync.clusterURL should get automatically set by the TokenServer
  • Note: There is no longer a Sync 1.1 Stage environment.

Loads V1 Services Cluster Environment

Monitoring the Stage Environment

Monitoring the Production Environment

TokenServer, Verifier, and Sync 1.5 Dev Environments

  • Versions
TokenServer:
rpm -qa | grep token
Example: tokenserver-svcops <latest version>

Verifier:
rpm -qa | grep verifier
Example: fxa-browserid-verifier-svcops <latest version>

Server-Syncstorage (sync node):
rpm -qa | grep syncstorage
Example: server-syncstorage <latest version>
  • AWS
    • This is part of the dev-lcip-org CloudFormation stack
      • TokenServer: Search for the fxa-tokenserver instance
      • SyncServer2: Search for the fxa-syncstorage instance
      • SyncServer1: Search for the fxa-syncstorage instance
      • LogServer: Search for the fxa-logbox instance
  • Files
    • TBD
  • Processes
    • TBD
  • Logs
    • TBD
  • QA Access
    • SSH with AWS keys to the various instances
  • Firefox configs:

OPs Mana and GitHub Pages