diff --git a/docs/windows.md b/docs/windows.md index 8b2e0399375..287e97b9336 100644 --- a/docs/windows.md +++ b/docs/windows.md @@ -87,16 +87,18 @@ $KubeletKubeconfigPath="" $KubeProxyKubeconfigPath="" $KubernetesHome="c:/k" $AntreaHome="c:/k/antrea" +$KubeProxyLogPath="c:/var/log/kube-proxy" curl.exe -LO "https://raw.githubusercontent.com/antrea-io/antrea/${TAG}/hack/windows/Helper.psm1" - Import-Module ./Helper.psm1 + Install-AntreaAgent -KubernetesVersion "$KubernetesVersion" -KubernetesHome "$KubernetesHome" -KubeConfig "$KubeConfig" -AntreaVersion "$TAG" -AntreaHome "$AntreaHome" New-KubeProxyServiceInterface -mkdir "${AntreaHome}/logs" -nssm install kube-proxy "${KubernetesHome}/kube-proxy.exe" "--proxy-mode=userspace --kubeconfig=$KubeProxyKubeconfigPath --log-dir=c:/var/log/kube-proxy --logtostderr=false --alsologtostderr" -nssm install antrea-agent "${KubernetesHome}/antrea/bin/antrea-agent.exe" "--config=${KubernetesHome}/antrea/etc/antrea-agent.conf --logtostderr=false --log_dir=${KubernetesHome}/antrea/logs --alsologtostderr --log_file_max_size=100 --log_file_max_num=4" +New-DirectoryIfNotExist "${AntreaHome}/logs" +New-DirectoryIfNotExist "${KubeProxyLogPath}" +nssm install kube-proxy "${KubernetesHome}/kube-proxy.exe" "--proxy-mode=userspace --kubeconfig=${KubeProxyKubeconfigPath} --log-dir=${KubeProxyLogPath} --logtostderr=false --alsologtostderr" +nssm install antrea-agent "${AntreaHome}/bin/antrea-agent.exe" "--config=${AntreaHome}/etc/antrea-agent.conf --logtostderr=false --log_dir=${AntreaHome}/logs --alsologtostderr --log_file_max_size=100 --log_file_max_num=4" nssm set antrea-agent DependOnService kube-proxy ovs-vswitchd nssm set antrea-agent Start SERVICE_DELAYED_AUTO_START @@ -130,7 +132,7 @@ kube-proxy version. ```bash # Example: -curl -L https://github.com/kubernetes-sigs/sig-windows-tools/releases/latest/download/kube-proxy.yml | sed 's/VERSION/v1.18.0/g' > kube-proxy.yml +curl -L https://github.com/kubernetes-sigs/sig-windows-tools/releases/download/v0.1.5/kube-proxy.yml | sed 's/VERSION/v1.18.0/g' > kube-proxy.yml ``` Replace the content of `run-script.ps1` in configmap named `kube-proxy-windows` @@ -250,7 +252,7 @@ container. ```powershell # Example: -curl.exe -LO https://github.com/kubernetes-sigs/sig-windows-tools/releases/latest/download/PrepareNode.ps1 +curl.exe -LO https://github.com/kubernetes-sigs/sig-windows-tools/releases/download/v0.1.5/PrepareNode.ps1 .\PrepareNode.ps1 -KubernetesVersion v1.18.0 ``` diff --git a/hack/windows/Helper.psm1 b/hack/windows/Helper.psm1 index f0d2cde0218..a5bc00577fd 100644 --- a/hack/windows/Helper.psm1 +++ b/hack/windows/Helper.psm1 @@ -1,9 +1,10 @@ function Get-WebFileIfNotExist($Path, $URL) { - if (Test-Path $Path) { - return + $count=0 + while (!(Test-Path $Path) -and ($count -ne 3)) { + $count++ + Write-Host "Downloading $URL to $PATH" + curl.exe -skLo $Path $URL } - Write-Host "Downloading $URL to $PATH" - curl.exe -sLo $Path $URL } function New-DirectoryIfNotExist($Path) @@ -93,7 +94,7 @@ function Install-AntreaAgent { New-DirectoryIfNotExist $KubernetesHome # Download kubectl - Get-WebFileIfNotExist $kubectl "https://$KubernetesURL/$KubernetesVersion/bin/windows/amd64/kubectl.exe" + Get-WebFileIfNotExist $kubectl "https://$KubernetesURL/$KubernetesVersion/bin/windows/amd64/kubectl.exe" # Download kube-proxy Get-WebFileIfNotExist $KubeProxy "https://$KubernetesURL/$KubernetesVersion/bin/windows/amd64/kube-proxy.exe" # Download yq diff --git a/hack/windows/Prepare-Node.ps1 b/hack/windows/Prepare-Node.ps1 index 5ffb96ec41d..338d9c474a3 100644 --- a/hack/windows/Prepare-Node.ps1 +++ b/hack/windows/Prepare-Node.ps1 @@ -4,7 +4,7 @@ .DESCRIPTION This script is only used for test to assist with joining a Windows node to a cluster. -For production environment please follow the antrea windows installation guide and use kubernetes official script: https://github.com/kubernetes-sigs/sig-windows-tools/blob/master/kubeadm/scripts/PrepareNode.ps1 +For production environment please follow the antrea windows installation guide and use kubernetes official script: https://github.com/kubernetes-sigs/sig-windows-tools/releases/download/v0.1.5/PrepareNode.ps1 - Downloads Kubernetes binaries (kubelet, kubeadm) at the version specified - Registers wins as a service in order to run kube-proxy and antrea-agent as DaemonSets. - Registers kubelet as an nssm service. More info on nssm: https://nssm.cc/