Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

sbctl chassis operation replace with libovsdb #3119

Merged
merged 28 commits into from
Aug 17, 2023
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
34cf355
add ovnsb mod
bobz965 Aug 7, 2023
fa26c69
ovn 层名统一复用用底层 ovs client 命名
bobz965 Aug 7, 2023
4571248
kube-ovn-controller 需要使用 sb nb client, 所以调整命名
bobz965 Aug 7, 2023
ad1dfb0
replace sbctl operate chassis
bobz965 Aug 7, 2023
7779dd5
fix hard code
bobz965 Aug 8, 2023
dc7c7e9
统一基于 uuid 获取 chassis 再判断 externalID
bobz965 Aug 8, 2023
2d5e395
fix chassis update
bobz965 Aug 8, 2023
10cb511
复用 update chassis
bobz965 Aug 9, 2023
aed7a1a
libovsdb 不需要再使用冗余tag过滤
bobz965 Aug 9, 2023
ff2c0a2
Merge branch 'master' into libovsdb
bobz965 Aug 9, 2023
9ff369b
fix log
bobz965 Aug 9, 2023
b9ab5ea
Update pkg/ovs/ovn.go
bobz965 Aug 11, 2023
3e9332e
refactor nbclient sbclient
bobz965 Aug 11, 2023
bfa8c67
init sb client
bobz965 Aug 11, 2023
fae7d1b
remove sb from LegacyClient
bobz965 Aug 11, 2023
000c9a5
fix sb
bobz965 Aug 11, 2023
08f435a
reuse
bobz965 Aug 11, 2023
926d54a
fix log
bobz965 Aug 11, 2023
277c8d7
add back InsecureSkipVerify
bobz965 Aug 11, 2023
b998768
Merge branch 'master' into libovsdb
bobz965 Aug 14, 2023
6dc3f03
fix conflict
bobz965 Aug 14, 2023
d67690c
Update pkg/ovsdb/client/client.go
bobz965 Aug 15, 2023
a48ea7a
rebuild ovn sb model from ovn branch-22.12 according to base
bobz965 Aug 15, 2023
a095789
simplicify NewOvsDbClient
bobz965 Aug 15, 2023
42165ae
remove unused
bobz965 Aug 15, 2023
4bc66c1
Merge branch 'master' into libovsdb
bobz965 Aug 17, 2023
e105518
Update pkg/ovs/ovn.go
bobz965 Aug 17, 2023
9392ded
remove unused
bobz965 Aug 17, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
243 changes: 243 additions & 0 deletions mocks/pkg/ovs/interface.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

18 changes: 11 additions & 7 deletions pkg/controller/controller.go
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,9 @@ type Controller struct {
namedPort *NamedPort

ovnLegacyClient *ovs.LegacyClient
ovnClient ovs.OvnClient

ovnNbClient ovs.OvnClient
ovnSbClient ovs.OvnClient

// ExternalGatewayType define external gateway type, centralized
ExternalGatewayType string
Expand Down Expand Up @@ -486,10 +488,12 @@ func Run(ctx context.Context, config *Configuration) {
}

var err error
if controller.ovnClient, err = ovs.NewOvnClient(config.OvnNbAddr, config.OvnTimeout, config.NodeSwitchCIDR); err != nil {
util.LogFatalAndExit(err, "failed to create ovn client")
if controller.ovnNbClient, err = ovs.NewOvnNbClient(config.OvnNbAddr, config.OvnTimeout, config.NodeSwitchCIDR); err != nil {
util.LogFatalAndExit(err, "failed to create ovn nb client")
}
if controller.ovnSbClient, err = ovs.NewOvnSbClient(config.OvnSbAddr, config.OvnTimeout, config.NodeSwitchCIDR); err != nil {
util.LogFatalAndExit(err, "failed to create ovn sb client")
}

if config.EnableLb {
controller.switchLBRuleLister = switchLBRuleInformer.Lister()
controller.switchLBRuleSynced = switchLBRuleInformer.Informer().HasSynced
Expand Down Expand Up @@ -766,11 +770,11 @@ func Run(ctx context.Context, config *Configuration) {
// is closed, at which point it will shutdown the workqueue and wait for
// workers to finish processing their current work items.
func (c *Controller) Run(ctx context.Context) {
if err := c.ovnClient.SetLsDnatModDlDst(c.config.LsDnatModDlDst); err != nil {
if err := c.ovnNbClient.SetLsDnatModDlDst(c.config.LsDnatModDlDst); err != nil {
util.LogFatalAndExit(err, "failed to set NB_Global option ls_dnat_mod_dl_dst")
}

if err := c.ovnClient.SetUseCtInvMatch(); err != nil {
if err := c.ovnNbClient.SetUseCtInvMatch(); err != nil {
util.LogFatalAndExit(err, "failed to set NB_Global option use_ct_inv_match to false")
}

Expand Down Expand Up @@ -1148,7 +1152,7 @@ func (c *Controller) startWorkers(ctx context.Context) {

func (c *Controller) allSubnetReady(subnets ...string) (bool, error) {
for _, lsName := range subnets {
exist, err := c.ovnClient.LogicalSwitchExists(lsName)
exist, err := c.ovnNbClient.LogicalSwitchExists(lsName)
if err != nil {
return false, fmt.Errorf("check logical switch %s exist: %v", lsName, err)
}
Expand Down
2 changes: 1 addition & 1 deletion pkg/controller/controller_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ func newFakeController(t *testing.T) *fakeController {
vpcSynced: alwaysReady,
subnetsLister: sbunetInformer.Lister(),
subnetSynced: alwaysReady,
ovnClient: mockOvnClient,
ovnNbClient: mockOvnClient,
syncVirtualPortsQueue: workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), ""),
}

Expand Down
6 changes: 3 additions & 3 deletions pkg/controller/endpoint.go
Original file line number Diff line number Diff line change
Expand Up @@ -197,18 +197,18 @@ func (c *Controller) handleUpdateEndpoint(key string) error {
// for performance reason delete lb with no backends
if len(backends) != 0 {
klog.V(3).Infof("update vip %s with backends %s to LB %s", vip, backends, lb)
if err = c.ovnClient.LoadBalancerAddVip(lb, vip, backends...); err != nil {
if err = c.ovnNbClient.LoadBalancerAddVip(lb, vip, backends...); err != nil {
klog.Errorf("failed to add vip %s with backends %s to LB %s: %v", vip, backends, lb, err)
return err
}
} else {
klog.V(3).Infof("delete vip %s from LB %s", vip, lb)
if err := c.ovnClient.LoadBalancerDeleteVip(lb, vip); err != nil {
if err := c.ovnNbClient.LoadBalancerDeleteVip(lb, vip); err != nil {
klog.Errorf("failed to delete vip %s from LB %s: %v", vip, lb, err)
return err
}
klog.V(3).Infof("delete vip %s from old LB %s", vip, lb)
if err := c.ovnClient.LoadBalancerDeleteVip(oldLb, vip); err != nil {
if err := c.ovnNbClient.LoadBalancerDeleteVip(oldLb, vip); err != nil {
klog.Errorf("failed to delete vip %s from LB %s: %v", vip, lb, err)
return err
}
Expand Down
Loading
Loading