/
v2.4.2 Using Exostellar xli

v2.4.2 Using Exostellar xli

Overview

xli is the command-line interface (CLI) for Exostellar’s Management Server (EMS). It enables users to manage images, environments, and profiles, by adding, removing, and updating them. Additionally, xli allows users to start and stop nested sandboxes, export configuration and logs, generate new common certificates, check the validity of the CA, and check the meta data of the EMS head node.

xli tool: Version 1.0.2

Platform

Architecture

File

Release Date

Platform

Architecture

File

Release Date

macOS

ARM64

​Mar 3, 2025

macOS

x86_64

​Mar 3, 2025

Linux

ARM64

​Mar 3, 2025

Linux

i386

​Mar 3, 2025

Linux

x86_64

​Mar 3, 2025

For macOS users, please grant xli permissions by clicking the “Allow Anyway” button in the Security settings. This button is available for about an hour after you try to open the app. You can access the Security settings by choosing Apple Menu System Settings, then clicking Privacy & Security in the sidebar.

Configuration

EMS Head Node Configuration

By default, xli connects to the EMS head node API on the local host and can be configured to connect to the EMS head node in two ways:

  1. Using an Environment Variable

export EMS_ADDRESS=<public_ip_of_ems>
  1. Using the Command Line

xli <sub-command> --address <public_ip_of_ems>

The flag takes precedence if both the environment variable and the --address flag are used.

Certification Configuration

The certificates must be properly configured when running xli on a remote machine. These files can be obtained in two ways:

  1. Downloading from the Settings page of EMS UI Console.

  2. Using xli to fetch the files automatically.
    xli will install the files in the user's home directory at ~/.xli. To download them using xli, a valid SSH key for the ‘rocky’ user is required to access the EMS instance:

    xli get-pem -k </path/to/ssh/key>

Usage

xli [flags]/[commands]

Available Commands

Commands

Explanations

Commands

Explanations

get-pem

Retrieve the cert file using the key from the EMS

cert

Get and upload certificates

license

Add and get licenses

profile

Add, update, remove, and list profiles

env

Add, update, remove, and list environments

image

Add, update, remove, and list images

node

List all nodes in the EMS cluster

xcompute

Get EMS info and export/import configurations

completion

Generate the autocompletion script for the specified shell

Flags

Commands

Explanations

Commands

Explanations

--address string

Address of the EMS (default "localhost:5000")

-h, --help

Help for xli

-v, --version

Version for xli

Workflow Example

Updating a profile or environment

The update process follows these steps:

  1. Retrieve the current JSON representation of the profile or environment.

  2. Modify the JSON as needed.

  3. Push the updated JSON back to the EMS head node.

Below is an example using the default profile az1.

xli profile get -n az1 > az1.json / xli profile get -n az1 -y > az1.yaml <Update JSON> xli profile update -p az1.json/az1.yaml