Generate Cluster Reports

As of version 1.9.7, SingleStoreDB Toolbox supports generating cluster reports via the Kube API for Kubernetes.

Notice

SingleStore Tools must be installed on the same Linux host that has Kube API access to the cluster. This is a requirement as the Kube config is first used to make the connection, and then generate and pull the report.

The instructions for installing SingleStore Tools are provided below.

Install SingleStore Tools

Caution

Studio should be installed on a host that is open to local (internal) network traffic only, and not open to the Internet.

Run the following commands to install SingleStore 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 Tools cannot be installed using the steps above, verify that the SingleStore 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

After verifying the above, re-run the commands to install SingleStore Tools.

  1. SingleStore packages are signed to ensure integrity, so the GPG key needs to be added to this host. When done, verify that the SingleStore signing key has been added using apt-key list.

    wget -O - 'https://release.memsql.com/release-aug2018.gpg'  2>/dev/null | sudo apt-key add - && apt-key list
  2. Verify you have apt-transport-https installed.

    apt-cache policy apt-transport-https

    If apt-transport-https is not installed, you must install it before proceeding.

    sudo apt -y install apt-transport-https
  3. Add the SingleStore repository to retrieve its packages.

    echo "deb [arch=amd64] https://release.memsql.com/production/debian memsql main" | sudo tee /etc/apt/sources.list.d/memsql.list
  4. To install the management tools, client application, and Studio, run the following.

    sudo apt update && sudo apt -y install singlestoredb-toolbox singlestore-client singlestoredb-studio

Generate a Cluster Report

There are two ways of running the collect-kube command to generate a cluster report:

  1. Run from anywhere using a kubeconfig file, which can be specified either from the KUBECONFIG environment variable or by the --config-file flag.

  2. Run from inside a Pod. Known as an in-cluster configuration, this method doesn't require any configuration files. The service account should be configured properly to allow Kubernetes API calls, such as listing Pods.

    Note that the image for the Pod that runs sdb-report collect-kube must have the sdb-report binary available, such as via a memsql/tools image). Generally, this works just like kubectl does, with no installation required.

To generate a cluster report, run the following command. The name of the cluster can be found by running kubectl get memsql.

sdb-report collect-kube -ns <name-space> --cluster-name <name-used-for-the-cluster>

Note: If the Operator logs are missing, run the following command.

kubectl label deployment <operator> app.kubernetes.io/component=operator

Refer to sdb-report collect-kube for more information.