Skip to content

Getting started

Anton Kropp edited this page Feb 18, 2016 · 10 revisions

To get started using CassieQ first pull down the docker container.

docker pull paradoxical/cassieq

Dev mode

If you just want to experiment with the container and don't want to wire up an actual cassandra instance, we have provided a self encapsulated dev mode. To run do:

docker run -it \
    -p 8080:8080 -p 8081:8081 \
    paradoxical/cassieq dev

Setting up Cassandra

You'll need to have a keyspace and a contact point to hit your cassandra cluster, along with a username and password for credentials. CassieQ requires specific tables to be set up for message tracking, but can setup all the required tables for you using the setup-db command.

$ docker run -it paradoxical/cassieq setup-db -i <CASSANDRA_CLUSTER_IP> -k <KEYSPACE> [-u <USER_NAME>] [-p <PASSWORD>]

For all the supported options go [here](Setup Database Command)

Running cassieq

To run cassieq do

docker run -it \
    -e KEYSPACE="" \
    -e CONTACT_POINTS="" \
    -e USERNAME="" \
    -e PASSWORD="" \
    -p 8080:8080 -p 8081:8081 \
    paradoxical/cassieq

CassieQ opens up 2 ports, 8080 and 8081.

  • 8080 is the public API and should be secured as such
  • 8081 is the admin port and should not be made publicly visible

General env vars

To find all the available environment variables please run

docker run -it paradoxical/cassieq help

As an example, you may see an output similiar (though variables may change over time with different release versions)

EnvVar                    CurrentValue                   DefaultValue                   HelpText
REMOTE_MAX_CONNECTIONS    500                            500                            The max number of connections to a remote data center
CONSISTENCY_LEVEL         LOCAL_QUORUM                   LOCAL_QUORUM                   The consistency level of queries
HTTPS                     false                          false                          Enable or disable https
HTTPS_KEY_STORE_TYPE      PKCS12                         PKCS12                         The https keystore type
HTTPS_KEY_STORE_PATH      /data/https/serverKeys.p12     /data/https/serverKeys.p12     The keystore path
HTTPS_KEY_STORE_PASSWORD                                                                The keystore password
HTTPS_VALIDATE_CERTS      true                           true                           Whether to do cert validation or not
ALLOCATION_STRATEGY       NONE                           NONE                           The repair worker queue distribution strategy
USE_METRICS_GRAPHITE      false                          false                          Enable graphite publishing
GRAPHITE_URL              192.168.99.100                 192.168.99.100                 The graphite endpoint url
GRAPHITE_PORT             2003                           2003                           The graphite port
DB_SCRIPTS_PATH           /data/db                       /data/db                       The location of the cql scripts for bootstrapping/dev mode
CLUSTER_NAME              cassieq                        cassieq                        The cassandra cluster name
CONTACT_POINTS            192.168.99.100                 192.168.99.100                 The cassandra cluster contact points
KEYSPACE                  cassieq                        cassieq                        The cassandra keyspace cassieq lives in
CASSANDRA_PORT            9042                           9042                           The cassandra cql client port
USERNAME                                                                                The cassandra username
PASSWORD                                                                                The cassandra password
GRAPHITE_PREFIX                                                                         The graphite prefix

Clone this wiki locally