某不知名博客 某不知名博客
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Carsaid

安全界的小学生
首页
  • 《vulcat文档》
  • Web安全

    • 《BurpSuite及官方实验室》
    • 《OSWE学习历程》
  • 云原生安全

    • 《Docker命令大全》
    • 《CKS考试学习指南》
    • 《旧-Kubernetes教程》
漏洞库
  • 《渗透工具大全》
  • 《云安全》
事件库
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 前言

  • 学习建议

  • Docker命令大全
  • Kubernetes教程

    • Kubernetes(K8s)学习教程 - 前言
    • 第1章-Kubernetes集群部署
    • 第2章-便捷性设置以及集群插件的安装
    • 第3章-基础操作
    • 第4章-集群升级
    • 第5章-Pod
    • 第6章-Pod生命周期与资源限制
    • 第7章-Pod与节点
    • 第8章-控制器Deployment
    • 第9章-Deployment镜像变更和滚动更新
    • 第10章-其他控制器-以及标签表达式
    • 第11章-控制器与节点驱逐
    • 暂缓更新
    • 练习题

    • 常用命令及yaml配置

      • 常见的集群配置文件
      • kubectl

      • kubeadm

      • ctr

      • etcd(etcdctl)

      • yaml常用配置项

        • Pod文件常用配置项
        • LimitRange文件常用配置项
        • ResourceQuota文件常用配置项
        • 控制器(Deployment)
        • 水平自动扩缩(HPA)
        • 其他控制器(DS、RC和RS)
          • 创建 DaemonSet(DS)
          • 创建 ReplicationController(RC)
          • 创建 ReplicaSet(RS)
        • 持久卷(PV)
        • 持久卷申领(PVC)
        • 存储类(StorageClass)
        • Secret
        • ConfigMap
        • 任务(Job)
        • 周期任务(CronJob)
        • 服务(Service)
        • 路由规则(Ingress)
        • 网络策略(NetworkPolicy)
        • 角色(Role)
        • 角色绑定(RoleBinding)
        • 集群角色(ClusterRole)
        • 集群角色绑定(ClusterRoleBinding)
        • 证书签名请求(CertificateSigningRequest)
      • 具有特殊作用的标签或注释

  • CKS教程

  • 云原生安全
  • Kubernetes教程
  • 常用命令及yaml配置
  • yaml常用配置项
carsaid
2023-11-27
目录

其他控制器(DS、RC和RS)

# 其他控制器 yaml文件常用配置项

包含 DaemonSet(DS)、ReplicationController(RC)和 ReplicaSet(RS)。

这三种控制器无法直接通过命令行创建,你需要先生成一个 Deployment 的配置文件,然后对其进行修改。

学习更多

  • 官方文档-DaemonSet (opens new window)
  • 官方文档-ReplicaSet (opens new window)
  • 官方文档-ReplicationController (opens new window)

# 1创建 DaemonSet(DS)

kubectl create deployment ds-test --image nginx --dry-run=client -o yaml > ds-test.yaml

vim ds-test.yaml
1
2
3

修改四个不同点:

  • 将kind字段改为DaemonSet
  • DaemonSet 没有 “副本数” 这个概念,因为每个节点上至多只有一个 Pod,所以删除spec.replicas字段
  • 删除spec.strategy字段
  • 删除最后一行的status字段
apiVersion: apps/v1
kind: DaemonSet                 # 修改资源名称
metadata:
  creationTimestamp: null
  labels:
    app: ds-test
  name: ds-test
spec:                           # 删除副本数 replicas 和策略 strategy
  selector:
    matchLabels:
      app: ds-test
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: ds-test
    spec:
      containers:
      - image: nginx
        name: nginx
        resources: {}
# 删除 status
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

# 2创建 ReplicationController(RC)

kubectl create deployment rc-test --image nginx --dry-run=client -o yaml > rc-test.yaml

vim rc-test.yaml
1
2
3

修改四个不同点:

  • RC 的apiVersion应该为v1
  • 对应的kind(资源名称)
  • RC 的spec.selector字段下没有matchLabels字段,可以直接填写标签
  • 没有spec.strategy字段
# apiVersion: apps/v1
# kind: Deployment
apiVersion: v1
kind: ReplicationController
metadata:
  creationTimestamp: null
  labels:
    app: rc-test
  name: rc-test
spec:
  replicas: 1
  selector:
    # matchLabels:              没有该字段
    app: rc-test
  # strategy: {}                没有该字段
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: rc-test
    spec:
      containers:
      - image: nginx
        name: nginx
        resources: {}
status: {}
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

# 3创建 ReplicaSet(RS)

kubectl create deployment rs-test --image nginx --dry-run=client -o yaml > rs-test.yaml

vim rs-test.yaml
1
2
3

修改两个不同点:

  • 修改资源名称kind
  • 删除字段spec.strategy
apiVersion: apps/v1
kind: ReplicaSet                # 资源名称
metadata:
  creationTimestamp: null
  labels:
    app: rs-test
  name: rs-test
spec:
  replicas: 1
  selector:
    matchLabels:
      app: rs-test
  # strategy: {}                # 没有该字段
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: rs-test
    spec:
      containers:
      - image: nginx
        name: nginx
        resources: {}
status: {}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
编辑 (opens new window)
水平自动扩缩(HPA)
持久卷(PV)

← 水平自动扩缩(HPA) 持久卷(PV)→

最近更新
01
API测试笔记
04-30
02
msfvenom
03-29
03
Metasploit
03-29
更多文章>
Theme by Vdoing | Copyright © 2023-2024 Carsaid | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式