Documentation ¶
Index ¶
- type FrontEndService
- func (fes *FrontEndService) CleanUp()
- func (fes *FrontEndService) Init() error
- func (fes *FrontEndService) Monitor(ctx context.Context) error
- func (fes *FrontEndService) RemoveVIPRules() error
- func (fes *FrontEndService) SetNewConfig(c interface{}) error
- func (fes *FrontEndService) Start(ctx context.Context) <-chan error
- func (fes *FrontEndService) Stop(ctx context.Context)
- func (fes *FrontEndService) VerifyConfig(ctx context.Context) error
- func (fes *FrontEndService) WaitStart(ctx context.Context) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FrontEndService ¶
type FrontEndService struct {
// contains filtered or unexported fields
}
FrontEndService -
func NewFrontEndService ¶
func NewFrontEndService(ctx context.Context, c *feConfig.Config) *FrontEndService
FrontEndService -
func (*FrontEndService) CleanUp ¶
func (fes *FrontEndService) CleanUp()
CleanUp - Basic clean-up of FrontEndService
func (*FrontEndService) Init ¶
func (fes *FrontEndService) Init() error
func (*FrontEndService) Monitor ¶
func (fes *FrontEndService) Monitor(ctx context.Context) error
Monitor - Check bgp prorocols' status by periodically querying birdc. - Log changes in availablity/connectivity. - Reflect external connectivity through NSP to be used by LBs to steer outbound traffic. - Withdraw VIPs in case FE is considered down, in order to not attract traffic through possible available links if any. More like VIPs must be added to BIRD only if the frontend is considered up. (Note: IPv4/IPv6 backplane not separated).
func (*FrontEndService) RemoveVIPRules ¶
func (fes *FrontEndService) RemoveVIPRules() error
RemoveVipRules - Remove all the previously installed VIP src routing rules
func (*FrontEndService) SetNewConfig ¶
func (fes *FrontEndService) SetNewConfig(c interface{}) error
SetNewConfig - Adjust BIRD config on the fly
func (*FrontEndService) Start ¶
func (fes *FrontEndService) Start(ctx context.Context) <-chan error
Start - Start BIRD with the generated config
func (*FrontEndService) Stop ¶ added in v0.4.0
func (fes *FrontEndService) Stop(ctx context.Context)
Stop - Stop BIRD (attempt graceful shutdown)
func (*FrontEndService) VerifyConfig ¶
func (fes *FrontEndService) VerifyConfig(ctx context.Context) error
VerifyConfig - Verify BIRD config file
prerequisite: BIRD must be running so that birdc could talk to it