https://github.com/openyurtio/raven
provide layer 3 and layer 7 network connectivity among pods in different physical regions
https://github.com/openyurtio/raven
cross-physical-regions k8s kubernetes networking
Last synced: about 1 month ago
JSON representation
provide layer 3 and layer 7 network connectivity among pods in different physical regions
- Host: GitHub
- URL: https://github.com/openyurtio/raven
- Owner: openyurtio
- License: apache-2.0
- Created: 2021-12-10T09:52:33.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-01-17T15:03:33.000Z (4 months ago)
- Last Synced: 2025-03-30T00:11:07.670Z (about 2 months ago)
- Topics: cross-physical-regions, k8s, kubernetes, networking
- Language: Go
- Homepage:
- Size: 757 KB
- Stars: 59
- Watchers: 9
- Forks: 37
- Open Issues: 27
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Raven
[](https://github.com/openyurtio/raven/releases/tag/v0.2.0)
[](https://goreportcard.com/report/github.com/openyurtio/raven)
[](https://www.apache.org/licenses/LICENSE-2.0.html)
[](https://codecov.io/gh/openyurtio/raven)Raven is component of the OpenYurt to enhance cluster networking capabilities. This enhancement is focused on edge-edge and edge-cloud communication in OpenYurt. In short, it will provide layer 3 network connectivity among pods in different physical regions, as there are in one vanilla Kubernetes cluster.
## Architecture
![]()
The above figure demonstrates the core Raven architecture. The major components consist of:
- **Raven Controller Manager**: It is a standard k8s controller that enhances cluster networking capabilities in edge computing. For examples, electing a `gateway` node for each edge base on node conditions.
- **Raven Agent**: A node daemon that serves as a proxy for the traffic of edge-cloud and edge-edge communication. It dynamically configures routing information or VPN connections on each node, according to the node role (`normal` node or `gateway` node).## Getting Start
For a complete example, please check out the [tutorial](docs/raven-agent-tutorial.md).
## Contributing
Contributions are welcome, whether by creating new issues or pull requests. See our [contributing document](https://github.com/openyurtio/openyurt/blob/master/CONTRIBUTING.md) to get started.
## Contact
- Mailing List: [email protected]
- Slack: [channel](https://join.slack.com/t/openyurt/shared_invite/zt-iw2lvjzm-MxLcBHWm01y1t2fiTD15Gw)
- Dingtalk Group (钉钉讨论群)
![]()
## License
Raven is under the Apache 2.0 license. See the [LICENSE](LICENSE) file for details. Certain implementations in Raven rely on the existing code from [Kubernetes](https://github.com/kubernetes/kubernetes) the credits go to the original authors.