This is a simple stateless deployment scenario. It can be used to both local and real cloud, such as AWS.
- Bootstrap
AWS:
Local:
bin/bootstrap-aws.sh
bin/bootstrap-local.sh
./start
To make sure they are up:
kubectl get pods
NAME READY STATUS RESTARTS AGE
efs-provisioner-57965c4946-7w4b5 1/1 Running 0 2d16h
esp-esp1-69b59769bd-94gm4 1/1 Running 0 16s
hpcc-admin 1/1 Running 0 19s
roxie-roxie1-64d49d76cf-b28gh 1/1 Running 0 15s
support-778c8ffbb-p44t7 1/1 Running 0 17s
thor-thor1-75bb466cbf-skqj5 1/1 Running 0 13s
thormaster-thor1 1/1 Running 0 14s
The cluster should be automatically configured and started. To verify the status
bin/cluster_run.sh status
Status of esp-esp1-69b59769bd-94gm4:
mydafilesrv ( pid 981 ) is running ...
esp1 ( pid 1175 ) is running ...
Status of roxie-roxie1-64d49d76cf-b28gh:
mydafilesrv ( pid 969 ) is running ...
roxie1 ( pid 1168 ) is running ...
Status of support-778c8ffbb-p44t7:
mydafilesrv ( pid 1006 ) is running ...
mydali ( pid 1200 ) is running ...
mydfuserver ( pid 1413 ) is running ...
myeclagent ( pid 1629 ) is running ...
myeclccserver ( pid 1832 ) is running ...
myeclscheduler ( pid 2049 ) is running ...
mysasha ( pid 2255 ) is running ...
Status of thor-thor1-75bb466cbf-skqj5:
mydafilesrv ( pid 962 ) is running ...
Status of thormaster-thor1:
mydafilesrv ( pid 969 ) is running ...
thor1 ( pid 1214 ) is running with 1 slave process(es) ...
``
## Scale up/down
Original roxie-roxie1 cluster has 1 instances. To increase it to 4 instances:
```console
kubeclt scale --replicas 2 StatefulSet/roxie-roxie1
NAME READY STATUS RESTARTS AGE
efs-provisioner-57965c4946-7w4b5 1/1 Running 0 2d16h
esp-esp1-69b59769bd-94gm4 1/1 Running 0 3m15s
hpcc-admin 1/1 Running 0 3m18s
roxie-roxie1-64d49d76cf-b28gh 1/1 Running 0 3m14s
roxie-roxie1-64d49d76cf-mflqn 1/1 Running 0 11s
support-778c8ffbb-p44t7 1/1 Running 0 3m16s
thor-thor1-75bb466cbf-skqj5 1/1 Running 0 3m12s
thormaster-thor1 1/1 Running 0 3m13s
To scale it back
kubeclt scale --replicas 1 Deployment/roxie-roxie1
A sample autoscaling yaml file is provided. You can modify it and apply it
kubectl apply -f esp-e1-hpa.yaml
Increase esp Pod cpu, for example run a big loop and monitor the auto-scaling.
The disable auto-scaling:
kubectl delete -f esp-e1-hpa.yaml
stop
bin/cluster-run stop
start
bin/cluster-run start
Get status
bin/cluster-run status
./stop