Ok great, you have a cluster host prepared and your management machine prepped and ready to go. The next step is to take the cluster host under management of your SSME with the
ss-remote command, a bash alias for
Taking a Cluster Host under Management
Taking a remote SSH endpoint under management is as simple as issuing the following command which creates a new LXD remote called
dev. The SSME will reach out to
clusterhost01.domain.tld (defined in your DNS server) using SSH/t and installs and initializes LXD on the remote host.
ss-remote dev clusterhost01.domain.tld --disk=/dev/nvme0n1p3
--disk flag should be set to the device corresponding to the large UNFORMATTED partition.
You can also specify
--data-plane-interface=<eno1> is the physical network interface that VMs will attach to expose services on the network underlay (i.e.,
SERVERS_VLAN). Note, if you only have ONE physical interface on the device, it is UNNECESSARY to specify the
--data-plane-interface. If you have two or more physical interfaces, then you can separate the data plane from the management plane.
If this is the first time you're running the command, Sovereign Stack will stub
~/ss/remotes/dev/remote.conf . You should review the config file and set it up to match your particular requirements, then run the
ss-remote command again so it completes.
# see https://www.sovereign-stack.org/ss-remote for more info! LXD_REMOTE_PASSWORD="NGFnZo05I1OYRhbLBPA=" DEPLOYMENT_STRING="(dev|regtest),(staging|testnet)" # REGISTRY_URL=http://registry.domain.tld:5000
LXD_REMOTE_PASSWORD is automatically generated for you. But
DEPLOYMENT_STRING requires some consideration. In the above example, you can expect TWO distinct deployments, one called
dev running on
regtest, and one called
staging running on bitcoin
production-mainnet would be the next obvious choice.
At the end of
remote.sh, a new LXD remote is created in your SSME. Finally, the lxc client is switched to the remote such that any subsequent
lxc commands target that remote. You can use
lxc remote list to get information about your currect remotes, including the active remote.
lxc remote get-default is another useful command.
ss-remoteagain to establish control over an existing remote endpoint.