随笔 - 91  文章 - 0  评论 - 2  阅读 - 44255

k8s入门操作

kubectl -->apiserver

管理工具 管理k8s集群 增删改查node

kubectl get service/node/replicaset/deployment/statefulet/daemonset/job/cronjob

kubectl --help  查看所有用法

 

kubectl  describe node node1  查看描述节点

kubectl version 查看版本

kubectl cluster-info 查看集群

 

 kubectl run --help

kubectl run nginx --image=nginx

          控制器名称/pod名  指定镜像

 

kubectl run nginx-deploy --image=nginx:1.14 --port=80 --replicas=3 --dry-run=true

                                     暴露端口  创建3个副本  干跑(不会跑起来)

 

kubectl run nginx-deploy --image=nginx:1.14 --port=80 --replicas=3

 

kubectl run client --image=busybox --replicas=1 -it  --restart=Never

                                      交互输入终端 不会重启

 

 

kubectl get deployment

查看deployment控制信息

 

kubectl get pods

查看pod

 

kubectl get pods -o wide

              显示更多的信息

 

 

curl 10.244.2.2  pod网络可在k8s集群中任一node访问 pod的客户端:其他pod 集群外的客户端

 

kubectl delete pod nginx-deploy-bc9ff65dd-72gjq

删除pod

kubectl delete pod pod名   删除之后deployment会重建pod保持3个副本

 

 

 

kubectl expose --help 创建service  暴露服务  serive_ip:service_port 转发到podip和端口

kubectl expose deployment nginx-deploy  --name=nginx  --port=80  --target-port=80

             控制器类型  控制器名   service name   service端口 映射的容器端口

 

 kubectl get service 查看创建的服务

 

curl 10.103.245.170   service网络是集群内部的网络 只能在集群内访问

 

kubectl get pods -n kube-system -o wide 查看core_dns

 

kubectl get service -n kube-system  查看corednsservice服务

 

kubectl describe service nginx  查看nginx服务的详细描述信息

 

kubectl get pods --show-labels  查看pod并显示label标签  service通过label识别pod

 

kubectl edit service nginx  修改服务

 

kubectl delete service nginx 删除服务

 

kubectl expose deployment nginx-deploy --name=nginx

 

kubectl describe deployment nginx-deploy 查看创建的控制器描述信息

 

 

 

 

kubectl run myapp --image=ikubernetes/myapp:v1 --replicas=2

kubectl get deployment -w  -w监控创建过程

kubectl get pods -o wide  查看myapp

clientpod内测试访问myappip

wget -O - -q  10.244.2.3

wget -O - -q  10.244.1.9/hostname.html  host名称

 

 

 

kubectl expose deployment myapp --name=myapp --port=80 暴露服务

kubectl get svc 查看暴露的服务

clientpod内测试访问myappservice名称

wget -O - -q  myapp/hostname.html

while true;do wget -O - -q  myapp/hostname.html; sleep 1 ;done

 

 

 

kubectl scale --help 改变规模

kubectl scale --replicas=5 deployment myapp 改成5个副本

kubectl get pods 查看一下

kubectl scale --replicas=5 deployment myapp 减到1个副本

 

kubectl describe pods myapp-746644f8d6-45r2x 查看pod的容器名

kubectl set image deployment myapp myapp=ikubernetes/myapp:v2 升级镜像

                控制器  容器名   容器名=镜像名                 

kubectl rollout status deployment myapp 查看容器更新过程

 

kubectl rollout undo deployment myapp   myapp回滚

 

iptables -vnL -t nat 查看service规则

 

 

 

外部访问:

kubectl edit service myapp

修改

type: NodePort

查看myapp映射端口 外部访问的是后面那个端口

kubectl get svc

结果:80:31771/TCP

 

外部访问masternode加上后面那个端口即可

posted on   SZ_文彬  阅读(439)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示