伸缩(Scale up/down)是指在线增加或减少pod副本数量 通过yml文件创建两个nginx的pod 先查看一下nginx的yml文件: 通过kubectl apply -f创建 通过kubectl  get 查看ngin1的资源信息 通过上面的资源我们可以看出目前pod有两个副本 通过修改nginx1.yml文件的replicas进行scale up 执行kubectl apply -f  nginx1.yml 通过kubectl get进行查看 出于安全考虑,默认配置下kuberne…
环境:三个centos7 K8s2是Master;K8s1是node1:K8s3是node2 官方文档:https://kubernetes.io/docs/setup/independent/install-kubeadm/ 注意:kubernetes几乎所有的安装组件和docker 镜像都放在goolge自己的网站上 安装docker 所有节点都安装docker:可利用docker-machine安装:可参考:https://www.cnblogs.com/lkun/p/7655495.ht…
kubectl apply每次更新应用时kubernetes都会记录下当前配置,保存为一个revision(版次),这样就可以回滚到某个特定的revision 默认配置下,kubernetes只会保留最近的几个revision,可以在deployment配置文件中通过revisionHistoryLimit属性增加resivion数量. 准备三个yml配置文件,镜像分别是httpd 镜像 2.4.16,2.4.17 和 2.4.18: 通过yml文件部署新的应用 --record的作用是将当前命…
容器按照持续运行的时间可以分为两类:服务类容器和工作类容器 服务类容器:持续提供服务 工作类容器:一次性任务,处理完后容器就退出 Deployment,replicaset和daemonset都用于管理服务类容器, 对于工作类的容器,我们用job 编辑一个简单的job类型的yml文件 1.apiversion:当前job的apiversion是batch/v1 2.kind:当前的资源类型是job 3.restartpolicy指定什么情况下需要重启容器.对于job只能设置为never或者onf…
Kubernetes通过label实现将pod运行在指定得node上. 默认配置下,Schesuler将pod调度到所有可用得node,有时候我们希望将pod部署到指定得node,比如将有大量磁盘I/O得pod部署到配置了SSD得node:或者pod需要GPU,需要运行在配置了GPU得节点上 label是key-value对,各种资源都可以设置label,灵活添加各种自定义得属性: 可以执行如下命令设置node得label kubectl label node k8snode2  disktyp…
Cluster cluster是计算,存储和网络资源的集合,kubernetes是利用这些资源运行各种基于容器的应用 Master Master是cluster的大脑,他的主要职责是调度,即决定应用在哪里运行.master运行linux操作系统,可以是物理机或者虚拟机.为了实现高可用,可以运行多个master. Node Node的职责是运行容器应用.Node有master管理,Node负责监控并汇报容器的状态,并根据master的要求管理容器的生命周期.Node运行在linux操作系统,可以是…
kubernetes官网:https://kubernetes.io/docs/home/ 也是怀着不情愿的心情,要开始kubernetes了,本身是非常热爱技术,尤其是容器技术,可能是最近有点累和懈怠,变得有些懒惰了. 每每这种情况,我都会去智联招聘搜一下docker....薪资很高,看了具体的招聘要求,差距很大很大,感觉好累啊.只能说学海无涯,回头可能是岸....话不多说了.开始吧 跑起来~~~ https://kubernetes.io/docs/tutorials/kubernetes-…
自愈能力是容器的重要特性.自愈的默认方式是自动重启发生故障的容器. 用户还可以通过liveness和readiness探测机制设置更精细的健康检查,进而实现: 1.零停机部署 2.避免部署无效的镜像 3.更加安全的滚动升级 kubernetes默认的健康检查机制: 每个容器启动时都会执行一个进程,此进程由dockerfile的cmd或entrypoint指定.入伏哦进程退出的时候返回的是非零,则认为容器发生故障,Kubernetes就会根据restartpolicy重启容器 下面模拟一个容器发生…
滚动更新:一次只更新一小部分副本,成功后,在更新更多的副本,最终完成所有副本的更新. 滚动更新的最大好处是零停机,整个更新过程始终有副本在运行,从而保证了业余的连续性 下面部署三个副本的应用,出事镜像为httpd:2.2.31,然后将其更新到 httpd:2.2.32. 将配置文件中的 httpd:2.2.31 替换为 httpd:2.2.32,再次执行 kubectl apply 现在httpd的deployment镜像变成了httpd:2.2.32 从pod的运行时间来看或者从deploym…
kubernetes提供了多种类型的service,默认是cluster IP ClusterIP cluster内部IP对外提供服务,只有cluster内的节点和pod可访问,这是默认的service. NodePort service通过cluster节点的静态端口对外提供服务,cluster外部可以通过 nodeip:nodeport访问service loadbalancer Service 利用 cloud provider 特有的 load balancer 对外提供服务,cloud…