• K8s系列【五、Kubernetes实战演练】


    五、Kubernetes实战演练

    1. Kubernetes基本指令

    1、查看pod信息: kubectl get pod

    2、查询pod详细信息: kubectl get pod -o wide

    3、查询depolyment部署对象信息: kubectl get deployment

    4、查询rs副本控制器信息: kubectl get rs

    5、查询pod服务部署描述详情: kubectl describe pod podName

    6、查询服务部署日志: kubectl logs podName(只有一个容器) kubectl logs podname -c Cname

    7、登录pod内部容器: kubectl exec -it podname – sh

    查询帮助文档:

    1kubectl –help

    2、进一步精确查询帮助文档: kubectl 指令名称 – help

    2. 部署app服务

    需求: 部署一个myapp 服务(myapp镜像内部就是nginx)

    指令: kubectl run my-app --image=hub.kaikeba.com/library/myapp:v1 --port=80

    3. 服务是如何扩容的?

    扩容指令: kubectl scale deployment my-app –replicas=3

     

    访问服务: curl podIp

    4. 服务是如何自愈的?

    试验1: 删除一个pod,查询pod的数量是否满足原来的数量?--- 测试的是副本控制器

    当一个pod出现了问题,副本控制器立即对pod进行修复(重新创建),发现pod的名称发生变化,不是重启而是重建;

    试验2: 删除全部的POD,副本控制器能恢复吗??---如下,证明可以

    问题: 如果想彻底删除pod,如何进行?

    答案: 删除上层的rs或者deployment。

    5. 服务更新

    项目上线后,经常发布新的版本,这些版本就必须立马上线,就必须滚动更新能力;

    新的版本发布: v1 ----- v2 ,实现更新

    更新指令: kubectl set image deployment my-app my-app= hub.kaikeba.com/library/myapp:v2

    6. 负载均衡

    在服务部署中,部署my-app服务的时候,创建多个副本,如何在多个副本中实现负载均衡访问?

     

    Kubernetes中,实现多个副本之间负载均衡的方式,需要使用service资源对象;

    创建Service: service对象服务的pod必须是当前的pod;

    创建的指令: kubectl expose deployment my-app –target-port=80 –port=80

    测试负载均衡:查询负载均衡使用了什么规则?---如下可见,默认轮询

    7. DNS域名解析

    Kubernetes在服务部署中,通过服务名称解析服务ip地址(类似微服务架构服务注册,通过服务名称发现服务),尤其是在微服务架构中,通过服务名称发现服务。

    验证DNS是否OKDNS在服务集群安装时候已经安装了。

  • 相关阅读:
    网页抓取
    基本数据结构
    小节
    顺序统计量
    线性时间排序
    快速排序
    堆排序 Heapsort
    大数运算
    趣味题,文本中洞的数量
    nginx config配置
  • 原文地址:https://www.cnblogs.com/hujunwei/p/15896424.html
Copyright © 2020-2023  润新知