The first step in deploying your cluster is to download and install the SingleStore DB Tools on one of the hosts in your cluster. This host will be designated as the main deployment host for deploying MemSQL across your other hosts and setting up your cluster.
These tools perform all major cluster operations including downloading the latest version of MemSQL onto your hosts, assigning and configuring nodes in your cluster, and other management operations.
For the purpose of this guide, the main deployment host is the same as the designated Master Aggregator of the MemSQL cluster
Note: If MemSQL is installed as a sudo
user via packages, systemd
will automatically start the associated MemSQL processes when a host is rebooted. Tarball-based installs will not restart services when a host is rebooted unless manually configured by the user.
Online Deployment
For an online deployment, where the main deployment host can access the MemSQL YUM repository, run the following commands to install SingleStore DB Tools.
sudo yum-config-manager --add-repo https://release.memsql.com/production/rpm/x86_64/repodata/memsql.repo && \
sudo yum install -y singlestore-client singlestoredb-toolbox singlestoredb-studio
Troubleshooting
If SingleStore DB Tools cannot be installed using the steps above, verify that the MemSQL repo information is listed under repolist
.
sudo yum repolist
****
repo id repo name status
memsql MemSQL 125
Verify that the which
package is installed. This is used during the install process to identify the correct package type for your installation.
rpm -q which
If which
is not installed, you must install it before proceeding.
sudo yum install -y which
If you cannot install which
, you will need to specify the correct package type (either rpm
or deb
) during the deployment phase.
After verifying the above, re-run the commands to install SingleStore DB Tools.
Offline Deployment
For an offline deployment, where the main deployment host cannot access the MemSQL YUM repository, download the following MemSQL packages onto a device with access to the main deployment host.
singlestore-client singlestoredb-toolbox singlestoredb-studio memsql-serverCopy the singlestore-client
, singlestoredb-toolbox
, and singlestoredb-studio
packages onto the main deployment host and install them using rpm
.
sudo rpm -ivh /tmp/singlestore-client-<version>.x86_64.rpm && \
sudo rpm -ivh /tmp/singlestoredb-toolbox-<version>.x86_64.rpm && \
sudo rpm -ivh /tmp/singlestoredb-studio-<version>.x86_64.rpm
You do not need to install the memsql-server
package in this step. It will be installed as part of deployment, which is shown in the next step.
Online Deployment
For an online deployment, where the main deployment host can access the MemSQL APT repository, run the following commands to install SingleStore DB Tools.
wget -O - 'https://release.memsql.com/release-aug2018.gpg' 2>/dev/null | sudo apt-key add - && apt-key list && \
apt-cache policy apt-transport-https && \
sudo apt -y install apt-transport-https && \
echo "deb [arch=amd64] https://release.memsql.com/production/debian memsql main" | sudo tee /etc/apt/sources.list.d/memsql.list && \
sudo apt update && sudo apt -y install singlestore-client singlestoredb-toolbox singlestoredb-studio
Offline Deployment
For an offline deployment, where the main deployment host cannot access the MemSQL YUM repository, download the following MemSQL packages onto a device with access to the main deployment host.
singlestore-client singlestoredb-toolbox singlestoredb-studio memsql-serverThen copy the singlestore-client
, singlestoredb-toolbox
, and singlestoredb-studio
packages onto the main deployment host and install them using dpkg
.
sudo dpkg -i singlestore-client_<version>_amd64.deb && \
sudo dpkg -i singlestoredb-toolbox_<version>_amd64.deb && \
sudo dpkg -i singlestoredb-studio_<version>_amd64.deb
You do not need to install the memsql-server
package in this step. It will be installed as part of deployment, which is shown in the next step.
Download MemSQL Files
Download the following MemSQL tarball files onto a device with access to the main deployment host.
singlestore-client singlestoredb-toolbox singlestoredb-studio memsql-serverTransfer MemSQL Files
Transfer the singlestore-client
, singlestoredb-toolbox
, singlestoredb-studio
, and memsql-server
tarball files into a dedicated singlestore
directory that has been configured so that non-sudo
users can access on the main deployment host, such as /home/<user>/memsql
or /opt/memsql
.
Unpack MemSQL Files
Note: For the remainder of this document, <version>-<commit-hash>
will be written simply as <version>
.
Unpack singlestore-client
, singlestoredb-toolbox
, and singlestoredb-studio
into the singlestore
directory.
tar xzvf singlestore-client-<version>.tar.gz && \
tar xzvf singlestoredb-toolbox-<version>.tar.gz && \
tar xzvf singlestoredb-studio-<version>.tar.gz
You do not need to unpack the memsql-server
file in this step. It will be installed as part of deployment, which is shown in the next step.