Every Edge Compute Network ('ECN') starts with a Control Plane that allows you to manage your ECN's resources.
In this guide, our Control Plane will deploy a single Controller instance. Our enterprise solution can be used to deploy multiple, highly available Controller instances within a single Control Plane but that process is not covered here.
There are two flavours of Controller deployments - Vanilla and Kubernetes. If you have a Kubernetes cluster, you can deploy a Controller directly onto it. Otherwise, a Linux remote host will do just fine.
Create a template of controlplane.yaml like so:
echo "---
apiVersion: iofog.org/v1
kind: ControlPlane
metadata:
name: albatros-1
spec:
iofogUser:
name: Foo
surname: Bar
email: user@domain.com
password: iht234g9afhe
controllers:
- name: alpaca-1
kube:
config: ~/.kube/config" > /tmp/controlplane.yamlMake sure to specify the correct value for the kube.config field.
Once you have edited the fields to your liking, go ahead and run:
iofogctl deploy -f /tmp/controlplane.yamlNaturally, we can also use kubectl to see what is happening on the Kubernetes cluster.
kubectl get pods
kubectl get servicesThe next section covers how to do the same thing we just did, but on a remote host instead of a Kubernetes cluster. We can skip ahead.
Create a template of controlplane.yaml like so:
echo "---
apiVersion: iofog.org/v1
kind: ControlPlane
metadata:
name: albatros
spec:
iofogUser:
name: Foo
surname: Bar
email: user@domain.com
password: iht234g9afhe
controllers:
- name: alpaca-1
host: 38.101.23.2
ssh:
user: bar
keyFile: ~/.ssh/id_rsa" > /tmp/controlplane.yamlMake sure to edit the host, ssh.user, and ssh.keyFile fields to correspond with the remote host you are deploying to.
Once you have edited the fields to your liking, go ahead and run:
iofogctl deploy -f /tmp/controlplane.yamlWe can use the following commands to verify the Control Plane is up and running:
iofogctl get controllersiofogctl describe controller alpaca-1iofogctl describe controlplane