Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A modern layer 7 load balancer from baidu

License

NotificationsYou must be signed in to change notification settings

bfenetworks/bfe

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1,208 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

GitHubTravisGo Report CardGoDocSnap StatusCII Best PracticesFOSSA StatusSlack Widget

English |中文

BFE (Beyond Front End) is a modern layer 7 load balancer from baidu.

bfe logo

BFE is aCloud Native Computing Foundation (CNCF) sandbox project.

cncf-logo

Introduction

BFE opensource project includes several components, which can be used together as a integrated layer 7 load balancer and traffic management solution.

BFE system consists of data plane and control plane:

  • Data plane:responsible for forwarding user's traffic, including below component:
    • BFE Server:BFE forward engine (this repository, bfenetworks/bfe). BFE Server performs content based routing, load balancing and forwards the traffic to backend servers.
  • Control plane:responsible for management and configuration of BFE system, including below components:
    • API-Server:provides API and handles update, storage and generation of BFE config
    • Conf-Agent:component for loading config, fetches latest config from API-Server and triggers BFE Server to reload it
    • Dashboard:provides a graphic interface for user to manage and view major config of BFE

Refer toOverview in BFE document for more information

Besides, we also implementBFE Ingress Controller based on BFE, to fulfill Ingress in Kubernetes

🚀 Quick Start

This quick start is for users who want to get a running setup fast: build Docker images first, then deploy the Kubernetes example.

1) Build Docker images

From the repository root:

make docker

Notes:

  • make docker builds both prod and debug images. Image tags are derived from theVERSION file.
  • To override the image name, setBFE_IMAGE_NAME, for example:
make docker BFE_IMAGE_NAME=your-registry/bfe

If you want the Kubernetes deployment to use your locally built image, push it to a registry reachable by your cluster nodes (or load it into a local cluster), then update the bfe image mapping underimages: inexamples/kubernetes/kustomization.yaml.

For more details on building and pushing images (includingmake docker-push), see:

2) Deploy via Kubernetes example (kustomize)

cd examples/kuberneteskubectl apply -k.kubectl apply -f whoami-deploy.yaml

For details (image mirror settings, initialization notes, cleanup and finalizer troubleshooting, etc.), see:

Advantages

  • Multiple protocols supported, including HTTP, HTTPS, SPDY, HTTP2, WebSocket, TLS, FastCGI, etc.
  • Content based routing, support user-defined routing rule in advanced domain-specific language.
  • Support multiple load balancing policies.
  • Flexible plugin framework to extend functionality. Based on the framework, developer can add new features rapidly.
  • Efficient, easy and centralized management, with RESTful API and Dashboard support.
  • Detailed built-in metrics available for service status monitor.

Getting Started

Running the tests

Documentation

Book

  • In-depth Understanding of BFE (Released in Feb 2023)

    This book focuses on BFE open source project, introduces the relevant technical principles of network access, explains the design idea of BFE open source software, and how to build a network front-end platform based on BFE open source software. Readers with development capabilities can also develop BFE extension modules according to their own needs or contribute code to BFE open source projects according to the instructions in this book.

Contributing

  • Please create an issue inissue list.
  • Contact Committers/Owners for further discussion if needed.
  • Following the golang coding standards.
  • See theCONTRIBUTING file for details.

Authors

Communication

  • BFE community on Slack:Sign up CNCF Slack and join bfe channel.
  • BFE developer group on WeChat:Send a request mail with your WeChat ID and a contribution you've made to BFE(such as a PR/Issue). We will invite you right away.

License

BFE is under the Apache 2.0 license. See theLICENSE file for details.

About

A modern layer 7 load balancer from baidu

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Contributors102

Languages


[8]ページ先頭

©2009-2026 Movatter.jp