Kubernetes安装与使用

来源:互联网 发布:python opencv教程 编辑:程序博客网 时间:2024/06/05 19:26

安装

  • 翻墙使用root权限执行以下内容或者参考这里
wget https://coding.net/u/scaffrey/p/hosts/git/raw/master/hosts cp hosts /etc/hosts
  • 安装
apt-get update && apt-get install -y apt-transport-httpscurl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -cat <<EOF > /etc/apt/sources.list.d/kubernetes.listdeb http://apt.kubernetes.io/ kubernetes-xenial mainEOFapt-get updateapt-get install -y docker.ioapt-get install -y kubelet kubeadm kubectl kubernetes-cni

配置master节点

  • 在master节点执行以下命令
kubeadm init  --pod-network-cidr 10.244.0.0/16


运行结果

  • 使master node参与工作负载
kubectl taint nodes --all node-role.kubernetes.io/master-
  • 安装网络
kubectl create -f https://github.com/coreos/flannel/raw/master/Documentation/kube-flannel-rbac.ymlkubectl create -f  https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml


这里写图片描述

配置worker节点

  • 执行初始化master节点后打印的最后一行
kubeadm resetkubeadm join --token 6aa93f.04f7fbce49b7f3bb 222.20.101.106:6443


这里写图片描述
这里写图片描述

使用

  • 使用kubectl的run命令创建deployment
kubectl run nginx --image=nginx:1.10.0kubectl get pods -o wide
  • 使用expose 将端口暴露出来
kubectl expose deployment nginx --port 80 --type LoadBalancerkubectl get services -o wide
  • 通过scale命令扩展应用
kubectl scale deployments/nginx --replicas=4kubectl get pods -o wide
  • 创建nginx版本

    这里写图片描述
  • 更新应用镜像,滚动更新应用镜像
kubectl set image deployments/nginx nginx=qihao/nginx
  • 确认更新
kubectl rollout status deployments/nginx 
  • 回滚到之前版本
kubectl rollout undo deployments/nginx 
  • 负载均衡(不停的刷新服务的地址,过段时间会有变化)
kubectl exec -it nginx-2027219757-r1sqm bashuname -n > /usr/share/nginx/html/index.html 
  • 结束
kubectl delete deployment nginx && kubectl delete service nginxkubectl get services -o widekubectl get pods -o widekubectl get nodes
原创粉丝点击