k8s——kubernetes

【k8s——kubernetes】参考地址
一。基本说明

1.目标 为docker容器建造运行环境,这个环境叫Pod2.架构 k8s集群主要由Master节点和Node节点组成 Master是主节点(一个),负责管理和控制 Node是工作节点(一群),里面是具体的容器3.基本概念与术语 Cluster:是计算、存储和网络资源的集合,Kubernetes利用这些资源运行各种基于容器的应用 NameSpace:将一个物理的cluster逻辑上划分成多个Cluster,每个Cluster就是一个Namespace.不同Namespace里的资源是完全隔离的 Master: 控制节点。职责是调度,即决定将应用放在哪里运行 Node:工作节点。职责是运行容器应用。Node由Master管理,Node负责监控并汇报容器的状态,并根据Master的要求管理容器的生命周期 Pod:即环境,k8s的最小工作单元.每个pod包含一个或多个容器.pod中的容器会作为一个整体被Master调度到一个Node运行. Controller:管理Pod的工具,Deploment是最常用的Controller,Deploment可以管理Pod的多个副本,并确保Pod按照期望的状态运行 Service:定义外界访问一组特定Pod的方式.Service有自己的Ip和端口,并把这个Ip和后端的Pod所跑的服务关联起来. Service为Pod提供了负载均衡

二。构建k8s环境(三台服务器,一个Master两个Node)
1.设置三台服务器虚拟Ip地址别名 1.敲命令 hostnamectl set-hostname master(hostnamectl set-hostname work1) 2.vi etc/hosts,写上192.168.0.113 master(192.168.0.114 work1) 2.关闭一些东西 1.关闭swap: 临时禁用:swapoff -a 永久禁用:sed -i.bak '/swap/s/^/#/' /etc/fstab ##注释掉swap那一行2.关闭软件安装的安全级别校验vi /etc/sysconfig/selinux 修改OPTIONS='--selinux-enabled=false‘ 3.配置ip_forward允许转发vi /proc/sys/net/ipv4/ip_forward,编辑里面的值为1 4.br_netfilter模块 lsmod |grep br_netfilter,查看是否有 添加br_netfilter: modprobe br_netfilter##再次查看,已经有了 3.安装并设置docker 1.下载 yum install docker-ce-18.89.9 docker-ce-cli-18.09.9 containerd.io -y 2.国内镜像加速配置,在etc/docker文件夹里面新增文件 daemon.json,并在里面写上语句 { "registry-mirrors": ["https://10ne5axe.mirror.aliyuncs.com"]-- 镜像地址 "exec-opts":["native.cgroupdrivers=systemd"]-- docker底层驱动模式为system } 3.设置docker开机启动systemctl enable docker && systemctl start docker 4.安装并设置k8s三大组件 Kubeadm Kubelet Kubectl 4.1.下载安装k8s yum install -y kubelet-1.64.4 kebuadm-1.64.4 kubectl-1.64.44.2.设置k8s开机启动: systemctl enable kebulet && systemctl start kebulet 4.3. 加载k8s的配置到linux上下文 4.3.1 在home/root创建文件.bash_profile,并且在文件后面加上内容source < (kubectl completion bash) echo "source < (kubectl completion bash)" >> ~/.bash_profile 4.3.2 将.bash_profile 文件配置到环境目录 进入跟目录,然后source .bash_profile4.4.初始化组件 kebuadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.16.4 --pod-network-cidr=10.244.0.0/16 5. mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf HOME/.kube/config sudo chown $(id -u):(id -g) $HOME/.kube/config 6. 安装网络插件kube-flannel 6.1 新建文件 test-flannel.yml 6.2 运行文件 kubectl apply -f test-flannel.yml 7.加入节点(上面是操作Master服务器) 在节点服务器操作: kubeadm join 192.168.3.253:6443 --token lau65m.3j0v7d3k4qmg9wom --discovery-token-ca-cert-hash sha256:s1df5s4f5s4f5w45w4e5f45w45f45e4fw54ef4w5w54f查看所有服务器,包括Master和Node:kubectl get nodes 查看节点加入命令(在Master操作):kubeadm token create --print-join-command

三。怎么玩
查看创建的机器人:kubectl get deployment 创建机器人(机器人用来创建环境)kubectl run nginx-deployment --iamge=nginx:1.7.9//镜像名称可自定义 --port=80//端口 --replicas=2//两个副本查看所有创建的环境:kubectl get pods 或者 kubectl get pods -o wide 查看具体环境的信息:kubectl describe pod 环境名称

    推荐阅读