May 8, 2019
K8S命令行工具Kubectl的实用命令
安装配置Kubectl:
- 下载kubectl,地址:https://kubernetes.io/docs/tasks/tools/install-kubectl/#install-kubectl
- 下载完成后放置到本地$Path路径
- 修改本地
$HOME/.kube/config
,设置集群地址,凭证等信息
用kubectl获取k8s集群的基本信息:
$ kubectl get pods # 查看default命名空间下的pods $ kubectl get pods -n test # 查看test命名空间下的pods $ kubectl get deployments # 查看default命名空间下的部署 $ kubectl get services # 查看default命名空间下的服务 $ kubectl get pods -o=jsonpath="{range .items[*]}{'\n'}{.metadata.name}{':\t'}{range .spec.containers[*]}{.image}{', '}{end}{end}" # 查看pods里container的镜像和版本
查看资源情况:
$ kubectl top pod # 查看pods的cpu和memory资源占用 $ kubectl top node # 查看节点的cpu和memory资源占用和百分比
调试和进入Pod:
$ kubectl describe pod ${pod_name} # 查看某个pod的信息(例如在pod有问题可以debug) $ kubectl exec -it ${pod_name} bash # 进入某个pod的某个容器进行调试
通过端口转发调试接口:
May 7, 2019
墙内的Centos7 Linux安装K8S
安装基础构建依赖
$ yum -y install yum-utils device-mapper-persistent-data lvm2
安装Docker
$ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo $ yum -y install docker-ce $ systemctl start docker && systemctl enable docker $ docker images # 确定docker命令正常
安装Kubernetes
3.1 安装kubeadm, kubelet, kubectl
$ vim kubernetes.repo [kubernetes] name=Kubernetes baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64 enabled=1 gpgcheck=0 $ yum -y install kubelet kubeadm kubectl kubernetes-cni $ systemctl enable kubelet && systemctl start kubelet
3.2 pull下来kubernetes要要到的镜像,因为k8s.gcr.io这个域名被墙,需要从阿里云pull下来然后重新打tag,参考文档里的几篇版本都对不上,首先可以通过这个命令
列出
确定需要pull的镜像和版本:$ kubeadm config images list
3.3 根据上一步列出的镜像和版本号,参考
https://github.com/cookcodeblog/k8s-deploy
的目录kubeadm_v1.13.0/04_pull_kubernetes_images_from_aliyun.sh
编写一个脚本,注意替换成你需要的版本,然后执行。