• Kubernetes Submit Queue's avatar
    Merge pull request #51874 from vfreex/fix-ipvs-check · 830a3635
    Kubernetes Submit Queue authored
    Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
    
    kube-proxy IPVS: Fix IPVS availability check
    
    **What this PR does / why we need it**:
    The current implementation of `CanUseIPVSProxier()` reads `/proc/modules`
    to check whether IPVS related kernel modules can be loaded.
      
    You might get a false-negative when the kernel modules are installed to
    the system but haven't been loaded into the kernel.
    
    This patch firstly try to run `modprobe` to load specified kernel
    modules, then just log warnings if error occured.
    Secondly, it will check loaded kernel modules by reading
    `/proc/modules`, return an error if any required module is missing.
    
    This change will not break the compatability of existing implementation.
    Running kube-proxy in a container without mounting `/lib/modules` will
    cause `modprobe` warnings, but not raise an error if all required modules are
    present in the host kernel.
    
    **Special notes for your reviewer**:
    
    **Release note**:
    
    ```release-note
     Fix IPVS availability check
    ```
    830a3635
Name
Last commit
Last update
..
testing Loading commit data...
BUILD Loading commit data...
README.md Loading commit data...
netlink.go Loading commit data...
netlink_linux.go Loading commit data...
netlink_unsupported.go Loading commit data...
proxier.go Loading commit data...
proxier_test.go Loading commit data...