{"id":13509527,"url":"https://github.com/FabEdge/fabedge","last_synced_at":"2025-03-30T13:32:26.080Z","repository":{"id":36980977,"uuid":"386570418","full_name":"FabEdge/fabedge","owner":"FabEdge","description":"Secure Edge Networking Solution Based On Kubernetes","archived":false,"fork":false,"pushed_at":"2024-06-27T01:26:41.000Z","size":5579,"stargazers_count":522,"open_issues_count":0,"forks_count":57,"subscribers_count":8,"default_branch":"main","last_synced_at":"2024-08-02T02:14:05.894Z","etag":null,"topics":["cloud-native","cncf","cni","iot","ipsec","k8s","kubernetes","multi-cluster","operator","sdn"],"latest_commit_sha":null,"homepage":"http://www.fabedge.io/","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/FabEdge.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG/CHANGELOG-0.2.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":"docs/roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-16T08:45:38.000Z","updated_at":"2024-08-01T06:40:56.000Z","dependencies_parsed_at":"2023-10-24T02:27:22.487Z","dependency_job_id":"f3a3373c-c996-4e02-823e-c9cf91fcb94f","html_url":"https://github.com/FabEdge/fabedge","commit_stats":null,"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabEdge%2Ffabedge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabEdge%2Ffabedge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabEdge%2Ffabedge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/FabEdge%2Ffabedge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/FabEdge","download_url":"https://codeload.github.com/FabEdge/fabedge/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222552889,"owners_count":17002160,"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":["cloud-native","cncf","cni","iot","ipsec","k8s","kubernetes","multi-cluster","operator","sdn"],"created_at":"2024-08-01T02:01:09.096Z","updated_at":"2024-11-01T09:31:36.885Z","avatar_url":"https://github.com/FabEdge.png","language":"Go","readme":"# FabEdge\n\n[![main](https://github.com/FabEdge/fabedge/actions/workflows/main.yml/badge.svg)](https://github.com/FabEdge/fabedge/actions/workflows/main.yml)\n[![Releases](https://img.shields.io/github/release/fabedge/fabedge/all.svg?style=flat-square)](https://github.com/fabedge/fabedge/releases)\n[![license](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/FabEdge/fabedge/blob/main/LICENSE)\n\n\u003cimg src=\"https://user-images.githubusercontent.com/88021699/132610524-c5adcbd3-d49a-4de4-94de-dab46d4a2ed5.jpg\" width=\"40%\"\u003e  \n\nEnglish | [中文](README_zh.md)\n\n\nFabEdge is a secure container networking solution based on Kubernetes, focusing on edge computing. It enables cloud-edge, edge-edge collaboration and solves the problems including complex configuration management, network isolation, unaware of the underlying topology, etc. It supports weak network, such as 4/5G, WiFi, etc. The main use cases are IoT, IoV, smart city, etc.\n\nFabEdge supports the major edge computing frameworks ,like KubeEdge/SuperEdge/OpenYurt.\n\nFabEdge not only supports edge nodes (remote nodes joined to the cluster via an edge computing framework such as KubeEdge), but also edge clusters (standalone K8S clusters).\n\nFabEdge is a sandbox project of the Cloud Native Computing Foundation (CNCF).\n\n\n## Features\n* **Kubernetes Native**: Compatible with Kubernetes, transparent to applications.  \n\n* **Automatic Configuration Management**: the addresses, certificates, endpoints, tunnels, etc. are automatically managed.\n\n* **Cloud-Edge/Edge-Edge Collaboration**: Secure tunnels between cloud-edge, edge-edge nodes for synergy.\n\n* **Topology-aware Service Discovery**: reduces service access latency, by using the nearest available service endpoint.\n\n\n## Advantages:\n\n- **Standard**: suitable for any protocol, any application.\n- **Secure**: Uses mature and stable IPSec technology, and a secure certificate-based authentication system.\n- **Easy to use**: Adopts the `Operator` pattern to automatically manage addresses, nodes, certificates, etc., minimizing human intervention.\n\n\n## How it works\n\u003cimg src=\"docs/images/FabEdge-Arch.png\" alt=\"fabedge-arch\" /\u003e\n\n* The cloud can be any Kubernetes cluster with supported CNI network plug-in, including Calico, Flannel, etc.\n* FabEdge builds a layer-3 data plane with tunnels in additional to the control plan managed by KubeEdge, SuperEdge, OpenYurt，etc.\n* FabEdge consists of **Operators, Connector, Agent, Cloud-Agent**.\n* Operator monitors k8s resources such as nodes, services, and endpoints in the cloud, and creates a configmap for each edge node, which contains the  configuration information such as the subnet, tunnel, and load balancing rules. The operator is also responsible to manage the life cycle of agent pod for each edge node.  \n* Connector is responsible to terminate the tunnels from edge nodes, and forward traffic between the cloud and the edge. It relies on the cloud CNI plug-in to forward traffic to other non-connector nodes in the cloud.\n* Cloud-Agent runs on the non-connector nodes in the cluster and manages the routes to remote peers.\n* Each edge node runs an agent and consumes its own configmap including the following functions:\n    - Manage the configuration file of the CNI plug-in of this node\n    - Manage the tunnels of this node\n    - Manage the load balancing rules of this node  \n\n* Fab-DNS runs in all the clusters, to provide the topology-aware service discovery capability by intercepting the DNS queries.    \n\n\n## FabEdge vs. Calico/Flannel/etc\n\nFabEdge is not to replace the traditional Kubernetes network plugins such as Calico/Flannel. As in the above architecture diagram, Calico/Flannel is used within the cloud for communication between cloud nodes, while FabEdge is a complement to it for the edge-cloud, edge-edge communication. \n\n## Documentation\n\n* [Getting started](docs/get-started.md) \n* [User Guide](docs/user-guide.md) \n* [FAQ](./docs/FAQ.md)\n* [Uninstall FabEdge](docs/uninstall.md)\n* [Troubleshooting](docs/troubleshooting-guide.md)\n\n\n## Meeting\nRegular community meeting at  2nd and 4th Thursday of every month  \n\nResources:  \n[Meeting notes and agenda](https://shimo.im/docs/Wwt9TdGqgVvpDHJt)    \n[Meeting recordings：bilibili channel](https://space.bilibili.com/524926244?spm_id_from=333.1007.0.0)  \n\n## Contact\nAny question, feel free to reach us in the following ways:\n\n· Email: fabedge@beyondcent.com  \n. Slack: [#fabedge](https://cloud-native.slack.com/archives/C03AD0TFPFF)  \n· Scan the QR code to join WeChat Group\n\n\u003cimg src=\"docs/images/wechat-group-qr-code.jpg\" alt=\"wechat-group\" style=\"width: 20%\"/\u003e\n\n\n\n## Contributing\n\nIf you're interested in being a contributor and want to get involved in developing the FabEdge code, please see [CONTRIBUTING](./CONTRIBUTING.md) for details on submitting patches and the contribution workflow.\n\nPlease make sure to read and observe our [Code of Conduct](https://github.com/FabEdge/fabedge/blob/main/CODE_OF_CONDUCT.md).\n\n\n## License\nFabEdge is under the Apache 2.0 license. See the [LICENSE](https://github.com/FabEdge/fabedge/blob/main/LICENSE) file for details. \n\n","funding_links":[],"categories":["Go","Kubernetes Operators","sdn"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFabEdge%2Ffabedge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FFabEdge%2Ffabedge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FFabEdge%2Ffabedge/lists"}