alias简化k8s命令,节约生命
alias简化k8s命令,节约生命日常运维中,我经常用到k8s命令,每次输入kubectl -nmynamespace get pod -o wide | grep xxx,很费时间。浪费时间等于浪费生命,所以总结了一些日常用的command,整成alias。如下,供大家参考。#kubectl命令alias k8s='kubectl'#常用namespace访问。注意yournm要改成你的name
·
alias简化k8s命令,节约生命
日常运维中,我经常用到k8s命令,每次输入kubectl -nmynamespace get pod -o wide | grep xxx,很费时间。浪费时间等于浪费生命,所以总结了一些日常用的command,整成alias。如下,供大家参考。
#kubectl命令
alias k8s='kubectl'
#常用namespace访问。注意yournm要改成你的namespace
alias k8snm='kubectl -nyournm'
#查找指定名称的pod,用法:kbp your-pode-name
alias kbp='_f(){ k8snm get pod -o wide| grep $1; }; _f'
#查看指定pod最新日志,用法:kbl your-pode-full-name
alias kbl='_f(){ k8snm logs -f --tail=10 $1; }; _f'
#describe你的pod,用法:kdescp your-pode-full-name
alias kdescp='_f(){ k8snm describe pod $1; }; _f'
#进入指定的pod命令行,用法:kbi your-pode-full-name
alias kbi='_f(){
k8snm exec -it $1 -- /bin/bash;
if [ $? -ne 0 ] ;then
k8snm exec -it $1 -- /bin/sh;
else
echo "Error";
fi
}; _f'
#多个满足条件pod,指定pod日志输出。用法:kblp your-pode-name
alias kblp='_f() {
rows=$2
if [ x$rows == x ] ;then
rows=50
fi
echo "last lines: "$rows
pods=$(k8snm get pod|grep $1)
idx=0
pod_name_arr=()
for d in ${pods[@]}
do
if [ $(($idx % 5)) = 0 ]; then
pod_name_arr+=($d)
fi
idx=$((idx+1))
done
pods_num=${#pod_name_arr[@]}
echo $pods_num
if [ $pods_num -eq 1 ]
then
pod=${pod_name_arr[0]};
echo $pod;
sleep 1
k8snm logs -f --timestamps --tail=$rows $pod
else
echo -e "\033[31mPlease choose a pod:\033[0m"
idx=0
for p in ${pod_name_arr[@]}
do
echo $idx":"$p
idx=$((idx+1))
done
read cpod_num
echo "you choose:"
pod=${pod_name_arr[$cpod_num]}
echo $pod
sleep 1
k8snm logs -f --timestamps --tail=$rows $pod
fi
}; _f'
#阿里开源arthas访问pod,用法:arthas your-pode-full-name
alias arthas='_f(){
k8snm exec -it $1 -- test -e arthas-boot.jar;
if [ $? -eq 0 ] ;then
k8snm exec -it $1 -- java -jar arthas-boot.jar;
else
k8snm exec -it $1 -- /bin/bash -c "wget https://arthas.gitee.io/arthas-boot.jar && java -jar arthas-boot.jar";
fi
}; _f'
将上面alias命令写入/etc/profile,然后source /etc/profile,即可享受alias带来的生命节约。
理论上,所有复杂的指令,都可以通过alias实现简写。
alias fname='_f(){ your commands here }; _f'
更多推荐
已为社区贡献4条内容
所有评论(0)