The x-install
tool is the newest Exostellar installer designed to simplify the setup process. It offers a variety of subcommands to provision a sandbox environment, install Exostellar products, and verify post-installation readiness.
Prerequisites
Before using the x-install
tool, ensure that your environment meets the following requirements:
Terraform: Version 1.8+
kubectl: Version 1.28+
Helm: Version 3.14.2+
AWS Authentication, Credentials, and Region
Please properly configure AWS authentication and default region in your local environment.
Ensure the account has the following IAM permissions:
Valid AWS Marketplace Subscriptions for Exostellar Management Server, Exostellar Controller, Exostellar Worker AMIs for the same AWS account
SSH Key
x-install
tool: Version 0.0.10+
Installation Steps
1. Create a Standalone Stack
Use the following command to create a standalone stack:
(Please modify the stack name, VPC CIDR, SSH key pair, and region to suit your environment.)
x-install create-standalone \ --stack-name=xio-standalone \ --vpc-cidr=10.0.0.0/16 \ --ssh-key-pair-name=my-dev-key \ --region=us-east-2
The new VPC and EKS cluster will inherit the stack name.
The VPC will be assigned the CIDR block
10.0.0.0/16
.The EC2 SSH key pair,
my-dev-key
, will be used to access the Exostellar Management Server.
2. Verify Post-Installation Readiness
After the standalone stack is successfully created, use the following command to check if the stack is ready:
x-install post-install --stack-name=xio-standalone --ssh-private-key-file=my-dev-key.pem --ssh-username=rocky
It might take a few attempts for post-install
to pass all system units and containers readiness checks, due to infrastructure readiness latency.
3. Add an X-Compute Node to the Standalone EKS Cluster
To add an X-Compute node to the newly created standalone EKS cluster, first SSH into the Exostellar Management Server:
ssh -i "my-dev-key.pem" rocky@<management-server-public-ip>
On the server, run the following command to add a new node to the EKS cluster:
eks-node-cli add -n node-00 -c 1 -m 4096 -p pool-a -r az1 -k xio-standalone
The new node can be verified using the kubectl
command:
kubectl get node -l eks.amazonaws.com/nodegroup=x-compute
Please ensure ~/.kube/config
is set up properlyhttps://exostellar.atlassian.net/browse/EXO-4033. It takes a couple of minutes for the x-compute node to boot and show up.
The output should display the new nodes as ready:
NAME STATUS ROLES AGE VERSION ip-10-0-39-220.us-west-1.x-compute.internal Ready <none> 4m17s v1.29.3-eks-ae9a62a
By default, the EKS token used to access the standalone EKS cluster expired after 60 minutes. Following that, all attempts to access the cluster will fail with Unauthorized
errors.
To generate a new EKS token and use it with your existing kubeconfig
file, run:
x-install update-kubeconfig --stack-name=xio-standalone
4. Clean Up
Once the free trial period is over, the entire standalone stack can be deleted with the destroy
command:
x-install destroy --stack-name xio-standalone
In some cases, Terraform might time out during the destroy process. If this happens, simply re-run the command to allow Terraform to reconcile its final state.
At this time, all controllers and workers EC2 instances need to be manually terminated.
Additional Help and Support
To explore other subcommands, use the following command for a list of available options:
x-install help
If you encounter any issues, please take a screenshot of your x-install
output and download your ~/.xio/
folder. Then, submit both to Exostellar Customer Support for further assistance.