Remote and Kubernetes are the two control plane deployment models. This guide deploys a remote control plane on a single Linux host over SSH. For Kubernetes, start at Kubernetes - Prepare a cluster.
Remote host - deploy control plane
Every edge compute network starts with a control plane that manages cluster resources.
In this guide, the control plane runs a single Controller instance on a remote host.
Procedures below use YAML that potctl applies. Field reference: Control plane YAML reference.
Set auth.mode: embedded in your control plane YAML. See Embedded OIDC for bootstrap credentials and console URLs.
For production, enable Controller HTTPS on remote controllers (controllers[].https or spec.tls). Configure Router and NATS site and local CAs when you use custom trust anchors. See Securing the cluster (TLS sections).
Deploy a control plane on a remote host
Create controlplane.yaml:
---
apiVersion: datasance.com/v3
kind: ControlPlane
metadata:
name: albatros
spec:
iofogUser:
name: Foo
surname: Bar
password: iht234g9afhe
controller:
publicUrl: http://<controller-ip>:51121
consoleUrl: http://<controller-ip>
package:
image: ghcr.io/datasance/controller:v3.8.0
auth:
mode: embedded
bootstrap:
username: admin
password: LocalTest12!
systemMicroservices:
router:
amd64: ghcr.io/datasance/router:3.8.0
arm64: ghcr.io/datasance/router:3.8.0
riscv64: ghcr.io/datasance/router:3.8.0
arm: ghcr.io/datasance/router:3.8.0
nats:
amd64: ghcr.io/datasance/nats:2.14.3
arm64: ghcr.io/datasance/nats:2.14.3
riscv64: ghcr.io/datasance/nats:2.14.3
arm: ghcr.io/datasance/nats:2.14.3
events:
auditEnabled: true
retentionDays: 14
captureIpAddress: true
nats:
enabled: true
controllers:
- name: alpaca-1
host: <controller-ip-for-ssh>
ssh:
user: bar
keyFile: ~/.ssh/id_rsa
Edit host, ssh.user, and ssh.keyFile for your remote host. Set systemMicroservices architecture keys to match the host CPU.
Deploy:
potctl deploy -f controlplane.yaml
Verify the deployment
potctl get controllers
potctl describe controller alpaca-1
potctl describe controlplane
With the control plane running, go to Set up Edgelet nodes to provision Edgelet v1.0.0 on your edge hosts.