Install Simplyblock Control Plane on Kubernetes
Install CLI
pip install sbctl --upgrade
After installing the CLI, navigate to the Helm chart directory within the installed package:
cd /usr/local/lib/python3.9/site-packages/simplyblock_core/scripts/charts/
Then build the Helm dependencies and deploy the simplyblock control plane:
helm dependency build ./
helm upgrade --install sbcli --namespace simplyblock --create-namespace ./
Before running the helm install, you can edit the values.yaml file to match your specific configuration.
For example, to set cluster parameters, storage options, monitoring secret or node selectors according to your environment.
| Service | Direction | Source / Target Network | Port | Protocol(s) |
|---|---|---|---|---|
| ICMP | ingress | control | - | ICMP |
| Cluster API | ingress | storage, control, admin | 80 | TCP |
| FoundationDB | ingress | storage, control | 4500 | TCP |
| Cluster Control | egress | storage, control | 8080-8890 | TCP |
| spdk-http-proxy | egress | storage, control | 5000 | TCP |
| spdk-firewall-proxy | egress | storage, control | 5001 | TCP |
Find and exec into the admin control pod (replace the pod name if different):
kubectl -n simplyblock exec -it simplyblock-admin-control-<uuid> -- bash
Install Control Plane
sbctl cluster create --mgmt-ip <WORKER_IP> --ha-type ha --mode kubernetes
Info
You need to add additional parameter when using a Loadbalancer --ingress-host-source loadbalancer and --dns-name <LB_INGRESS_DNS>
Additional parameters for the cluster create command can be found at Cluster Deployment Options.