mirror of https://github.com/k3s-io/k3s
Merge pull request #68760 from jessfraz/only-set-sysctl-if-not-set
pkg/proxy: only set sysctl if not already setpull/58/head
commit
4ca9fa737e
|
@ -95,9 +95,12 @@ func (rct realConntracker) SetTCPCloseWaitTimeout(seconds int) error {
|
|||
func (realConntracker) setIntSysCtl(name string, value int) error {
|
||||
entry := "net/netfilter/" + name
|
||||
|
||||
glog.Infof("Set sysctl '%v' to %v", entry, value)
|
||||
if err := sysctl.New().SetSysctl(entry, value); err != nil {
|
||||
return err
|
||||
sys := sysctl.New()
|
||||
if val, _ := sys.GetSysctl(entry); val != value {
|
||||
glog.Infof("Set sysctl '%v' to %v", entry, value)
|
||||
if err := sys.SetSysctl(entry, value); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
return nil
|
||||
}
|
||||
|
|
|
@ -293,8 +293,10 @@ func NewProxier(ipt utiliptables.Interface,
|
|||
nodePortAddresses []string,
|
||||
) (*Proxier, error) {
|
||||
// Set the route_localnet sysctl we need for
|
||||
if err := sysctl.SetSysctl(sysctlRouteLocalnet, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlRouteLocalnet, err)
|
||||
if val, _ := sysctl.GetSysctl(sysctlRouteLocalnet); val != 1 {
|
||||
if err := sysctl.SetSysctl(sysctlRouteLocalnet, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlRouteLocalnet, err)
|
||||
}
|
||||
}
|
||||
|
||||
// Proxy needs br_netfilter and bridge-nf-call-iptables=1 when containers
|
||||
|
|
|
@ -299,8 +299,10 @@ func NewProxier(ipt utiliptables.Interface,
|
|||
nodePortAddresses []string,
|
||||
) (*Proxier, error) {
|
||||
// Set the route_localnet sysctl we need for
|
||||
if err := sysctl.SetSysctl(sysctlRouteLocalnet, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlRouteLocalnet, err)
|
||||
if val, _ := sysctl.GetSysctl(sysctlRouteLocalnet); val != 1 {
|
||||
if err := sysctl.SetSysctl(sysctlRouteLocalnet, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlRouteLocalnet, err)
|
||||
}
|
||||
}
|
||||
|
||||
// Proxy needs br_netfilter and bridge-nf-call-iptables=1 when containers
|
||||
|
@ -311,13 +313,17 @@ func NewProxier(ipt utiliptables.Interface,
|
|||
}
|
||||
|
||||
// Set the conntrack sysctl we need for
|
||||
if err := sysctl.SetSysctl(sysctlVSConnTrack, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlVSConnTrack, err)
|
||||
if val, _ := sysctl.GetSysctl(sysctlVSConnTrack); val != 1 {
|
||||
if err := sysctl.SetSysctl(sysctlVSConnTrack, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlVSConnTrack, err)
|
||||
}
|
||||
}
|
||||
|
||||
// Set the ip_forward sysctl we need for
|
||||
if err := sysctl.SetSysctl(sysctlForward, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlForward, err)
|
||||
if val, _ := sysctl.GetSysctl(sysctlForward); val != 1 {
|
||||
if err := sysctl.SetSysctl(sysctlForward, 1); err != nil {
|
||||
return nil, fmt.Errorf("can't set sysctl %s: %v", sysctlForward, err)
|
||||
}
|
||||
}
|
||||
|
||||
// Generate the masquerade mark to use for SNAT rules.
|
||||
|
|
Loading…
Reference in New Issue