美文网首页测试那些事儿
K8S问与答(持续更新)

K8S问与答(持续更新)

作者: 极客与宽客 | 来源:发表于2019-07-02 17:51 被阅读4次

    问题:Kubenertes资源分配之Request和Limit解析

    解答:如果k8s部署的时候开了profile, 所以用的都是limit字段, 不是request字段。

    Limit: 容器能使用资源的资源的最大值,设置为0表示使用资源无上限。

    Request: 容器使用的最小资源需求,作为容器调度时资源分配的判断依赖。只有当节点上可分配资源量>=容器资源请求数时才允许将容器调度到该节点。但Request参数不限制容器的最大可使用资源。

    Request能够保证Pod有足够的资源来运行,而Limit则是防止某个Pod无限制地使用资源,导致其他Pod崩溃。两者之间必须满足关系: 0<=Request<=Limit<=Infinity (如果Limit为0表示不对资源进行限制,这时可以小于Request)

    参考:https://blog.csdn.net/qq_38391495/article/details/71598803

    问题:iptables 规则

    解答:http://www.zsythink.net/archives/1199/

    问题:获取集群node信息

    解答:当我们ssh root@xxx.xxx.xx.xxx, 输入kubectl get nodes得到节点信息,需要注意的是当前执行命令的地方并不是以下节点。我们是通过K8S命令行工具kubectl远程管理集群的。 执行kubectl cluster-info可以看到集群信息。

    问题:Pod是什么

    解答:Pod是容器的集合,通常会将紧密相关的一组容器放到一个Pod中,同一个Pod中的所有容器共享IP地址和Port空间,他们在同一个network namespace中。

    Pod是k8s调度的最小单位,同一Pod中的容器始终被一起调度。

    运行kubectl get pods,查看当前的Pod有哪些。

    运行k describe pods,查看当前的pod信息

    问题:如何访问应用

    解答:默认情况下,pod只能在集群内部访问。如果想从外部访问应用,需要将容器的端口映射到节点的端口。使用kubectl get services. 可以查看到应用被映射到节点的哪个端口。

    问题:Scale应用增加副本数量&k8s是如何实现负载均衡的

    解答:默认情况下应用只会运行一个副本,可以通过kubectl get deployments查看副本数。

    执行命令: kubectl scale deployments/$(deployment name) --replicas=3(你想要改成的nuber数量)

    然后执行:kubectl get pods 可以看到当前pod增加到3个。

    通过curl访问应用,可以看到每次请求发送到不同的Pod, 3个副本轮询处理,这样就实现了负载均衡。

    scale down:减少副本数量,详情参照下图。

    scale describe scale down

    持续更新。。。。。

    相关文章

      网友评论

        本文标题:K8S问与答(持续更新)

        本文链接:https://www.haomeiwen.com/subject/vuxuqctx.html