Migrated pkg/proxy/ipvs to structured logging (#104932)
* migrated ipset.go * migrated graceful_termination.go * fixed vstring * fixed ip set entry, made it consistent * fixed rs logging * resolving review comments for key graceful_termination.go * refactoring ipset.go * included review changes
This commit is contained in:
		 Shivanshu Raj Shrivastava
					Shivanshu Raj Shrivastava
				
			
				
					committed by
					
						 GitHub
						GitHub
					
				
			
			
				
	
			
			
			 GitHub
						GitHub
					
				
			
						parent
						
							daf5af2917
						
					
				
				
					commit
					7d9a6d1de6
				
			| @@ -62,7 +62,7 @@ func (q *graceTerminateRSList) add(rs *listItem) bool { | |||||||
| 		return false | 		return false | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	klog.V(5).Infof("Adding rs %v to graceful delete rsList", rs) | 	klog.V(5).InfoS("Adding real server to graceful delete real server list", "realServer", rs) | ||||||
| 	q.list[uniqueRS] = rs | 	q.list[uniqueRS] = rs | ||||||
| 	return true | 	return true | ||||||
| } | } | ||||||
| @@ -85,11 +85,11 @@ func (q *graceTerminateRSList) flushList(handler func(rsToDelete *listItem) (boo | |||||||
| 	for name, rs := range q.list { | 	for name, rs := range q.list { | ||||||
| 		deleted, err := handler(rs) | 		deleted, err := handler(rs) | ||||||
| 		if err != nil { | 		if err != nil { | ||||||
| 			klog.Errorf("Try delete rs %q err: %v", name, err) | 			klog.ErrorS(err, "Error in deleting real server", "realServer", name) | ||||||
| 			success = false | 			success = false | ||||||
| 		} | 		} | ||||||
| 		if deleted { | 		if deleted { | ||||||
| 			klog.Infof("lw: remote out of the list: %s", name) | 			klog.InfoS("Removed real server from graceful delete real server list", "realServer", name) | ||||||
| 			q.remove(rs) | 			q.remove(rs) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| @@ -140,7 +140,7 @@ func (m *GracefulTerminationManager) GracefulDeleteRS(vs *utilipvs.VirtualServer | |||||||
| 	} | 	} | ||||||
| 	deleted, err := m.deleteRsFunc(ele) | 	deleted, err := m.deleteRsFunc(ele) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		klog.Errorf("Delete rs %q err: %v", ele.String(), err) | 		klog.ErrorS(err, "Error in deleting real server", "realServer", ele) | ||||||
| 	} | 	} | ||||||
| 	if deleted { | 	if deleted { | ||||||
| 		return nil | 		return nil | ||||||
| @@ -150,13 +150,13 @@ func (m *GracefulTerminationManager) GracefulDeleteRS(vs *utilipvs.VirtualServer | |||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		return err | 		return err | ||||||
| 	} | 	} | ||||||
| 	klog.V(5).Infof("Adding an element to graceful delete rsList: %+v", ele) | 	klog.V(5).InfoS("Adding real server to graceful delete real server list", "realServer", ele) | ||||||
| 	m.rsList.add(ele) | 	m.rsList.add(ele) | ||||||
| 	return nil | 	return nil | ||||||
| } | } | ||||||
|  |  | ||||||
| func (m *GracefulTerminationManager) deleteRsFunc(rsToDelete *listItem) (bool, error) { | func (m *GracefulTerminationManager) deleteRsFunc(rsToDelete *listItem) (bool, error) { | ||||||
| 	klog.V(5).Infof("Trying to delete rs: %s", rsToDelete.String()) | 	klog.V(5).InfoS("Trying to delete real server", "realServer", rsToDelete) | ||||||
| 	rss, err := m.ipvs.GetRealServers(rsToDelete.VirtualServer) | 	rss, err := m.ipvs.GetRealServers(rsToDelete.VirtualServer) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		return false, err | 		return false, err | ||||||
| @@ -167,10 +167,10 @@ func (m *GracefulTerminationManager) deleteRsFunc(rsToDelete *listItem) (bool, e | |||||||
| 			//     (existing connections will be deleted on the next packet because sysctlExpireNoDestConn=1) | 			//     (existing connections will be deleted on the next packet because sysctlExpireNoDestConn=1) | ||||||
| 			// For other protocols, don't delete until all connections have expired) | 			// For other protocols, don't delete until all connections have expired) | ||||||
| 			if utilipvs.IsRsGracefulTerminationNeeded(rsToDelete.VirtualServer.Protocol) && rs.ActiveConn+rs.InactiveConn != 0 { | 			if utilipvs.IsRsGracefulTerminationNeeded(rsToDelete.VirtualServer.Protocol) && rs.ActiveConn+rs.InactiveConn != 0 { | ||||||
| 				klog.V(5).Infof("Not deleting, RS %v: %v ActiveConn, %v InactiveConn", rsToDelete.String(), rs.ActiveConn, rs.InactiveConn) | 				klog.V(5).InfoS("Skip deleting real server till all connection have expired", "realServer", rsToDelete, "activeConnection", rs.ActiveConn, "inactiveConnection", rs.InactiveConn) | ||||||
| 				return false, nil | 				return false, nil | ||||||
| 			} | 			} | ||||||
| 			klog.V(5).Infof("Deleting rs: %s", rsToDelete.String()) | 			klog.V(5).InfoS("Deleting real server", "realServer", rsToDelete) | ||||||
| 			err := m.ipvs.DeleteRealServer(rsToDelete.VirtualServer, rs) | 			err := m.ipvs.DeleteRealServer(rsToDelete.VirtualServer, rs) | ||||||
| 			if err != nil { | 			if err != nil { | ||||||
| 				return false, fmt.Errorf("delete destination %q err: %w", rs.String(), err) | 				return false, fmt.Errorf("delete destination %q err: %w", rs.String(), err) | ||||||
| @@ -183,7 +183,7 @@ func (m *GracefulTerminationManager) deleteRsFunc(rsToDelete *listItem) (bool, e | |||||||
|  |  | ||||||
| func (m *GracefulTerminationManager) tryDeleteRs() { | func (m *GracefulTerminationManager) tryDeleteRs() { | ||||||
| 	if !m.rsList.flushList(m.deleteRsFunc) { | 	if !m.rsList.flushList(m.deleteRsFunc) { | ||||||
| 		klog.Errorf("Try flush graceful termination list err") | 		klog.ErrorS(nil, "Try flush graceful termination list error") | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -110,7 +110,7 @@ func NewIPSet(handle utilipset.Interface, name string, setType utilipset.Type, i | |||||||
| 		if strings.HasPrefix(name, "KUBE-") { | 		if strings.HasPrefix(name, "KUBE-") { | ||||||
| 			name = strings.Replace(name, "KUBE-", "KUBE-6-", 1) | 			name = strings.Replace(name, "KUBE-", "KUBE-6-", 1) | ||||||
| 			if len(name) > 31 { | 			if len(name) > 31 { | ||||||
| 				klog.Warningf("ipset name truncated; [%s] -> [%s]", name, name[:31]) | 				klog.InfoS("Ipset name truncated", "ipSetName", name, "truncatedName", name[:31]) | ||||||
| 				name = name[:31] | 				name = name[:31] | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| @@ -147,7 +147,7 @@ func (set *IPSet) resetEntries() { | |||||||
| func (set *IPSet) syncIPSetEntries() { | func (set *IPSet) syncIPSetEntries() { | ||||||
| 	appliedEntries, err := set.handle.ListEntries(set.Name) | 	appliedEntries, err := set.handle.ListEntries(set.Name) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		klog.Errorf("Failed to list ip set entries, error: %v", err) | 		klog.ErrorS(err, "Failed to list ip set entries") | ||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| @@ -162,18 +162,18 @@ func (set *IPSet) syncIPSetEntries() { | |||||||
| 		for _, entry := range currentIPSetEntries.Difference(set.activeEntries).List() { | 		for _, entry := range currentIPSetEntries.Difference(set.activeEntries).List() { | ||||||
| 			if err := set.handle.DelEntry(entry, set.Name); err != nil { | 			if err := set.handle.DelEntry(entry, set.Name); err != nil { | ||||||
| 				if !utilipset.IsNotFoundError(err) { | 				if !utilipset.IsNotFoundError(err) { | ||||||
| 					klog.Errorf("Failed to delete ip set entry: %s from ip set: %s, error: %v", entry, set.Name, err) | 					klog.ErrorS(err, "Failed to delete ip set entry from ip set", "ipSetEntry", entry, "ipSet", set.Name) | ||||||
| 				} | 				} | ||||||
| 			} else { | 			} else { | ||||||
| 				klog.V(3).Infof("Successfully delete legacy ip set entry: %s from ip set: %s", entry, set.Name) | 				klog.V(3).InfoS("Successfully deleted legacy ip set entry from ip set", "ipSetEntry", entry, "ipSet", set.Name) | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 		// Create active entries | 		// Create active entries | ||||||
| 		for _, entry := range set.activeEntries.Difference(currentIPSetEntries).List() { | 		for _, entry := range set.activeEntries.Difference(currentIPSetEntries).List() { | ||||||
| 			if err := set.handle.AddEntry(entry, &set.IPSet, true); err != nil { | 			if err := set.handle.AddEntry(entry, &set.IPSet, true); err != nil { | ||||||
| 				klog.Errorf("Failed to add entry: %v to ip set: %s, error: %v", entry, set.Name, err) | 				klog.ErrorS(err, "Failed to add ip set entry to ip set", "ipSetEntry", entry, "ipSet", set.Name) | ||||||
| 			} else { | 			} else { | ||||||
| 				klog.V(3).Infof("Successfully add entry: %v to ip set: %s", entry, set.Name) | 				klog.V(3).InfoS("Successfully added ip set entry to ip set", "ipSetEntry", entry, "ipSet", set.Name) | ||||||
| 			} | 			} | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
| @@ -181,7 +181,7 @@ func (set *IPSet) syncIPSetEntries() { | |||||||
|  |  | ||||||
| func ensureIPSet(set *IPSet) error { | func ensureIPSet(set *IPSet) error { | ||||||
| 	if err := set.handle.CreateSet(&set.IPSet, true); err != nil { | 	if err := set.handle.CreateSet(&set.IPSet, true); err != nil { | ||||||
| 		klog.Errorf("Failed to make sure ip set: %v exist, error: %v", set, err) | 		klog.ErrorS(err, "Failed to make sure existence of ip set", "ipSet", set) | ||||||
| 		return err | 		return err | ||||||
| 	} | 	} | ||||||
| 	return nil | 	return nil | ||||||
| @@ -191,13 +191,13 @@ func ensureIPSet(set *IPSet) error { | |||||||
| func checkMinVersion(vstring string) bool { | func checkMinVersion(vstring string) bool { | ||||||
| 	version, err := utilversion.ParseGeneric(vstring) | 	version, err := utilversion.ParseGeneric(vstring) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		klog.Errorf("vstring (%s) is not a valid version string: %v", vstring, err) | 		klog.ErrorS(err, "Got invalid version string", "versionString", vstring) | ||||||
| 		return false | 		return false | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	minVersion, err := utilversion.ParseGeneric(MinIPSetCheckVersion) | 	minVersion, err := utilversion.ParseGeneric(MinIPSetCheckVersion) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		klog.Errorf("MinCheckVersion (%s) is not a valid version string: %v", MinIPSetCheckVersion, err) | 		klog.ErrorS(err, "Got invalid version string", "versionString", MinIPSetCheckVersion) | ||||||
| 		return false | 		return false | ||||||
| 	} | 	} | ||||||
| 	return !version.LessThan(minVersion) | 	return !version.LessThan(minVersion) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user