You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+25-20Lines changed: 25 additions & 20 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,29 +8,39 @@
8
8
9
9
English | [中文](README_zh.md)
10
10
11
-
FabEdge is a secure edge networking solution based on Kubernetes. It enables cloud-edge, edge-edge collaboration and solves the problems including complex configuration management, network isolation, lack of topology-aware routing, etc.
12
11
13
-
FabEdge is able to manage the network of not only the edge nodes, but also the edge clusters.
12
+
FabEdge 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.
13
+
14
+
FabEdge supports the major edge computing frameworks ,like KubeEdge/SuperEdge/OpenYurt.
15
+
16
+
FabEdge 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).
17
+
18
+
FabEdge is a sandbox project of the Cloud Native Computing Foundation (CNCF).
14
19
15
-
FabEdge supports weak transport network, such as 4/5G, WiFi, etc. It is suitable for scenarios such as IoT (Internet of Things), IoV (Internet of Vehicles), etc.
16
20
17
21
## Features
18
22
***Kubernetes Native**: Compatible with Kubernetes, transparent to applications.
19
-
***Automatic Address Management**:Management of the subnets allocation and IP address assignment for edge containers.
20
-
***Cloud-Edge/Edge-Edge Collaboration**: Secure tunnels between cloud-edge, edge-edge nodes for synergy.
21
-
***Edge Node Community Control**: Use CRD of “community” to control which edge nodes can communicate with each others.
22
-
***Topology-aware service**: Improve service latency by giving higher priority to local endpoints, while still able to access endpoints in remote cloud.
23
23
24
-
## Advantages
25
-
***Standard**: fully compatible with Kubernetes, support any cluster, any application, plug and play.
26
-
***Secure**: all communication over secure IPSec tunnels with certificate based authentication.
27
-
***Easy to use**: designed using operator pattern, minimized ongoing operation effort.
24
+
***Automatic Configuration Management**: the addresses, certificates, endpoints, tunnels, etc. are automatically managed.
25
+
26
+
***Cloud-Edge/Edge-Edge Collaboration**: Secure tunnels between cloud-edge, edge-edge nodes for synergy.
27
+
28
+
29
+
***Topology-aware Service Discovery**: reduces service access latency, by using the nearest available service endpoint.
30
+
31
+
32
+
## Advantages:
33
+
34
+
-**Standard**: suitable for any protocol, any application.
35
+
-**Secure**: Uses mature and stable IPSec technology, and a secure certificate-based authentication system.
36
+
-**Easy to use**: Adopts the `Operator` pattern to automatically manage addresses, nodes, certificates, etc., minimizing human intervention.
* The cloud can be any Kubernetes cluster with supported CNI network plug-in, including Calico, Flannel, etc.
33
-
* FabEdge builds a layer3 data plane with tunnels in additional to the control plan managed by KubeEdge, SuperEdge, OpenYurt,etc.
43
+
* FabEdge builds a layer-3 data plane with tunnels in additional to the control plan managed by KubeEdge, SuperEdge, OpenYurt,etc.
34
44
* Fabedge consists of **Operators, Connector, Agent, Cloud-Agent**.
35
45
* Operator monitors k8s resources such as node, service, and endpoint 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.
36
46
* 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.
@@ -40,17 +50,12 @@ FabEdge supports weak transport network, such as 4/5G, WiFi, etc. It is suitable
* Fab-DNS runs in all the clusters, to provide the topology-aware service discovery capability by intercepting the DNS queries.
48
54
49
-
> It means the versions we have verified and it does not mean the others do not work. Since FabEdge does not tightly coupled with any edge-computing frameworks it is very likely that the other version works.
50
55
51
-
## FabEdge vs Calico/Flannel
56
+
## FabEdge vs. Calico/Flannel/etc
52
57
53
-
Fabedge is different from generic Kubernetes network plug-ins such as Calico/Flannel. As in the above architecture diagram, Calico/Flannel is used in the cloud for communication between cloud nodes. Fabedge is a complement to it for the edge-cloud, edge-edge communication.
58
+
Fabedge 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.
GlobalService is used to export a local/standard k8s service (ClusterIP or Headless) for other clusters to access it. And it provides the topology-aware service discovery capability.
106
+
107
+
1. create a service, e.g. namespace: default, name: web
108
+
2. Label it with : `fabedge.io/global-service: true`
109
+
3. It can be accessed by the domain name: `web.defaut.svc.global`
0 commit comments