confidential-containers / cloud-api-adaptor

Ability to create Kata pods using cloud provider APIs aka the peer-pods approach
Apache License 2.0
44 stars 71 forks source link

New GCP Provider: Using kata's main branch #1839

Open beraldoleal opened 1 month ago

beraldoleal commented 1 month ago

After a quite journey making kata-containers gogoprotobuff free and trying to make caa compatible with kata-containers's main, we are getting really closer to switch to main, thanks to @stevenhorsman's work (PR #1754).

Since the initial attempt from cfircohen (#1212), a lot has changed in our repository and codebase. While doing some internal experiments/tests to predict possible issues with kata's main this week, I had to rebase on top of Steve' work, that is:

I was able to start a container within GCP using CAA + kata-container's main branch:

$ kubectl describe pods/busybox3 | grep -i runtime
Runtime Class Name:  kata-remote
Node-Selectors:              katacontainers.io/kata-runtime=true

root@ubuntu2204:~# kubectl get pods/busybox3
NAME       READY   STATUS    RESTARTS   AGE
busybox3   1/1     Running   0          11m

$ sudo journalctl -xe  --since  22:00:00 | grep created -i | grep busybox3
May 08 22:08:35 ubuntu2204 crio[11657]: time="2024-05-08 22:08:35.729239726Z" level=info msg="Created container 7e0497bbaf4a895d288630fa1fa8c71a3eec8e9010f10b38e0fd0b61ff027417: default/busybox3/busybox3" id=d01deb2b-9737-4cc5-b3f9-b9a3f12dcd1f name=/runtime.v1.RuntimeService/CreateContainer

$ gcloud compute instances list | grep busybox3
podvm-busybox3-b9a8376c   us-east1-b  e2-medium                  10.142.15.233  34.139.165.15  RUNNING

@alexmwu, Since you are joining the effort, and writing the tests, probably you will need those changes, if not there yet.

beraldoleal commented 4 days ago

WiP: Implementing provisioning interface in order to send tests soon.