Install EGS
This topic describes the steps to install EGS on the cluster using the script provided in the repository.
The following is the workflow of the script:
- As the first step, the script ensures that all prerequisites are met.
- It validates access to necessary Kubernetes clusters using Kubernetes context.
- It installs or updates the helm charts:
- Install or upgrade the controller.
- Install or upgrade the EGS user interface.
- It installs the controller, creates the default project, and does cluster management:
- Creates defined projects in the controller.
- Registers defined clusters within these projects.
- It installs or upgrades worker nodes, applying the necessary configuration.
Clone the Repository
Clone the repository using the following command:
git clone https://github.com/kubeslice-ent/egs-installation.git
Ensure the YAML configuration file is correctly formatted and contains all necessary fields.
The script will exit with an error if any critical steps fail unless configured to skip on failure.
Paths specified in the YAML file must be relative to the base_path
unless absolute paths are used.
Modify the Configuration File
-
Navigate to the cloned repository and locate the input configuration YAML
egs-installer-config.yaml
file. -
Update the following mandatory parameters:
a. Insert the image pull secrets received though email as part of the registration process.
global_image_pull_secret:
repository: "https://index.docker.io/v1/"
username: "" # Global Docker registry username (MANDATORY)
password: "" # Global Docker registry password (MANDATORY)b. Set the Kubernetes global
kubeconfig
andkubecontext
parameters.global_kubeconfig: "" # Relative path to global kubeconfig file from base_path default is script directory (MANDATORY)
global_kubecontext: "" # Global kubecontext (MANDATORY)
You can add the kubeslice.io/managed-by-egs=false
label to GPU nodes.
This label excludes or filters the associated GPU nodes from the EGS inventory.
Run the Installation Script
The installation script creates a default project workspace and register worker cluster.
Use the following command to run the script:
./egs-installer.sh --input-yaml egs-installer-config.yaml
Troubleshooting
- For missing binaries, ensure all required binaries are installed and accessible in your system's PATH.
- For cluster access issues, verify that kubeconfig files configuration so the script can access the clusters specified in the YAML configuration.
- For timeout issues, if a component fails to install within the specified timeout, increase the verify_install_timeout in the YAML file.
Uninstall EGS
To uninstall EGS, use the script uninstall.sh
provided in the cloned repository.