Linux安装kubectl

前言

以下所有命令基于CentOS7.9系统,官方参考文档:==>

文章最后附有一键安装的脚本,可以直接运行脚本进行安装

下载安装文件

1. 下载最新发行版

curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"

2.下载指定版本

将上面命令中的$(curl -L -s https://dl.k8s.io/release/stable.txt)替换为对应版本即可,以v1.27.0为示例

curl -LO https://dl.k8s.io/release/v1.27.0/bin/linux/amd64/kubectl

以下内容基于最新版本安装,以上命令执行后会下载对应的文件

验证可执行文件 (该步骤可以跳过)

下载校验和文件

校验和文件需要和下载的kubectl安装文件版本保持一致,否则验证会失败,如果需要下载指定版本同样将$(curl -L -s https://dl.k8s.io/release/stable.txt)替换为对应版本即可

curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"

以上命令执行结果

验证可执行文件

echo "$(cat kubectl.sha256)  kubectl" | sha256sum --check

 验证成功输出以下内容

如果验证失败 sha256将以非零值退出,并打印如下输出:

kubectl: FAILED
sha256sum: WARNING: 1 computed checksum did NOT match

安装kubectl

sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl

如果没有root权限也可以将kubectl文件复制到指定目录中,然后配置环境变量即可,以下以安装到/home目录为例

chmod +x kubectl 
mkdir -p /home/kubectl
mv ./kubectl /home/kubectl/
# 添加环境变量
echo -e "\n# kubectl配置" >> /etc/profile.d/my_env.sh
echo "KUBECTL_HOME=/home/kubectl" >> /etc/profile.d/my_env.sh
echo "export PATH=\$KUBECTL_HOME:\$PATH" >> /etc/profile.d/my_env.sh
# 刷新环境变量
source /etc/profile

验证安装结果

kubectl version --client

 输出以下内容代表安装成功

 一键安装脚本

以下是一键安装kubectl的脚本,如果要安装指定版本的kubectl只需要将脚本中的$(curl -L -s https://dl.k8s.io/release/stable.txt)替换为指定版本即可

参数说明

$1:可选参数,文件下载的位置,默认在当前所在的文件夹

$2:可选参数,文件安装的位置,不传默认安装在/usr/local/bin目录下

脚本内容

#!/bin/bash

k_path=`pwd`
install_path=`pwd`

if [ -n "$1" ];then
  k_path=$(cd $1 && pwd)
fi

if [ -n "$2" ];then
  install_path=$(cd $2 && pwd)
fi

# 下载安装文件
cd $k_path && { curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" ; cd -; }

# 下载校验和文件
cd $k_path && { curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256" ; cd -; }

# 校验可执行文件
 chmod +x $k_path/kubectl
 echo "$(cat $k_path/kubectl.sha256)  $k_path/kubectl" | sha256sum --check

if [ $? != 0 ];then
  echo "================安装文件校验失败==================="
  return
fi

# 安装kubectl
# 是否指定安装路径
if [ -z $2 ];then
  sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
else
  mv $k_path/kubectl $install_path/kubectl
  # 添加环境变量
  echo -e "\n# kubectl配置" >> /etc/profile.d/my_env.sh
  echo "KUBECTL_HOME=$install_path" >> /etc/profile.d/my_env.sh
  echo "export PATH=\$KUBECTL_HOME:\$PATH" >> /etc/profile.d/my_env.sh
  # 刷新环境变量
  source /etc/profile
fi

# 校验是否安装成功
kubectl version --client

if [ $? != 0 ];then
  echo "kubectl安装失败"
fi
 
# 删除下载的文件
rm -f $k_path/kubectl
rm -f $k_path/kubectl.sha256

结束

以上是安装kubectl的全部过程,如有问题欢迎随时交流

猜你喜欢

转载自blog.csdn.net/LSW_JAVADP/article/details/130402214