Trustee can be deployed in several different configurations. Either way, Trustee should be deployed in a trusted environment. This could be a local server, some trusted third party, or even another enclave. Official support for deploying Trustee inside of Confidential Containers is being developed.
This is the multi-page printable view of this section. Click here to print.
Installation
1 - Trustee Operator
Trustee can be installed on Kubernetes using the Trustee operator. When running Trustee in Kubernetes with the operator, the cluster must be Trusted.
Install the operator
The operator (release v0.3.0 at the time of writing) is available in the Operator Hub.
Please follow the installation steps detailed here.
Verify that the controller is running.
kubectl get pods -n operators --watch
The operator controller should be running.
NAME READY STATUS RESTARTS AGE
trustee-operator-controller-manager-77cb448dc-7vxck 1/1 Running 0 11m
Deploy Trustee
An example on how to configure trustee is provided in this blog.
After the last configuration step, check that the Trustee deployment is running.
kubectl get pods -n operators --selector=app=kbs
The Trustee deployment should be running.
NAME READY STATUS RESTARTS AGE
trustee-deployment-f97fb74d6-w5qsm 1/1 Running 0 25m
Uninstall
Remove the Trustee CRD.
CR_NAME=$(kubectl get kbsconfig -n operators -o=jsonpath='{.items[0].metadata.name}') && kubectl delete KbsConfig $CR_NAME -n operators
Remove the controller.
kubectl delete Subscription -n operators my-trustee-operator
kubectl delete csv -n operators trustee-operator.v0.3.0
2 - Trustee in Docker
Trustee can be installed using Docker Compose.
Installation
Clone the Trustee repo.
git clone https://github.com/confidential-containers/trustee.git
Setup authentication keys.
openssl genpkey -algorithm ed25519 > kbs/config/private.key
openssl pkey -in kbs/config/private.key -pubout -out kbs/config/public.pub
Run Trustee.
docker compose up -d
Uninstall
Stop Trustee.
docker compose down