{"id":16898621,"url":"https://github.com/afbjorklund/buildroot4kubernetes","last_synced_at":"2025-04-11T14:21:31.288Z","repository":{"id":43815912,"uuid":"266886369","full_name":"afbjorklund/buildroot4kubernetes","owner":"afbjorklund","description":"Minimal linux distribution for running kubernetes (\"boot2kubeadm\")","archived":false,"fork":false,"pushed_at":"2024-04-01T12:15:45.000Z","size":2244,"stargazers_count":24,"open_issues_count":2,"forks_count":5,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-06T10:13:13.473Z","etag":null,"topics":["buildroot","docker","kubernetes","raspberry-pi"],"latest_commit_sha":null,"homepage":"https://kutter-os.github.io","language":"Makefile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/afbjorklund.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-05-25T21:46:06.000Z","updated_at":"2024-11-11T21:39:23.000Z","dependencies_parsed_at":"2024-10-13T17:44:46.104Z","dependency_job_id":"d313549b-8d44-42af-a4cd-4789b7c41eb5","html_url":"https://github.com/afbjorklund/buildroot4kubernetes","commit_stats":null,"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afbjorklund%2Fbuildroot4kubernetes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afbjorklund%2Fbuildroot4kubernetes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afbjorklund%2Fbuildroot4kubernetes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/afbjorklund%2Fbuildroot4kubernetes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/afbjorklund","download_url":"https://codeload.github.com/afbjorklund/buildroot4kubernetes/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248418122,"owners_count":21100190,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["buildroot","docker","kubernetes","raspberry-pi"],"created_at":"2024-10-13T17:44:34.035Z","updated_at":"2025-04-11T14:21:31.267Z","avatar_url":"https://github.com/afbjorklund.png","language":"Makefile","funding_links":[],"categories":[],"sub_categories":[],"readme":"buildroot4kubernetes\n====================\n\nBuild a minimal environment with Buildroot, enough for running kubeadm for Kubernetes.\n\nSo basically the \"bigger brother\" of boot2docker... Or a smaller version of minikube.iso.\n\nInterface            | Implementation | Notes\n---------            | -------------- | -----\nContainer Runtime    | docker         | `cri-dockerd`*\nContainer Networking | flannel        | VXLAN backend\nContainer Storage    | nfs            | ReadWriteMany\n\n\\* Needed for Kubernetes 1.24 and later only\n\nWritten by Anders Björklund (@afbjorklund)\n\n\nKernel\n* namespaces\n* cgroups\n* overlayfs\n* nat\n* bridge\n* conntrack\n* vxlan\n\nUser\n* systemd\n* glibc (required by systemd)\n* docker\n* containerd (required by dockerd)\n* bash\n* iptables\n* conntrack (required since 1.18)\n\n\n![graph size](graph-size.png)\n\nBootable image:\n\nx86_64\n```\n192M\toutput/disk.img.gz\n```\n\nFlashable image:\n\naarch64\n```\n174M\toutput/sdcard.img.zip\n```\n\nKubernetes bin:\n\n```\n45M\t/usr/bin/kubeadm\n46M\t/usr/bin/kubectl\n116M\t/usr/bin/kubelet\n```\n\nRequired images:\n\n```console\n$ kubeadm config images list\nregistry.k8s.io/kube-apiserver:v1.28.8\nregistry.k8s.io/kube-controller-manager:v1.28.8\nregistry.k8s.io/kube-scheduler:v1.28.8\nregistry.k8s.io/kube-proxy:v1.28.8\nregistry.k8s.io/pause:3.9\nregistry.k8s.io/etcd:3.5.12-0\nregistry.k8s.io/coredns/coredns:v1.10.1\n```\n\nAdditional images:\n\n```\ndocker.io/flannel/flannel:v0.23.0\n```\n\n![image size](image-size.png)\n\n`docker pull` (gzip):\n\n```\n33M\timages/registry.k8s.io/kube-apiserver_v1.28.8\n32M\timages/registry.k8s.io/kube-controller-manager_v1.28.8\n18M\timages/registry.k8s.io/kube-scheduler_v1.28.8\n27M\timages/registry.k8s.io/kube-proxy_v1.28.8\n304K\timages/registry.k8s.io/pause_3.9\n54M\timages/registry.k8s.io/etcd_3.5.12-0\n16M\timages/registry.k8s.io/coredns/coredns_v1.10.1\n27M\timages/docker.io/flannel/flannel_v0.23.0\n203M\ttotal\n```\n\n`docker save | xz`:\n\n```\n139M\timages.txz\n```\n\n```\nStrms  Blocks   Compressed Uncompressed  Ratio  Check   Filename\n    1      41    138,8 MiB    630,0 MiB  0,220  CRC32   images.txz\n```\n\nDevice layout:\n\n| QEMU | File          | Media | Device   | Used for          | Size |\n| ---- | ------------- | ----- | -------- | ----------------- | ---- |\n| -hda | disk.img      | disk  | /dev/sda | Persistent `/var` |  20g |\n| -hdb | data.img      | disk  | /dev/sdb | Persistent `/data`|   5g |\n| -hdc | buildroot.iso | cdrom |          | Buildroot booting | 137m |\n| -hdd | images.iso    | cdrom | /dev/sdc | Kubernetes images | 160m |\n\nReference board:\n\n`pc` (bios)\n\n```\n4.9M\toutput/images/bzImage\n84M\toutput/images/rootfs.ext2\n```\n\n`raspberrypi3-64`\n\n```\n18M    output/images/boot.vfat\n75M    output/images/rootfs.ext4\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fafbjorklund%2Fbuildroot4kubernetes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fafbjorklund%2Fbuildroot4kubernetes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fafbjorklund%2Fbuildroot4kubernetes/lists"}