草庐IT

k8s之containerPort、servicePort、nodePort、hostPort解析

    上次写博客是n多年以前了,以前的几十篇在blogjava里面应该还能吵到。最近遭遇变故,忽然想把自己近期学的一点东西记录下来,日后查阅起来也是方便。    话不多说,笔者最近在啃k8s,容器也好、k8s也罢,里面和服务相关的port概念五六个,索性整理一下,看看他们之间的关系。首先看一下我们的测试环境:一组三从的k8集群:root@dev-4-control-plane#shnode.sh|NODE|INTERNAL_IP|dev-4-control-plane|172.18.0.2|dev-4-worker|172.18.0.5|dev-4-worker2|172.18.0.4|de

【Kubernetes运维篇】RBAC之创建集群用户管理K8S

文章目录一、创建zhangsan集群用户赋予uat名称空间管理员权限二、创建lisi集群用户赋予查看所有名称Pod权限需求:公司新入职两位运维同事,分别是zhangsan、lisi,刚入职肯定不能给K8S管理员权限,所以需要创建两个系统账号,分别对应不同的权限:zhangsan用户:对uat名称空间拥有管理员权限lisi用户:对所有命名空间拥有查看Pod的权限一、创建zhangsan集群用户赋予uat名称空间管理员权限第一步:生成一个私钥cd/etc/kubernetes/pki/(umask077;opensslgenrsa-outzhangsan.key2048)第二步:生成一个证书请求o

轻量化安装 TKEStack:让已有 K8s 集群拥有企业级容器云平台的能力

关于我们更多关于云原生的案例和知识,可关注同名【腾讯云原生】公众号~福利:①公众号后台回复【手册】,可获得《腾讯云原生路线图手册》&《腾讯云原生最佳实践》~②公众号后台回复【系列】,可获得《15个系列100+篇超实用云原生原创干货合集》,包含Kubernetes降本增效、K8s性能优化实践、最佳实践等系列。③公众号后台回复【白皮书】,可获得《腾讯云容器安全白皮书》&《降本之源-云原生成本管理白皮书v1.0》④公众号后台回复【光速入门】,可获得腾讯云专家5万字精华教程,光速入门Prometheus和Grafana。作者王龙,腾讯云后台开发工程师,负责TKEStack的设计开发维护及混合云项目相关

轻量化安装 TKEStack:让已有 K8s 集群拥有企业级容器云平台的能力

关于我们更多关于云原生的案例和知识,可关注同名【腾讯云原生】公众号~福利:①公众号后台回复【手册】,可获得《腾讯云原生路线图手册》&《腾讯云原生最佳实践》~②公众号后台回复【系列】,可获得《15个系列100+篇超实用云原生原创干货合集》,包含Kubernetes降本增效、K8s性能优化实践、最佳实践等系列。③公众号后台回复【白皮书】,可获得《腾讯云容器安全白皮书》&《降本之源-云原生成本管理白皮书v1.0》④公众号后台回复【光速入门】,可获得腾讯云专家5万字精华教程,光速入门Prometheus和Grafana。作者王龙,腾讯云后台开发工程师,负责TKEStack的设计开发维护及混合云项目相关

K8S面试题总结

1、kubenetes针对pod资源对象的健康监测机制?        答:提供了三类probe(探针)来执行对pod的健康监测:1)livenessProbe(存活探针):可以根据用户自定义规则来判定pod是否健康,用于判断容器是否处于Running状态,如果不是,kubelet就会杀掉该容器,并根据重启策略做相应的处理。如果容器不包含该探针,那么kubelet就会默认返回值都是success;2)ReadinessProbe(就绪探针):同样是可以根据用户自定义规则来判断pod是否健康,容器服务是否可用(Ready),如果探测失败,控制器会将此pod从对应service的endpoint列

K8S面试题总结

1、kubenetes针对pod资源对象的健康监测机制?        答:提供了三类probe(探针)来执行对pod的健康监测:1)livenessProbe(存活探针):可以根据用户自定义规则来判定pod是否健康,用于判断容器是否处于Running状态,如果不是,kubelet就会杀掉该容器,并根据重启策略做相应的处理。如果容器不包含该探针,那么kubelet就会默认返回值都是success;2)ReadinessProbe(就绪探针):同样是可以根据用户自定义规则来判断pod是否健康,容器服务是否可用(Ready),如果探测失败,控制器会将此pod从对应service的endpoint列

k8s ImagePullBackOff的原因

kubernetes如果遇到ImagePullBackOff该如何排查呢?状态$kubectlgetpodsNAMEREADYSTATUSRESTARTSAGEsentry-web0/1ImagePullBackOff04m55sImagePullBackOff代表拉取镜像时被阻塞,最常见的原因是镜像不存在。原因使用kubectldescribepodsentry-web查看启动细节:$kubectldescribepodsentry-webName:sentry-webNamespace:default...省略Events:TypeReasonAgeFromMessage---------

Ubuntu22.04部署K8S1.27.2版本集群

一、设置主机名并在hosts文件中添加条目1、登录节点使用hostnamectl命令设置hostname#在master中:     172.18.10.11$sudohostnamectlset-hostname"k8s-master"#在work1节点中: 172.18.10.12$sudohostnamectlset-hostname"k8s-worker1"#在work2节点中: 172.18.10.13$sudohostnamectlset-hostname"k8s-worker2"$execbash 2、在每个节点上的/etc/hosts文件中添加以下内容sudovi/etc/ho

把k8s容器里的文件复制到本地

要将Kubernetes(K8s)容器中的内容复制到本地,可以使用`kubectlcp`命令。以下是复制容器内容到本地的示例:1.确定Pod和容器名称:首先,需要确定包含要复制内容的Pod名称和容器名称。您可以使用以下命令列出集群中的Pod:  kubectlgetpods  找到包含要复制内容的适当Pod,记下Pod名称和容器名称。2.复制容器内容:通过Pod和容器名称,可以使用`kubectlcp`命令将容器内容复制到本地。命令的格式如下:kubectlcp/:  将``替换为适当的命名空间,``替换为实际的Pod名称,``替换为容器内要复制的内容的路径,``替换为您本地机器上的目标文件夹

k8s删除node节点的方法

1.查看集群的节点[root@k8s-master~]#kubectlgetnodesNAMESTATUSROLESAGEVERSIONk8s-masterReadycontrol-plane,master66mv1.23.8k8s-node1Readynone>61mv1.23.8k8s-node2Readynone>61mv1.23.8[root@k8s-master~]#2.删除node2节点2.1驱逐node2节点上的pod#k8s-node2是node2的hostname[root@k8s-master~]#kubectldraink8s-node2--delete-local-da