Use
AeroLab
to create Aerospike development and testing clusters locally in Docker, or remotely on AWS or Google Cloud.
To install with AeroLab, perform the following steps:
Install AeroLab as described in
Getting started with AeroLab
.
To install a cluster and try out the new transactions feature of Aerospike Database 8.0, enter the following commands:
aerolab config backend -t docker
aerolab cluster create -f features.conf
The default
consistency mode
in Aerospike Database is AP. AeroLab’s
conf sc
command enables strong-consistency mode.
Pull the Docker image. For this example, we use Aerospike Database Enterprise Edition (EE) because it allows a single-node cluster with all enterprise features for evaluation. See
Features and Editions
for more information.
docker pull container.aerospike.com/aerospike/aerospike-server-enterprise
If you prefer to use the Community Edition (CE), use
container.aerospike.com/aerospike/aerospike-server
as the source for the pull.
Start the Aerospike container.
docker run -d --name aerospike -p 3000-3002:3000-3002 container.aerospike.com/aerospike/aerospike-server-enterprise
Enterprise Edition’s evaluation features are unlocked in its included
feature-key file
. If you have your own feature-key file, set an environment variable with the location of the file and pass it to the Docker image:
export FEATKEY = $( base64 -i ~/evaluation-features.conf )
docker run -d -e " FEATURES= $FEATKEY " -e " FEATURE_KEY_FILE=env-b64:FEATURES " --name aerospike -p 3000-3002:3000-3002 container.aerospike.com/aerospike/aerospike-server-enterprise
-d
runs the container in detached mode.
--name
assigns a name to the container.
-e "FEATURES=$FEATKEY"
sets a container-side environment variable
FEATURES
with the base64-encoded feature-key file.
-e "FEATURE_KEY_FILE=env-b64:FEATURES"
sets the
feature-key-file
configuration parameter to the value of the container-side variable
FEATURES
.
-p
maps ports 3000, 3001, and 3002 of the host machine to ports 3000, 3001, and 3002 inside the Docker container, respectively.
container.aerospike.com/aerospike/aerospike-server-enterprise
specifies the name of the image.
See the
Docker run reference
for more information on the Docker parameters.
For more information on the Aerospike EE image, see
aerospike/aerospike-server-enterprise
on Docker Hub.
Verify that the container is running:
Run
docker ps
to show all running containers. Its output should resemble the following:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c8456f7dd252 aerospike/aerospike-server-enterprise "/usr/bin/dumb-init …" 21 seconds ago Up 15 seconds 0.0.0.0:3000-3002->3000-3002/tcp aerospike
Test your Docker installation
Before you start developing clients, use
Aerospike Quick Look (AQL)
, Aerospike’s command-line data browser, to insert and read records to verify that the database is running.
Run the following command to install and run the Aerospike tools container image and AQL tool:
docker run -it container.aerospike.com/aerospike/aerospike-tools aql -h $( docker inspect -f ' {{.NetworkSettings.IPAddress}} ' aerospike )
The command invokes
aql
in the
aerospike/aerospike-tools container
, providing AQL’s
-h
option with the IP address of the Aerospike Database container with the
docker inspect
command.
After you run the command, the
aql
command prompt appears.
Run the following example commands to create some new records in the default namespace
test
and a new set
birds
. In this example, we log bird sightings and their locations.
AQL does not require a semicolon to terminate a single command, but you can use semicolons to combine multiple commands. The following example executes three record inserts in a single terminal command.
insert into test . birds (PK, species, location ) values ( 1 , ' scrub jay ' , ' Mountain View ' );
insert into test . birds (PK, species) values ( 2 , ' seagull ' );
insert into test . birds (PK, location , species) values ( 3 , ' Palo Alto ' , ' snowy plover ' )
Query the database:
AQL output
+----+-----------------+----------------+
| PK | location | species |
+----+-----------------+----------------+
| 3 | "Palo Alto" | "snowy plover" |
| 1 | "Mountain View" | "scrub jay" |
+----+-----------------+----------------+
3 rows in set (0.049 secs)