Porter: An Innovative Cloud Native Service Proxy in CNCF Landscape
Porter, a load balancer developed for bare metal Kubernetes clusters, was officially included in CNCF Landscape last week. This marks a great milestone for its parent project KubeSphere as it continues to deliver cloud native technologies to the wider community.
Cloud Native Computing Foundation, or CNCF, was built for the establishment of sustainable ecosystems for cloud native software. Its Interactive Landscape is dynamically generated, serving as a technology roadmap for various industries. As Porter is now recognized by CNCF as one of the best cloud native practices, it represents another important solution to load balancing for developers. Moreover, it is expected to see a surge in popularity amid growing needs from its users faced with various challenges in this field.
What is Porter
Porter is an open source cloud native load balancing plugin designed by the KubeSphere development team based on Border Gateway Protocol (BGP). It meanly features:
- ECMP routing load balancing
- BGP dynamic routing configuration
- VIP management
- LoadBalancerIP assignment in Kubernetes services (v0.3.0)
- Installation with Helm Chart (v0.3.0)
- Dynamic BGP server configuration through CRD (v0.3.0)
- Dynamic BGP peer configuration through CRD (v0.3.0)
All Porter codes are open source and documents are available in GitHub. You are welcome to star and use it.
Porter Showcase in KubeCon
Porter Installation
Porter has been deployed and tested in three environments so far as below. You can see more details in GitHub about the deployment, test and process by clicking the link below. It is recommended to have a try:
- Deploy Porter on Bare Metal Kubernetes Cluster
- Test in the QingCloud Platform Using a Simulated Router
- Use Helm Chart to Install Porter on Kubernetes
Cloud Native Design
All resources in Porter are CRD, including VIP, BGPPeer and BGPConfig. Users who are used to Kubectl will find Porter very easy to use. For advanced users who want to customize Porter, Kubernetes API can be called directly for tailor-made development. The core controller of Porter will soon support high availability (HA).
For detailed information about the architecture and principle, please refer to Porter: An Open Source Load Balancer for Kubernetes in a Bare Metal Environment.