-
kubernetes(1.23)证书过期如何续期
1.实验目的 通过kubeadm安装的kubernetes集群各个组件所使用证书的期限为1年,本实验练习的是到期之后如何续期。 2.实验环境 kubernetes环境及版本整个实验两台机器vms28.rhce.cc作为master,vms29.rhce.cc是worker。kubernetes的版本是1.23.1。 root@vms28:~# kubectl get nodes NAME STATUS ROLES AGE VERSION vms28.rhce.cc Ready control-p…
-
修改k8s pod网段
实验环境 [root@vms71 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION vms71.rhce.cc Ready control-plane,master 4d12h v1.23.2 vms72.rhce.cc Ready <none> 4d12h v1.23.2 [root@vms71 ~]# 实验目的 在初始化集群时,指定pod网段为10.244.0.0/16。 [root@vms71 ~]# kubectl get…
-
通过hostAliases为pod添加/etc/hosts条目
在创建pod时,如果DNS配置不合理想在pod里的/etc/hosts添加相关条目进行解析,可以使用hostAliases来实现。 hostAliases在.spec下定义,和containers字段对齐。 在/etc/hosts里每行的条目的格式是: IP地址1 主机名1 主机名2 当访问主机1或者主机2时,系统会自动的解析到 IP地址1 这样。 在hostAliases里定义的格式是 – ip: "ip地址1" hostnames: – "主机名1" …
-
用vim替换文件中含有指定关键字的那些行中的字符
现在有一个文件aa.txt,内容如下: [root@server2 ~]# cat aa.txt aaaaaaaaaaa 11 bbbbbbbbbbbb bb 11 c 11 cc [root@server2 ~]# 现在想把结尾是11的那些行最后的换行符替换成 空格. 使用vim编辑打开aa.txt之后,在末行模式输入%g/11$/s/\n/ /g这里%表示全文。这段 g/11$/g表示开始匹配指定的行,哪些行呢?由g后面的//里指定。这里写的是11$,表示以11结尾的那些行。这段s/\n/ …
-
使用etcdkeeper可视化管理etcd
1.练习环境 [root@vms71 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION vms71.rhce.cc Ready control-plane,master 3d6h v1.23.2 vms72.rhce.cc Ready <none> 3d6h v1.23.2 [root@vms71 ~]# 本练习在vms71上操作。 2.下载并解压etcdkeeper 到如下链接下载最新版本的etcdkeeperhttps://g…
-
备份kubernetes 备份etcd数据
备份kubernetes 备份etcd数据
-
RHCE8学习指南 第一章-安装RHEL8.4
我们要练习RHEL8的话,在虚拟机里安装RHEL8系统即可。根据自己的习惯选择虚拟机的类型可以选择vmware workstation也可以使用VirtualBox,我这里选择的vmware workstation。我们这里安装的系统是RHEL8.4的,所需要的镜像均可在www.rhce.cc/img里找到。 因为涉及到网络配置,点击vmware workstation左上角的编辑,点击虚拟网络编辑器。 点击VMnet8,我这里的子网设置的是192.168.26.0。所以后续配置网络信息时,给虚…
-
kubernetes里命名空间删不掉的问题
如果某个命名空间(此例里是ingress-nginx)迟迟删除不掉,状态一直是Terminating,然后在此命名空间里重新创建资源时报如下错误: Error from server (Forbidden): error when creating "nginx-controller.yaml": roles.rbac.authorization.k8s.io "ingress-nginx-admission" is forbidden: unable t…
-
动态卷供应
1.storageClass的工作流程 定义storageClass时必须要包含一个分配器(provisioner),不同的分配器指定了动态创建pv时使用什么后端存储。先看下面的3个例子第一个例子,分配器使用aws的ebs作为pv的后端存储 apiVersion: storage.k8s.io/v1 kind: StorageClass metadata: name: slow provisioner: kubernetes.io/aws-ebs parameters: type: io1 io…
-
搭建单节点etcd的备份与恢复
1.创建密钥 步骤1:下载安装cfssl工具下载地址:https://pkg.cfssl.org/R1.2/cfssl_linux-amd64https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64 下载到/usr/local/bin/里,然后分别命名为cfssl 、cfssl-certinfo 、cfssljson。[root@vms21 ca]# …
-
containerd客户端工具nerdctl的使用
kubernetes发布v1.20时宣布将弃用docker,并且在2021年下半年发布的v1.23版本中,彻底移除dockershim 代码,意味着那时kubernetes支持的容器运行时不再包括docker,那么我们使用containerd作为runtime。
docker命令大家非常熟悉且好用,但containerd的客户端工具ctr及crictl却是极其难用,给大家带来了诸多不变。本文主要讲containerd 全新的一个客户端工具nerdctl的使用。
-
安装kubernetes v1.21.0
1.1 实验拓扑图及环境 完成本章及后续的实验我们需要三台机器,1台master,2台worker,拓扑图及配置如图1-1所示。 图1-1 实验拓扑图 机器的配置如表格1-1所示。 表格1-1 练习环境主机名的设置 主机名 IP地址 内存需求 操作系统版本 角色 vms10.rhce.cc 192.168.26.10 4G centos7.4 master vms11.rhce.cc 192.168.26.11 4G centos7.4 worker1 vms12.rhce.cc 192.168…
-
容器系列-3安装kubernetes集群,使用containerd作为runtime
本节练习安装kubernetes集群,runtime使用containerd而非是docker。 本实验共用到两台机器,拓扑图如下: 系统设置 在所有的机器上关闭swap,关闭selinux,同步/etc/hosts,配置好yum,设置好firewalld,把firewalld的默认zone设置为trusted即可。 [root@vms2X ~]# swapoff -a [root@vms2X ~]# sed -i ‘/swap/s/^/#/’ /etc/fstab [root@vms2X ~…
-
容器系列-2使用containerd管理容器
上篇讲了高级别runtime包括docker、containerd、podman等,本节演示containerd的使用。 安装及配置containerd 步骤1:安装containerd [root@vms103 ~]# yum install containerd.io cri-tools -y …大量输出… 作为依赖被安装: … selinux-policy.noarch 0:3.13.1-268.el7_9.2 selinux-policy-targeted.noarch …
-
容器系列-1使用runc管理容器
所谓的runtime说白了就是能管理容器的东西就叫做runtime。docker是runtime,runc是runtime,podman是runtime,lxc也是runtime