This repository contains the Oxide Rancher machine driver, also known as a node driver in Rancher parlance. Rancher uses this node driver to provision virtual machines on Oxide and install Kubernetes on those virtual machines.
Upload a built binary somewhere accessible from Rancher. The binary name must
match the format docker-machine-driver-*
otherwise Rancher will error when
trying to create a new node driver.
Ensure your kubectl
context is configured to use your Rancher Kubernetes
cluster.
Create the following Kubernetes manifest.
---
apiVersion: management.cattle.io/v3
kind: NodeDriver
metadata:
name: oxide
annotations:
privateCredentialFields: token
publicCredentialFields: host,project
finalizers:
- controller.cattle.io/node-driver-controller
spec:
active: true
addCloudCredential: true
builtin: false
checksum: <SHA256SUM_OF_BINARY>
description: "Oxide Rancher node driver."
displayName: oxide
externalId: ""
uiUrl: ""
url: "https://example.com/docker-machine-driver-oxide"
Apply the Kubernetes manifest to create the Oxide Rancher node driver.
kubectl apply -f oxide-nodedriver.yaml
The default user interface is sufficient for most use cases.
In the future, Rancher UI Extensions can be used to extend the node driver UI.