k8s基础组件与创建资源

文章目录

一、k8s基础组件

Master节点:

1.API Server:集群的统一入口

2.Controller Manager:负责维护集群的状态

3.Scheduler:负责集群中资源调度

3.etcd:负责存储集群中各种资源信息

Worker节点:

1.kubelet:让·容器运行·时创建容器,每个节点上都有kubelet;负责维护容器的生命令周期

2.kube-proxy:负责提供集群内容的服务发现和负载均衡

3.Container Runtime:容器运行时;如Docker、Containerd(k8s1.24之后)

Add-ons附件:

1.coredns/kube-dns

2.Ingress controller

3.Dashboard:可视化管理界面

4.flannel:网络插件

二、使用kubeadm部署k8s

k8s的客户端管理工具:kubectl

关闭swap交换分区,因为磁盘做缓存时延迟高,所以最好直接使用内存。

初始化master节点:kubeadm init ......

安装网络插件:flannel

将worker节点加入master:kubeadm join......

三、k8s客户端管理工具:kubectl

1.node节点管理

bash 复制代码
# 查看每个节点信息
kubectl get node
# 查看命名空间
kubectl get ns
# 查看default命名空间下的pod资源
kubectl get pod
# -A:查看所有pod
# -o wide:查看资源详细信息
# 查看集群信息
kubectl cluster-info
# 查看master节点详细信息
kubectl describe node master
# 查看节点标签
kubectl get node --show-labels
# 为master节点加标签
kubectl label node master region=beijing
# 去除region标签;标签中尽量不要有减号
kubectl label node master region-
# 标签选择器
kubectl get node --show-labels -l 标签
# 筛选多个标签
kubectl get node -l "business in (game,ad)"

2.创建资源

bash 复制代码
# 查看集群各种资源信息
kubectl api-resources
# 查看容器详细信息
kubectl describe pod 容器名 -n namespace
# 删除u容器
kubectl delete pod 容器名 -n namespace
# 根据配置文件创建资源
kubectl create -f yaml文件
# 查看创建的资源
kubectl get -f yaml文件
# 删除创建的自研
kubectl delete -f yaml文件 --force
# 声明式对象配置:apply,自资源不存在就创建,存在就更新;apply会记录历史数据,存放到注解中
# 创建资源
kubectl apply -f yaml文件
# 在线在线编辑资源
kubectl edit pod 容器 -n namespace
# 以yaml格式查看pod资源
kubectl get pod 容器名 -n namespace -o yaml

3.pod控制器:deployment

bash 复制代码
# 弹性扩容
kubectl scale deploy 名称 --replicas=3 -n namespace
相关推荐
孙克旭_37 分钟前
云原生基础之Containerd容器运行时
运维·云原生
分布式存储与RustFS38 分钟前
RustFS 自建对象存储实战目录:110 篇按场景分类(持续更新)
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
无忧_wy41 分钟前
MoneyPrinterTurbo 自动化视频生成实战指南
运维·人工智能·自动化·音视频
木头左11 小时前
【Nginx】内网服务源 IP 白名单实战:动态域名解析放行网段 + 端口接管零改造
运维·nginx·白名单·反向代理
禁默12 小时前
启元 Q1 二次开发实践:Ubuntu 部署与仿真验证,从 PrimeConsole 到 ROS 2 Humble + RViz
linux·运维·ubuntu
skywalk816312 小时前
把 去也网站 从 Ubuntu 搬到 FreeBSD:一次 Service Jail + nginx 的部署实录
linux·运维·nginx·ubuntu·freebsd
翔云12345614 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
爱莉希雅&&&14 小时前
GitLab 完整学习笔记
linux·运维·服务器
java_logo15 小时前
Docker 部署 EmulatorJS:轻松搭建浏览器复古游戏平台
游戏·docker·容器·复古游戏·轩辕镜像·emulatorjs·红白机