k8s学习笔记——基础知识2

1、dockerfile常用命令

纯干货!Dockerfile常用指令清单_Linux驯兽师的博客-优快云博客_dockerfile常用指令

2、rsync使用

增量备份:rsync -rzatu --ignore-existing 源目录 目标目录

批量删除:mkdir empty  & rsync --delete-before -d  ./empty/  目标目录

3、dockerfile部署sshd

dockerfile-新增用户并赋予sudo权限以及指定密码_fzzjoy的博客-优快云博客_dockerfile创建用户

Linux创建新用户并设置SSH证书登录_ghosind的博客-优快云博客_linux ssh证书登录

4、docker下拉故障 mtu 900

 如果不更改docker的镜像仓库地址,使用docker pull命令下拉是在docker官网提取镜像,会遇到不能使用的现象,会报错408或400之类侧错误。查了网上相关解决方案让把物理网卡mtu值调整到900(sudo ifconfig eth0 mtu 900),就可以正常使用了。但是随之又来了一个问题,自己搭建的harbor仓库不能使用了,因为harbor仓库需要mtu 1500。后来找到一个比较好的方案就是将镜像仓库源地址改为国内地址,在/etc/docker/daemon.json文件中添加镜像地址如下(没有该文件可以自行创建)

{
  "exec-opts":["native.cgroupdriver=systemd"],
  "registry-mirrors":["https://core.harbor.shell.com:32042"],
  "registry-mirrors":["https://registry.docker-cn.com"], //添加内容
  "registry-mirrors":["https://docker.mirrors.ustc.edu.cn"], //添加内容
  "registry-mirrors":["https://hub-mirror.c.163.com"], //添加内容
  "insecure-registries":["10.12.70.130:32042"]
}

就是注释部分,我这里添加了多个,其实也可以只添加一个。然后执行

sudo systemctl daemon-reload

sudo systemctl restart docker

sudo systemctl status docker //查看状态

这样物理网卡设置成mtu 1500,就都能使用了。

5.磁盘空间占满

Docker - 清理Docker占用的磁盘空间_docker system df_MinggeQingchun的博客-优快云博客

6.安装ceph-dashboard

https://www.cnblogs.com/wangguishe/p/15429116.html

安装ceph dashboard_ceph安装dashboard_CooperXJ的博客-优快云博客

7. RECENT_CRASH: 1 daemons have recently crashed

Ceph集群显示XXX daemons have recently crashed警告_QTM_Gitee的博客-优快云博客

8、harbor证书过期,更新证书

harbor不停机更换自定义证书_harbor 更换证书_云原生IT民工的博客-优快云博客

9、 helm升级harbor不丢失数据

升级用helm安装的Harbor版本_harbor helm 升级_Chai Yingchao的博客-优快云博客

10、docker不通容器间通信

Docker容器跨主机通信之:直接路由方式_docker跨主机通信_迷失蒲公英的博客-优快云博客

11、宿主机和docker容器间通信

【Docker】三、docker网络通信机制_docker容器和宿主机通信_北城小林的博客-优快云博客

windows为虚拟机里的docker容器添加路由 - 爱码网

13、k8s证书过期

kubeadm kubernetes集群证书过期的处理方法_kubeadm证书过期_洒满阳光的午后的博客-优快云博客

14、ceph osd down处理

 Ceph入门到精通-ceph故障处理 - osd down处理_ceph 停止osd_瓦哥架构实战的博客-优快云博客

Ceph OSD为DOWN时修复_ceph osd down-优快云博客

15、安装elk

Docker快速搭建部署ELK实战详解_docker elk-优快云博客

16、互斥性调度

k8s教程(pod篇)-亲和性与互斥性调度_k8s podantiaffinity-优快云博客

在Kubernetes中,可以通过使用亲和性(Affinity)和污点(Taints)来控制Pod的调度,以确保Pod不会被部署到同一个节点上。

亲和性可以分为节点亲和性(Node Affinity)和节点反亲和性(Node Anti-Affinity)。节点反亲和性可以用来确保具有相同标签的Pod不会被部署在同一个节点上。

以下是一个使用节点反亲和性的YAML配置示例,以确保同一类Pod不会被部署到同一个节点上:

yaml
复制
apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  affinity:
    podAntiAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
      - labelSelector:
          matchExpressions:
          - key: app
            operator: In
            values:
            - my-app
        topologyKey: "kubernetes.io/hostname"
  containers:
  - name: my-container
    image: my-image


在这个示例中,podAntiAffinity定义了节点反亲和性规则。requiredDuringSchedulingIgnoredDuringExecution表示这是一个硬策略,必须满足。labelSelector用于选择具有特定标签的Pod,这里选择的是标签为app=my-app的Pod。topologyKey指定了拓扑键,这里使用的是kubernetes.io/hostname,表示Pod将被部署到具有不同主机名的节点上。

这样配置后,Kubernetes调度器将确保同一类Pod(即具有相同app=my-app标签的Pod)不会被部署到同一个节点上。

请注意,这只是一个示例配置,实际配置可能因您的需求而有所不同。您可以根据自己的需求进行调整和扩展。

17、查看证书过期时间

kubectl get secret your_secret_name -n your_namespace -o jsonpath= "{.data.ca\.crt}" | base64 --decode | openssl x509 -text -noout

18、锁定安装版本

sudo apt-mark hold kubelet kubeadm kubectl

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值