Flatcar compatibility

30 views
Skip to first unread message

Piotr Kowalczyk

unread,
Jun 13, 2023, 3:20:07 AM6/13/23
to Flatcar Container Linux User
Good morning, 

So there is a very interesting compatibility chart: https://www.flatcar.org/docs/latest/container-runtimes/getting-started-with-kubernetes/ - which we've just found, not being aware of it earlier. 
The problem is, that we currently have LTS (Flatcar 3033.3.13 (LTS 2022) with K8s v1.26.5 set up by kubespray (with calico) and don't really have any issues with it. Which gives us, according to this table above, a non-working system which actually works. 

Is it safe to deploy this to production or not then? Are there any specific issues I should be aware of? Is this docs up to date? Any ideas on how to approach this?

Best to all, 
Piotr Kowalczyk

-------------------------------
This document contains material that is confidential in CodiLime Sp. z o.o. DO NOT PRINT. DO NOT COPY. DO NOT DISTRIBUTE. If you are not the intended recipient of this document, be aware that any use, review, retransmission, distribution, reproduction or any action taken in reliance upon this message is strictly prohibited. If you received this in error, please contact the sender and he...@codilime.com. Return the paper copy, delete the material from all computers and storage media.

Flatcar Container Linux User

unread,
Jun 13, 2023, 3:33:03 AM6/13/23
to Flatcar Container Linux User
Hi Piotr,

Yes the docs are up to date. Our chart is about compatibility of Flatcar (as shipped) with vanilla Kubernetes, as that is what we can test during a release. During testing of K8s v1.26 we found that it requires containerd 1.6+ while LTS ships with containerd 1.5 and per LTS update policy it won't be updated (https://github.com/flatcar/Flatcar/issues/916).

I don't know what exactly kubespray does but if it deploys its own containerd, then that would allow it to work. If it works for you then we do our best to make sure an LTS update won't break it.

Hope that helps,
Jeremi

Mathieu Tortuyaux

unread,
Jun 13, 2023, 3:35:22 AM6/13/23
to Piotr Kowalczyk, Flatcar Container Linux User
Hello Piotr and thanks for your question,

Flatcar LTS 3033 has been excluded from the CI when we were hitting this issue (see: https://github.com/flatcar/mantle/pull/408):
```
1Jan 17 00:32:53.106028 kubelet[1553]: E0117 00:32:53.105999    1553 run.go:74] "command failed" err="failed to run Kubelet: validate service connection: CRI v1 runtime API is not implemented for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.RuntimeService"
```

Which was caused by a too old version of containerd shipped by the OS - is that possible that you use a different version of containerd?

Thanks and have a nice day,

Mathieu Tortuyaux



--
You received this message because you are subscribed to the Google Groups "Flatcar Container Linux User" group.
To unsubscribe from this group and stop receiving emails from it, send an email to flatcar-linux-u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/flatcar-linux-user/CADNHcE6o5dmohxw-Yo3R4UvkVHhmVUcvXB3S6CWjbvy%2BDwfBCw%40mail.gmail.com.

Piotr Kowalczyk

unread,
Jun 13, 2023, 3:51:10 AM6/13/23
to Mathieu Tortuyaux, Flatcar Container Linux User
Mathieu,

This is configuration I'm using:
  links:
    # Make sure that the future built-in Docker/containerd sysext images won’t be enabled.
    - path: /etc/extensions/docker-flatcar.raw
      target: /dev/null
    - path: /etc/extensions/containerd-flatcar.raw
      target: /dev/null


So apparently we're not using containerd shipped with Flatcar OS. There's containerd v1.7.1, which is shipped by kubespray 2.22 (with k8s 1.26).

And I now see Flatcar ships containerd 1.6.x across all releases, which gives a  lot of sense to the compatibility table, putting me on pretty good ground at the same time. 

Many thanks for this clarification!

Best, 
Piotr Kowalczyk

Mathieu Tortuyaux

unread,
Jun 13, 2023, 4:10:35 AM6/13/23
to Piotr Kowalczyk, Flatcar Container Linux User
Piotr,

Awesome! I'm going to update the documentation to mention that the compatibility matrix is done based on software shipped by Flatcar (and not from third-party configuration). Happy to hear that Kubespray is working fine with Flatcar, any chance to share some details on your installation if you've faced some issues (here or on Slack / Matrix channel) ? We could reference this installation method under this section: https://www.flatcar.org/docs/latest/container-runtimes/getting-started-with-kubernetes/#deploy-a-kubernetes-cluster-with-flatcar

Thanks and have a great day,

Mathieu
Reply all
Reply to author
Forward
0 new messages