On this page
啟動執行環境 (Image 交付)
載入所需套件以及啟動 Kubespray 執行環境
此份文件是針對使用「Kubespray 容器鏡像」之操作指令
挑選版本
| Image Tag | Kubernetes Ver. | Kubespray Ver. |
|---|---|---|
v2.21.0-1.25.6-e86c0cf0-1 |
1.25.6 |
v2.21.0 |
v2.22.0-1.26.11-71b6fa13-1 |
1.26.11 |
v2.22.0 |
v2.23.0-1.27.7-07e19e54-1 |
1.27.7 |
v2.23.0 |
環境變數
以下指令請於部署主機上進行操作
設定檔放置位置
CNI Plugin 安裝位置
部分情況下,主機上會出現已經 CNI Plugin 已經安裝的情形發生,因此必須宣告 CNI 二進制檔位置
export CNI_DIR=/path/to/cni/binary/directory
不知道 CNI 路徑時,請點擊看指令
如果不知道 CNI 二進制檔位置,需分別檢測以下資料夾
check-cni.sh
#!/bin/bash
folders=(
"/usr/local/libexec/cni"
"/usr/libexec/cni"
"/usr/local/lib/cni"
"/usr/lib/cni"
"/opt/cni/bin"
)
file_name="bridge"
for folder in "${folders[@]}"; do
file_path="$folder/$file_name"
if [[ -f "$file_path" ]]; then
echo "export CNI_DIR=$folder"
exit 0
fi
done
echo "export CNI_DIR="
請複製並執行以下指令後,將會自動宣告 CNI_DIR 環境變數
$(bash check-cni.sh)
主機 IP 地址
使用 ip 指令取得主機 IP,如無該指令亦可直接指定
# 1.2.3.4 僅作為佔位符 (placeholder) 之用,非真實地址
export HOST_IP=$(ip route get 1.2.3.4 | awk '{print $7}' | head -n 1)
進入 Kubespray 執行環境
啟動執行環境並進入到容器內
#!/bin/bash
sudo /usr/local/bin/nerdctl run -d \
--mount type=bind,source="${HOME}"/".ssh",dst=/root/.ssh \
--mount type=bind,source="${INVENTORY_DIR}",dst=/inventory \
-p 80:80 -p 35000:35000 \
-e HOST_IP=${HOST_IP} \
--name "koffline" $([ ! -z "${CNI_DIR}" ] && echo "--cni-path=${CNI_DIR}") \
<kubespray-offline-image>
進入到 Kubespray Offline 容器內
sudo /usr/local/bin/nerdctl exec -it koffline bash
Was this page helpful?