{"id":16288433,"url":"https://github.com/dekstroza/bare-metal-borg","last_synced_at":"2025-07-19T15:40:49.712Z","repository":{"id":36536279,"uuid":"40842070","full_name":"dekstroza/bare-metal-borg","owner":"dekstroza","description":"Bare metal kubernetes setup with ovs vxlan","archived":false,"fork":false,"pushed_at":"2015-08-21T12:24:44.000Z","size":160,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-04-09T07:14:25.241Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dekstroza.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-16T21:27:01.000Z","updated_at":"2017-06-16T14:13:48.000Z","dependencies_parsed_at":"2022-09-07T06:50:58.581Z","dependency_job_id":null,"html_url":"https://github.com/dekstroza/bare-metal-borg","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dekstroza/bare-metal-borg","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dekstroza%2Fbare-metal-borg","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dekstroza%2Fbare-metal-borg/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dekstroza%2Fbare-metal-borg/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dekstroza%2Fbare-metal-borg/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dekstroza","download_url":"https://codeload.github.com/dekstroza/bare-metal-borg/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dekstroza%2Fbare-metal-borg/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263573250,"owners_count":23482614,"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":[],"created_at":"2024-10-10T19:48:18.538Z","updated_at":"2025-07-04T16:07:05.046Z","avatar_url":"https://github.com/dekstroza.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# bare-metal-borg\nBare metal kubernetes setup with ovs vxlan\n\nIn order to run bare metal kubernetes, we need to set up overlay network. In this example, we have two hosts, HOST1 and HOST2, each host has eth0 interface with addresses: \n\nHOST1 has eth0 with: 159.107.152.3 \n\nHOST2 has eht0 with: 159.107.152.161\n\nBoth hosts should be able to ping each other over those addresses. I am also assuming here eth0 on both hosts has default MTU 1500. MTU on overlay network needs to be reduced, as vxlan will encapsulate traffic, here we will be setting it to 1446, why this number, you may ask:\n\nInner ethernet frame 1518 \n\nplus\n\nOuter IPv4 Header 20 bytes\n\nplus\n\nOuter UDP Header 8 bytes \n\nplus\n\nVXLAN Header(8 bytes) \n\ngives: 1554\n\nMTU 1500 - 1554  = 54 bytes overhead, so we will reduce our default mtu by 54 bytes, 1500 - 54 = 1446\n\n\nWe are setting up overlay network 10.244.0.0/16 where in the overlay network:\nHOST1 will have IP 10.244.1.1/24\nHOST2 will have IP 10.244.2.1/24\n\nDocker on both hosts will be using bridge cbr0 with these set: \n\n-b cbr0 --iptables=false --ip-masq=false --mtu=1446 \n\nKubernetes will run with dns enabled, and kubernetes binaries should be present on classpath.\nEverything from manifests should be on master, in directory /etc/kubernetes/manifests , on minion(s) this directory should be empty.\n\nIt should be noted that using these, one can expand network with arbitraty number of minions.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdekstroza%2Fbare-metal-borg","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdekstroza%2Fbare-metal-borg","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdekstroza%2Fbare-metal-borg/lists"}