CockroachDB configuration preparation
These steps reproduce how to generate Cockroach manifest files used in TeraFlowSDN and apply them to MicroK8s. For stability reasons, we fix the versions providing the manifest files. In future releases of TeraFlowSDN, we might consider dynamically downloading and modifying the files.
Steps:
DEPLOY_PATH="manifests/cockroachdb" OPERATOR_BASE_URL="https://raw.githubusercontent.com/cockroachdb/cockroach-operator/master"
mkdir -p ${DEPLOY_PATH}
Apply Custom Resource Definition for the CockroachDB Operator
curl -o "
Deploy CockroachDB Operator
curl -o "
- add env var: WATCH_NAMESPACE=%TFS_CRDB_NAMESPACE%
sed s/%TFS_CRDB_NAMESPACE%/crdb/g ${DEPLOY_PATH}/operator.yaml >
Deploy CockroachDB
curl -o "
- set version
- set number of replicas
kubectl create namespace crdb kubectl apply --namespace crdb -f "${DEPLOY_PATH}/cluster.yaml"
Deploy CockroachDB Client
curl -o "
Add tfs user with admin rights
kubectl exec -it cockroachdb-client-secure --namespace crdb -- ./cockroach sql --certs-dir=/cockroach/cockroach-certs --host=cockroachdb-public CREATE USER tfs WITH PASSWORD 'tfs123'; GRANT admin TO tfs;
Expose CockroachDB SQL port (26257)
PORT=
PORT_MAP='{"containerPort": '
Expose CockroachDB Console port (8080)
PORT=
PORT_MAP='{"containerPort": '