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 转发到pod的ip和端口

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  查看coredns的service服务

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

在client的pod内测试访问myapp的ip

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 查看暴露的服务

在client的pod内测试访问myapp的service名称

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

外部访问master或node加上后面那个端口即可

k8s入门操作的更多相关文章

  1. k8s入门系列之guestbook快速部署

    k8s集群以及一些扩展插件已经安装完毕,本篇文章介绍一下如何在k8s集群上快速部署guestbook应用. •实验环境为集群:master(1)+node(4),详细内容参考<k8s入门系列之集 ...

  2. k8s入门系列之集群安装篇

    关于kubernetes组件的详解介绍,请阅读上一篇文章<k8s入门系列之介绍篇> Kubernetes集群安装部署 •Kubernetes集群组件: - etcd 一个高可用的K/V键值 ...

  3. K8s 入门

    中文文档:https://www.kubernetes.org.cn/kubernetes%E8%AE%BE%E8%AE%A1%E6%9E%B6%E6%9E%84 小结大白话 Portainer 挺好 ...

  4. k8s 入门系列之集群安装篇

    关于kubernetes组件的详解介绍,请阅读上一篇文章<k8s入门系列之介绍篇> Kubernetes集群安装部署 •Kubernetes集群组件: - etcd 一个高可用的K/V键值 ...

  5. 都9102年了,还不会Docker?10分钟带你从入门操作到实战上手

    Docker简述 Docker是一种OS虚拟化技术,是一个开源的应用容器引擎.它可以让开发者将应用打包到一个可移植的容器中,并且该容器可以运行在几乎所有linux系统中(Windows10目前也原生支 ...

  6. k8s入门你至少需要会哪些

    body { margin: 0; overflow: auto; font: normal 14px Verdana; background: rgba(255, 255, 255, 1); pad ...

  7. k8s入门之集群搭建(二)

    一.准备三台节点 从上篇文章 k8s入门之基础环境准备(一)安装的Ubuntu虚拟机克隆出三台虚拟机,如图所示 启动这三台虚拟机节点,分别做如下配置 虚拟机名称 IP HostName k8sMast ...

  8. k8s入门系列之扩展组件(一)DNS安装篇

    DNS (domain name system),提供域名解析服务,解决了难于记忆的IP地址问题,以更人性可读可记忆可标识的方式映射对应IP地址. Cluster DNS扩展插件用于支持k8s集群系统 ...

  9. spring boot 入门操作(二)

    spring boot入门操作 使用FastJson解析json数据 pom dependencies里添加fastjson依赖 <dependency> <groupId>c ...

  10. spring boot 入门操作(三)

    spring boot入门操作 devtools热部署 pom dependencies里添加依赖 <dependency> <groupId>org.springframew ...

随机推荐

  1. DeepSeek崛起:程序员“饭碗”被抢,还是职业进化新起点?

    2025年伊始,Meta创始人扎克伯格的一则声明引发全球程序员热议:"AI将在今年达到中级工程师水平,逐步接管编程工作."与此同时,国产AI大模型DeepSeek的爆火,让一名8岁 ...

  2. [SDOI2008] 洞穴勘测 题解

    似乎所有的线段树分治题都能被 \(LCT\) 平替掉? 一眼动态树,直接 \(LCT\). Connect x y 操作用 \(link(x,y)\) 实现,Destroy x y 操作用 \(cut ...

  3. Postman 调试 SignalR 发布的wss接口

    微软官网的SignalR例子拿来跑即可 Postman 调试SignalR 发送post请求获取token 将获取到的connectionToken加入ws链接 点击 Connect 发送第一条协商消 ...

  4. Ubuntu详细的安装和配置ssh教程

    Ubuntu安装和配置ssh的步骤如下: 打开终端,输入以下命令安装ssh: sudo apt-get install openssh-server 安装完成后,启动ssh服务: sudo syste ...

  5. Hadoop - hadoop自带MR案例:词频 WordCount

    词频 Word Count 1.在浏览器上访问 https://node01:9870 2.创建目录 /user 目录 bin/hdfs dfs -mkdir /user 如果未配置环境变量,需要到h ...

  6. 阻尼、模态应变能法与FRP的关系

    阻尼的概念 系统损耗振动能或声能的能力称为阻尼 阻尼越大,输人系统的能量便能在较短时间内损耗完毕.系统从受激振动到重新静止所经历的时间就越短; 阻尼也可理解为系统受激后迅速恢复到受激前状态的一种能力 ...

  7. ChatBI≠NL2SQL:关于问数,聊聊我踩过的坑和一点感悟

    "如果说数据是新时代的石油,智能问数就是能让普通人也能操作的智能钻井平台." 这里是**AI粉嫩特攻队!** ,这段时间真的太忙了,不过放心,关于从零打造AI工具的coze实操下篇 ...

  8. C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)

    前言 C#/.NET/.NET Core技术前沿周刊,你的每周技术指南针!记录.追踪C#/.NET/.NET Core领域.生态的每周最新.最实用.最有价值的技术文章.社区动态.优质项目和学习资源等. ...

  9. DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?

    大家好,我是狂师. 前阵子在知乎闲逛时,有个问题激起了大家的热议:"DeepSeek 如何颠覆传统软件测试?测试工程师会被淘汰吗".这看似简单的一问,激起层层思考,针对这个问题,今 ...

  10. HTTP 尝试获取 Client IP

    HTTP 中获取 Client IP 相关策略需求, 在当下网络环境中多数只能提供建议作用. 更多的是 通过其它唯一标识来挖掘更多潜在价值. 本文主要就一个内容, 如何最大可能尝试在 HTTP 请求中 ...