This is an automated email from the ASF dual-hosted git repository.

nvazquez pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new 0f4c3af935 cks: Fix when deployed on a nw without internet access 
(#6418)
0f4c3af935 is described below

commit 0f4c3af935d0acf5a17201a0015e62815e3bb6d0
Author: David Jumani <[email protected]>
AuthorDate: Tue May 31 23:02:27 2022 +0530

    cks: Fix when deployed on a nw without internet access (#6418)
    
    * cks: Fix when deployed on a nw without internet access
    
    * Revert "cks: Fix when deployed on a nw without internet access"
    
    This reverts commit 40e3338001b2f1c239533bedac5b60d8b9d2f631.
    
    * cks: Fix issue when creating cluster in nw without internet access
---
 .../main/resources/conf/k8s-control-node-add.yml   | 35 ++++++------
 .../src/main/resources/conf/k8s-control-node.yml   | 62 +++++++++++-----------
 .../src/main/resources/conf/k8s-node.yml           | 34 ++++++------
 .../main/resources/script/upgrade-kubernetes.sh    | 11 +++-
 4 files changed, 71 insertions(+), 71 deletions(-)

diff --git 
a/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node-add.yml
 
b/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node-add.yml
index 335ae9194e..b4167147ba 100644
--- 
a/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node-add.yml
+++ 
b/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node-add.yml
@@ -120,7 +120,7 @@ write_files:
               fi
               retval=0
               set +e
-              ctr image import "${BINARIES_DIR}/docker/$line"
+              ctr -n k8s.io image import "${BINARIES_DIR}/docker/$line"
               retval=$?
               set -e
               if [ $retval -eq 0 ]; then
@@ -139,6 +139,15 @@ write_files:
           mkdir -p /opt/provider
           cp "${BINARIES_DIR}/provider.yaml" /opt/provider/provider.yaml
         fi
+
+        PAUSE_IMAGE=`ctr -n k8s.io images ls -q | grep "pause" | sort | tail 
-n 1`
+        echo $PAUSE_IMAGE
+        if [ -n "$PAUSE_IMAGE" ]; then
+          sed -i "s|sandbox_image = .*|sandbox_image = \"$PAUSE_IMAGE\"|g" 
/etc/containerd/config.toml
+        fi
+        systemctl daemon-reload
+        systemctl restart containerd
+
         umount "${ISO_MOUNT_DIR}" && rmdir "${ISO_MOUNT_DIR}"
         if [ "$EJECT_ISO_FROM_OS" = true ] && [ "$iso_drive_path" != "" ]; then
           eject "${iso_drive_path}"
@@ -230,9 +239,10 @@ write_files:
       sed  -i '/\[plugins."io.containerd.grpc.v1.cri".registry.mirrors\]/a 
'"${registryConfig}"'' /etc/containerd/config.toml
 
       echo "Restarting containerd service"
+      systemctl daemon-reload
       systemctl restart containerd
 
-  - path: /etc/systemd/system/setup-kube-system.service
+  - path: /etc/systemd/system/deploy-kube-system.service
     permissions: '0755'
     owner: root:root
     content: |
@@ -240,18 +250,6 @@ write_files:
       Requires=containerd.service
       After=containerd.service
 
-      [Service]
-      Type=simple
-      StartLimitInterval=0
-      ExecStart=/opt/bin/setup-kube-system
-
-  - path: /etc/systemd/system/deploy-kube-system.service
-    permissions: '0755'
-    owner: root:root
-    content: |
-      [Unit]
-      After=setup-kube-system.service
-
       [Service]
       Type=simple
       StartLimitInterval=0
@@ -263,10 +261,7 @@ runcmd:
   - chown -R cloud:cloud /home/cloud/.ssh
   - containerd config default > /etc/containerd/config.toml
   - sed -i 's/SystemdCgroup = false/SystemdCgroup = true/g' 
/etc/containerd/config.toml
-  - systemctl daemon-reload
-  - systemctl restart containerd
+  - until [ -f /opt/bin/setup-kube-system ]; do sleep 5; done
+  - /opt/bin/setup-kube-system
   - until [ -f /etc/systemd/system/deploy-kube-system.service ]; do sleep 5; 
done
-  - until [ -f /etc/systemd/system/setup-kube-system.service ]; do sleep 5; 
done
-  - [ systemctl, start, setup-kube-system ]
-  - [ systemctl, start, deploy-kube-system ]
-
+  - systemctl start deploy-kube-system
diff --git 
a/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node.yml
 
b/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node.yml
index 76adc5a7d2..d4f0cd74ef 100644
--- 
a/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node.yml
+++ 
b/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-control-node.yml
@@ -140,7 +140,7 @@ write_files:
               fi
               retval=0
               set +e
-              ctr image import "${BINARIES_DIR}/docker/$line"
+              ctr -n k8s.io image import "${BINARIES_DIR}/docker/$line"
               retval=$?
               set -e
               if [ $retval -eq 0 ]; then
@@ -161,6 +161,15 @@ write_files:
           mkdir -p /opt/provider
           cp "${BINARIES_DIR}/provider.yaml" /opt/provider/provider.yaml
         fi
+
+        PAUSE_IMAGE=`ctr -n k8s.io images ls -q | grep "pause" | sort | tail 
-n 1`
+        echo $PAUSE_IMAGE
+        if [ -n "$PAUSE_IMAGE" ]; then
+          sed -i "s|sandbox_image = .*|sandbox_image = \"$PAUSE_IMAGE\"|g" 
/etc/containerd/config.toml
+        fi
+        systemctl daemon-reload
+        systemctl restart containerd
+
         umount "${ISO_MOUNT_DIR}" && rmdir "${ISO_MOUNT_DIR}"
         if [ "$EJECT_ISO_FROM_OS" = true ] && [ "$iso_drive_path" != "" ]; then
           eject "${iso_drive_path}"
@@ -210,6 +219,22 @@ write_files:
         done
       fi
 
+  - path: /opt/bin/deploy-kube-system
+    permissions: '0700'
+    owner: root:root
+    content: |
+      #!/bin/bash -e
+
+      if [[ -f "/home/cloud/success" ]]; then
+      echo "Already provisioned!"
+      exit 0
+      fi
+
+      if [[ "$PATH" != *:/opt/bin && "$PATH" != *:/opt/bin:* ]]; then
+        export PATH=$PATH:/opt/bin
+      fi
+
+      MAX_SETUP_CRUCIAL_CMD_ATTEMPTS=3
       crucial_cmd_attempts=1
       while true; do
         if (( "$crucial_cmd_attempts" > "$MAX_SETUP_CRUCIAL_CMD_ATTEMPTS" )); 
then
@@ -227,17 +252,6 @@ write_files:
         crucial_cmd_attempts=$[$crucial_cmd_attempts + 1]
       done
 
-  - path: /opt/bin/deploy-kube-system
-    permissions: '0700'
-    owner: root:root
-    content: |
-      #!/bin/bash -e
-
-      if [[ -f "/home/cloud/success" ]]; then
-      echo "Already provisioned!"
-      exit 0
-      fi
-
       K8S_CONFIG_SCRIPTS_COPY_DIR=/tmp/k8sconfigscripts/
 
       if [[ $(systemctl is-active setup-kube-system) != "inactive" ]]; then
@@ -287,9 +301,10 @@ write_files:
       sed  -i '/\[plugins."io.containerd.grpc.v1.cri".registry.mirrors\]/a 
'"${registryConfig}"'' /etc/containerd/config.toml
 
       echo "Restarting containerd service"
+      systemctl daemon-reload
       systemctl restart containerd
 
-  - path: /etc/systemd/system/setup-kube-system.service
+  - path: /etc/systemd/system/deploy-kube-system.service
     permissions: '0755'
     owner: root:root
     content: |
@@ -297,33 +312,18 @@ write_files:
       Requires=containerd.service
       After=containerd.service
 
-      [Service]
-      Type=simple
-      StartLimitInterval=0
-      ExecStart=/opt/bin/setup-kube-system
-
-  - path: /etc/systemd/system/deploy-kube-system.service
-    permissions: '0755'
-    owner: root:root
-    content: |
-      [Unit]
-      After=setup-kube-system.service
-
       [Service]
       Type=simple
       StartLimitInterval=0
       Restart=on-failure
-      ExecStartPre=/usr/bin/curl -k https://127.0.0.1:6443/version
       ExecStart=/opt/bin/deploy-kube-system
 
 runcmd:
   - chown -R cloud:cloud /home/cloud/.ssh
   - containerd config default > /etc/containerd/config.toml
   - sed -i 's/SystemdCgroup = false/SystemdCgroup = true/g' 
/etc/containerd/config.toml
-  - systemctl daemon-reload
-  - systemctl restart containerd
+  - until [ -f /opt/bin/setup-kube-system ]; do sleep 5; done
+  - /opt/bin/setup-kube-system
   - until [ -f /etc/systemd/system/deploy-kube-system.service ]; do sleep 5; 
done
-  - until [ -f /etc/systemd/system/setup-kube-system.service ]; do sleep 5; 
done
-  - [ systemctl, start, setup-kube-system ]
-  - [ systemctl, start, deploy-kube-system ]
+  - systemctl start deploy-kube-system
 
diff --git 
a/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-node.yml 
b/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-node.yml
index 86966245c8..de1f4c9ffc 100644
--- 
a/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-node.yml
+++ 
b/plugins/integrations/kubernetes-service/src/main/resources/conf/k8s-node.yml
@@ -120,7 +120,7 @@ write_files:
               fi
               retval=0
               set +e
-              ctr image import "${BINARIES_DIR}/docker/$line"
+              ctr -n k8s.io image import "${BINARIES_DIR}/docker/$line"
               retval=$?
               set -e
               if [ $retval -eq 0 ]; then
@@ -139,6 +139,15 @@ write_files:
           mkdir -p /opt/provider
           cp "${BINARIES_DIR}/provider.yaml" /opt/provider/provider.yaml
         fi
+
+        PAUSE_IMAGE=`ctr -n k8s.io images ls -q | grep "pause" | sort | tail 
-n 1`
+        echo $PAUSE_IMAGE
+        if [ -n "$PAUSE_IMAGE" ]; then
+          sed -i "s|sandbox_image = .*|sandbox_image = \"$PAUSE_IMAGE\"|g" 
/etc/containerd/config.toml
+        fi
+        systemctl daemon-reload
+        systemctl restart containerd
+
         umount "${ISO_MOUNT_DIR}" && rmdir "${ISO_MOUNT_DIR}"
         if [ "$EJECT_ISO_FROM_OS" = true ] && [ "$iso_drive_path" != "" ]; then
           eject "${iso_drive_path}"
@@ -230,9 +239,10 @@ write_files:
       sed  -i '/\[plugins."io.containerd.grpc.v1.cri".registry.mirrors\]/a 
'"${registryConfig}"'' /etc/containerd/config.toml
 
       echo "Restarting containerd service"
+      systemctl daemon-reload
       systemctl restart containerd
 
-  - path: /etc/systemd/system/setup-kube-system.service
+  - path: /etc/systemd/system/deploy-kube-system.service
     permissions: '0755'
     owner: root:root
     content: |
@@ -240,18 +250,6 @@ write_files:
       Requires=containerd.service
       After=containerd.service
 
-      [Service]
-      Type=simple
-      StartLimitInterval=0
-      ExecStart=/opt/bin/setup-kube-system
-
-  - path: /etc/systemd/system/deploy-kube-system.service
-    permissions: '0755'
-    owner: root:root
-    content: |
-      [Unit]
-      After=setup-kube-system.service
-
       [Service]
       Type=simple
       StartLimitInterval=0
@@ -263,9 +261,7 @@ runcmd:
   - chown -R cloud:cloud /home/cloud/.ssh
   - containerd config default > /etc/containerd/config.toml
   - sed -i 's/SystemdCgroup = false/SystemdCgroup = true/g' 
/etc/containerd/config.toml
-  - systemctl daemon-reload
-  - systemctl restart containerd
+  - until [ -f /opt/bin/setup-kube-system ]; do sleep 5; done
+  - /opt/bin/setup-kube-system
   - until [ -f /etc/systemd/system/deploy-kube-system.service ]; do sleep 5; 
done
-  - until [ -f /etc/systemd/system/setup-kube-system.service ]; do sleep 5; 
done
-  - [ systemctl, start, setup-kube-system ]
-  - [ systemctl, start, deploy-kube-system ]
+  - systemctl start deploy-kube-system
diff --git 
a/plugins/integrations/kubernetes-service/src/main/resources/script/upgrade-kubernetes.sh
 
b/plugins/integrations/kubernetes-service/src/main/resources/script/upgrade-kubernetes.sh
index b85ea00e9e..80ea10df1f 100755
--- 
a/plugins/integrations/kubernetes-service/src/main/resources/script/upgrade-kubernetes.sh
+++ 
b/plugins/integrations/kubernetes-service/src/main/resources/script/upgrade-kubernetes.sh
@@ -93,7 +93,7 @@ if [ -d "$BINARIES_DIR" ]; then
   output=`ls ${BINARIES_DIR}/docker/`
   if [ "$output" != "" ]; then
     while read -r line; do
-        ctr image import "${BINARIES_DIR}/docker/$line"
+        ctr -n k8s.io image import "${BINARIES_DIR}/docker/$line"
     done <<< "$output"
   fi
   if [ -e "${BINARIES_DIR}/provider.yaml" ]; then
@@ -107,6 +107,12 @@ if [ -d "$BINARIES_DIR" ]; then
     cp "${BINARIES_DIR}/autoscaler.yaml" /opt/autoscaler/autoscaler_tmpl.yaml
   fi
 
+  PAUSE_IMAGE=`ctr -n k8s.io images ls -q | grep "pause" | sort | tail -n 1`
+  echo $PAUSE_IMAGE
+  if [ -n "$PAUSE_IMAGE" ]; then
+    sed -i "s|sandbox_image = .*|sandbox_image = \"$PAUSE_IMAGE\"|g" 
/etc/containerd/config.toml
+  fi
+
   tar -f "${BINARIES_DIR}/cni/cni-plugins-"*64.tgz -C /opt/cni/bin -xz
   tar -f "${BINARIES_DIR}/cri-tools/crictl-linux-"*64.tar.gz -C /opt/bin -xz
 
@@ -129,6 +135,9 @@ if [ -d "$BINARIES_DIR" ]; then
   systemctl stop kubelet
   cp -a ${BINARIES_DIR}/k8s/{kubelet,kubectl} /opt/bin
   chmod +x {kubelet,kubectl}
+
+  systemctl daemon-reload
+  systemctl restart containerd
   systemctl restart kubelet
 
   if [ "${IS_MAIN_CONTROL}" == 'true' ]; then

Reply via email to