当前位置: 首页 > backend >正文

CKA考试知识点分享(3)---sidecar

CKA 版本:1.32
第三套题是涉及sidecar相关。
注意:本文不是题目,只是为了学习相关知识点做的实验。仅供参考

实验目的

创建一个pod,实现对应的sidecar,验证数据和进程空间相通。

1 环境准备

准备一个nginx 的deployment 。

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx
spec:selector:matchLabels:run: nginxtemplate:metadata:labels:run: nginxspec:containers:- name: nginximage: docker.m.daocloud.io/library/nginx:stable-alpineports:- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:name: nginxlabels:run: nginx
spec:ports:- port: 80selector:run: nginx

检查是否正常运行
在这里插入图片描述

2 创建Sidecar

修改nginx的deployment,创建对应的Sidecar ,我们使用busybox 作为边车容器
再通过挂载存储的方式,共享到两个容器,实现数据互通。存储卷使用空卷。

apiVersion: apps/v1
kind: Deployment
metadata:name: nginx
spec:selector:matchLabels:run: nginxtemplate:metadata:labels:run: nginxspec:containers:- name: nginximage: docker.m.daocloud.io/library/nginx:stable-alpineports:- containerPort: 80volumeMounts: #实现挂载主容器- name: datamountPath: /var/log/nginx- name: nginx-sidecarimage: registry.cn-beijing.aliyuncs.com/kubesphereio/busybox:1.31.1command: ['sh', '-c', 'tail -F /var/log/nginx/access.log']volumeMounts: #实现挂载边车容器- name: datamountPath: /var/log/nginxvolumes: #存储卷- name: dataemptyDir: {}

检查边车容器是否正常运行
在这里插入图片描述
在这里插入图片描述

3 验证Sidecar

3.1 验证数据相通

通过svc 来访问nginx 生成一条access.log日志。
在这里插入图片描述

查看边车容器的日志,可以确定nginx日志已经被边车容器读取成功。
在这里插入图片描述
进入边车容器,查看数据。
kubectl exec -it nginx-5dbfcff576-5swmz -c nginx-sidecar bash
在这里插入图片描述

3.2 验证进程命名空间相通

有一种情况,是想要通过边车容器,查看nginx的进程情况,可以采用工程进程命名空间的方式实现。
修改deployment :

 shareProcessNamespace: true

在这里插入图片描述
进入边车容器查看,可以看到nginx的启动程序
kubectl exec -it nginx-84bf744969-p6wfj -c nginx-sidecar sh

在这里插入图片描述
可以对nginx进程发送进程信号,让nginx worker进行重启。
在这里插入图片描述

参考链接:

https://kubernetes.io/zh-cn/docs/concepts/workloads/pods/sidecar-containers/

http://www.xdnf.cn/news/12948.html

相关文章:

  • DAY 45 Tensorboard使用介绍
  • 主体与代理的义项选择用意: 融智学视域下的三元操作机制
  • Python数据分析7
  • VMware导入vmdk文件
  • Beckhoff(倍福) -- MES(ITAC) TCP 通讯
  • DQN强化学习怎么来使用
  • 后Optane时代的NVM技术演进与挑战
  • 算法题(165):汉诺塔问题
  • GitFlow 工作模式(详解)
  • 智能分布式爬虫的数据处理流水线优化:基于深度强化学习的数据质量控制
  • Java中单向队列的多种实现类详解
  • 智警杯备赛--excel模块
  • CSS高级技巧及新增属性
  • LLMs 系列科普文(12)
  • 2025-06-02-IP 地址规划及案例分析
  • SDC命令详解:使用set_max_area命令进行约束
  • DiMTAIC 2024 数字医学技术及应用创新大赛-甲状腺B超静态及动态影像算法赛-参赛项目
  • 一文掌握 Tombola 抽象基类的自动化子类测试策略
  • LMDeploy 课程
  • ubuntu下编译osg3.6.5源码
  • CSP信奥赛C++常用系统函数汇总
  • 异或和之差-字典树
  • 二分查找 -P1102 A-B 数对
  • 风力发电机领域的声纹监测产品
  • 循环神经网络(RNN):从理论到翻译
  • 【Elasticsearch】映射:详解 _source store 字段
  • 基于机器学习的智能故障预测系统:构建与优化
  • 基于算法竞赛的c++编程(22)二进制,十进制,16进制
  • 面向对象之 继承中的成员访问特点
  • split方法