自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(42)
  • 收藏
  • 关注

原创 Ansible playbook之循环

5s执行一次cat /etc/ansible/hosts,将结果register给host然后判断host.stdout.startswith的内容是否Master字符串开头,如果条件成立,此task运行完成,如果条件不成立5s后再重试,5次后还不成立,此task运行失败。散列loops相比标准的loops就是变量支持更丰富的数据结构,比如标准loops的最外层数据必须是Python的list数据类型,而散列loops直接支持YAML格式的数据变量。

2024-04-30 10:09:48 275

原创 Ansible playbook之变量引用

nginx]---tasks:发现变量调用成功,我们修改下/etc/ansible/hosts文件[nginx]key=nginx├── hosts├── roleskey: nginx[nginx]a port.a port.

2024-04-28 15:36:54 295

原创 nginx&tomcat笔记

nginx是一个轻量级高性能的http和反向代理web服务器,优点:占用内存少,并发能力强实验主机:192.168.200.141 192.168.200.142。

2024-04-22 10:35:33 390

原创 Ansible组件说明

docker]docker第1,2行定义了主机为:11.0.1.18/19,使用Inventory的内置变量ansible_ssh_pass定义ssh登录密码第3行定义主机组,名为docker第4行定义了docker组下的3台主机,从11.0.1.12到11.0.1.14第5行和第6行针对docker组使用了Inventory的内置变量ansible_ssh_pass定义ssh登录密码第7行和第8行定义了一个组叫ansible,这个组包含docker组。

2024-04-19 15:56:25 1089

原创 Ansible初识以及安装

如果核心模块不足以完成某种功能,可以添加自定义模块。

2024-04-19 08:51:17 1425

原创 Centos7.9环境下使用clonezilla备份恢复os

需求:之前的系统未做raid就做了系统,现在需要备份后重新恢复系统。工具:clonezilla。

2024-04-18 13:50:04 333

原创 OpenEuler定制镜像制作

vim /ISO/EFI/BOOT/grub.cfg,增加inst.ks=hd:LABEL=openEuler-22.03-LTS-SP2-x86_64:/isolinux/ks.cfg inst.repo=hd:LABEL=openEuler-22.03-LTS-SP2-x86_64。hd:LABEL为介质标签,openEuler-22.03-LTS-SP2-x86_64。并在isolinux.cfg指定inst.repo地址。inst.stage2为安装介质位置。inst.ks为ks.

2024-04-18 10:14:51 969

原创 K8S面试题学习

Minikube 是一种可以在本地轻松运行一个单节点 Kubernetes 群集的工具;Kubectl 是一个命令行工具,可以使用该工具控制Kubernetes集群管理器,如检查群集资源,创建、删除和更新组件,查看应用程序;Kubelet 是一个代理服务,它在每个节点上运行,并使从服务器与主服务器通信;

2024-04-18 09:41:41 1054

原创 redis与etcd的对比

1.1 字符串(strings)1.2 字符串列表(lists)1.3 字符串集合(sets)1.4 有序字符串集合(sorted sets)1.5 哈希(hashes)2.redis的持久化:RDB(Redis Database)和AOF(Append Only File)RDB:在不同的时间点,将redis存储的数据生成快照,并且存储到磁盘等介质上。

2024-04-17 13:56:17 1139

原创 k8s之etcd

etcd 是云原生架构中重要的基础组件。etcd 是一个高度一致的分布式键值存储,它提供了一种可靠的方式来存储需要由分布式系统或机器集群访问的数据。它可以优雅地处理网络分区期间的 leader 选举,以应对机器的故障,即使是在 leader 节点发生故障时。

2024-04-17 13:54:02 1353 2

原创 K8S之Resource Quotas

当用户在命名空间下创建资源(如 Pod、Service 等)时,Kubernetes 的配额系统会跟踪集群的资源使用情况, 以确保使用的资源用量不超过 ResourceQuota 中定义的硬性资源限额。它可以限制命名空间中某种类型的对象的总数目上限,也可以限制命名空间中的Pod可以使用的计算资源的总上限。)的配额被启用, 则用户必须为这些资源设定请求值(request)和约束值(limit),否则配额系统将拒绝 Pod 的创建。配额机制仅统计所列举的作用域的交集中的资源用量。

2024-04-16 10:00:54 1207

原创 K8S资源管理之Resource QoS

在Kubernetes的QoS体系中,需要保证高可靠性的Pod可以申请可靠资源,而一些非高可靠性的Pod可以申请可靠性低或者不可靠的资源,在之前我们说到了容器的资源配置为分为Requests和Limits,其中Requests是Kubernetes调度时能为容器提供的安全、可保障的资源量(最低保障),而Limits是系统允许容器运行时可以使用的资源量的上限(最高上限)。Pod级别的资源配置是通过计算Pod内所有容器的资源配置的总和得出来。

2024-04-15 14:20:00 1016

原创 K8S资源管理之LimitRange

3.用户创建Pod时使用的资源可能会刚好比整个机器的上限稍小,而恰好剩余的资源大小又不足以分配其他的Pod,这样就显得有点浪费,集群管理员希望将每个Pod都设置为必须至少使用集群平均值(CPU和内存)的20%,这样集群就能够提供更好的资源一致性调度,从而减少资源浪费。而Pod的Max Limit/Requests Ratio(上面的3和2)限制了Pod中所有容器的Limits值总和与Requests值总和的比例上限。Container的Min(100m和3Mi)是Pod中所有容器的Requests值下限;

2024-04-12 16:46:12 1047

原创 K8S资源管理之计算资源管理

以CPU为例,下图显示了未设置Limits与设置了Requests和Limits的CPU使用率的区别尽管Requests和Limits只能被设置到容器上,但是设置了Pod级别的Requests和Limits能大大提高管理Pod的便利性和灵活性,因此在Kubernetes中提供了对Pod级别的Requests和Limits的配置。

2024-04-12 11:01:22 1211

原创 K8S之资源管理

比如不能出现内存超过2GB或者CPU占据两个核心的Pod。这样的话,Kubernetes会认为该Pod所需要的资源很少,可以调度到任何可用的Node,这样一来,当集群中的计算机资源不是很充足的时候,例如集群的Pod负载突然增大,就会使得某得节点的资源严重不足。2.允许集群的资源被超额分配,以提高集群的资源利用率,同时允许用户根据业务的优先级,为不同的Pod定义相应的保障等级(QoS),Qos就是Pod生存的优先级,当系统资源不足的时候,低等级的Pod会被优先干掉,以确保高等级的Pod稳定运行。

2024-04-10 16:11:26 553

原创 Centos7.9 rsyslog服务新增日志过滤器

我们有台服务器中/var/log/messages会毫秒级打印关于qemu-ga的日志,需要在rsyslog.conf里面将关于qemu-ga的日志重定向到/var/log/qemu-ga.log,并且不在/var/log/messages中打印。

2024-04-09 16:42:59 183

原创 K8S之Kubelet

在Kubernetes集群中,在每个Node(又称为Minion)上都会启动一个Kubelet服务进程。该进程用于处理Master下发到本节点的任务,管理Pod及Pod中的容器。每个Kubelet进程都会在API Server上注册节点自身的信息,定期向Master汇报节点资源的使用情况,并通过cAdvisor监控容器和节点资源。

2024-04-09 15:50:14 752

原创 K8S之Scheduler

Kubernetes Scheduler的作用是将待调度的Pod(API新创建的Pod、Controller Manager为补足副本而创建的Pod等)按照特定的调度算法和调度策略绑定(Binding)到集群中某个适合的Node上,并将绑定信息写入到etcd中。Kubernetes Scheduler在整个系统中承担了“承上启下”的重要功能,“乘上”指的是它负责接受Controller Manager创建新的Pod,为其安排一个落脚的“家”:目标Node;

2024-04-09 13:32:53 496

原创 K8S之Controller

同时,在 Namespace Controller 删除该Namespace 中的所有资源对象后,Namespace Controller会对该Namespace执行finalize操作,删除Namespace的spec.finalizers域中的信息。如果Namespace Controller观察到Namespace设置了删除期限,同时Namespace的spe c.finalizers域值是空的,那么Namespace Controller将通过API Server删除该Namespace资源。

2024-04-08 08:53:20 1048

原创 K8S之API Server

从整体上来看的话,Kubernetes API Server的核心功能就是提供Kubernetes各类资源对象(pod, RC,Deployment等)的增删改查以及watch等HTTP REST接口,成为集群内各个功能模块之间数据交互和通信的中心枢纽,是整个系统的数据总线和数据中心。除此之外,它还是集群管理的API入口,是资源配额控制的入口,提供了完备的集群安全机制。kubernetes API Server通过一个名为kube-apiserver的进程提供服务,该进程运行在master节点上。

2024-04-03 10:11:24 532

原创 K8S之Ingress

和一个具体。

2024-04-02 08:48:02 919

原创 K8S之Service

Selector对后端Endpoint列表进行了一次抽象,如果后端的Endpoint是由Pod副本集提供的,则Service还可以抽象定义任意其他服务,将一个Kubernetes集群外部的已知服务定义为Kubernetes内的一个Service,供集群内的其他应用访问,常见的应用场景包括:1.普通的Service通过Label已部署的一个集群外服务,例如数据库服务、缓存服务等;2.其他 ubernetes集群的某个服务;3.迁移过程中对某个服务进行Kubernetes内的服务名访问机制的验证。

2024-03-29 09:02:30 546

原创 K8S之Pod升级和回滚

初始创建deployment的时候, 系统创建了一个ReplicaSet:nginx-deployment-f7599d4c,并按照用户的需求创建了2个副本,更新deployment的时候,系统创建新的ReplicaSet:nginx-deployment-95df64745,并将其副本数量扩充到1,旧的ReplicaSet副本缩减到1,在将新的扩充到2,旧的缩减到0。我们可以看到nginx的镜像已经升级为1.9.1了。

2024-03-27 16:20:39 297 1

原创 cka cks考试

刚考的,有兴趣可以下载看看。

2023-11-13 08:38:01 100 2

原创 centos7 在现有系统上系统盘做软raid1

centos7

2023-11-03 13:44:25 197

原创 K8S之Pod管理

IgnoredDuringExecution:如果一个Pod所在的节点在Pod运行期间标签发生了变更,不再符合该Pod的节点亲和性需求,则系统将忽略Node上Label的变化,该Pod能继续在该节点运行。总结:pod的亲和性是根据pod标签来的,在topologyKey区域内,匹配到的pod就安置到同一节点,互斥匹配到就安置到其他的节点,如果没有匹配到的pod即处于pending。NoExecute:node添加这个effect类型污点,新的不能容忍的pod,不能调度过来,老的pod也会被驱逐。

2023-10-16 13:53:47 106 1

原创 K8s之Service、Endpoints、Pod三者关系

对应实验环境我们可以看到Endpoints其实就是后端pod的IP地址,因为本机实验环境只有一个node节点,故pod的reolicas=1,只有1个Endpoints,实际上在生产环境中,EndPoints应该是一组 提供同类型服务的Pod 的端点合,在图中的Endpoints就是:10.1.20.100,10.1.20.101,20.1.20.102。上篇文章我们了解到Service是一个规则的集合,今天我们来看看这Service、Endpoints、Pod三者的关系。自动关联体系内的pod服务。

2023-10-12 10:16:26 251 1

原创 k8s之网络模型、插件

(桥接),(主机)以及(容器)Bridge:虚拟网桥设备为容器建立网络连接,为容器分配IP地址,连接docker0虚拟网桥Host:设定容器直接共享节点主机的网络名称空间,直接使用宿主机的IP和端口Container:设定多个容器共享同一个网络名称空间,和一个指定容器共享IP和端口1.1 容器网络Closed container:封闭式容器,只有1个lo,none模式Bridged container:桥接式容器,分配IP与宿主机上docker0同网段,Bridge模式。

2023-10-12 09:54:43 97 1

原创 centos7.9升级3.10内核至5.4

查看启动内核:cat /etc/grub2.cfg | grep menuentry|awk -F "\'" '$1=="menuentry " {print i++ " : " $2}'查看yum仓库中的内核包:yum list --showduplicate kernel*显示为3.10,查看关于内核的包:rpm -qa |grep kernel。安装内核:yum install -y kernel-lt-5.4.257。设置启动内核:grub2-set-default 0。

2023-10-07 09:24:39 496 1

原创 k8s之环境部署

参考文章。

2023-09-28 09:43:25 303

原创 docker之dockerfile实战

我们在这里是以centos7为例子。

2023-09-27 14:15:28 118

原创 docker之dockerfile

1.基础镜像信息2.维护者信息3.镜像操作指令4.容器启动时执行命令。

2023-09-26 15:48:21 45

原创 docker之端口映射

用--name $container_name选项来对容器命名。

2023-09-26 14:04:44 828

原创 docker之数据管理

在生产环境中使用docker,往往需要对数据进行持久化操作,或者需要再多个容器之间进行数据共享,这就涉及到了容器中管理数据的两种方式:数据卷(Data Volumes)和数据卷容器(Data Volumes Containers)

2023-09-26 11:13:04 46

原创 docker之仓库管理

地址:https://hub.docker.com 是官方提供的最大的公共镜像仓库因为本地环境无法打开该网址,后续会补充进来,我们主要看看本地私有仓库。

2023-09-25 14:25:51 126 1

原创 docker之容器管理

docker容器管理

2023-09-22 16:52:45 117 1

原创 docker之管理镜像命令

docker镜像管理

2023-09-22 11:45:38 106 1

原创 docker之初识

如果容器删除了,最上层的读写层也就删除了,改动也就丢失了,无论多少个容器共用一个镜像,无论他们怎么修改文件都不会修改到镜像里面的源文件,这种方式提高了磁盘利用率,如果想持久化修改镜像文件,得需要用docker commit命令来将容器保存一个新镜像。Docker是CS架构,Docker客户端与Docker守护进程通过REST API进行对话,运行和分发Docker容器的工作。容器:启动速度快(秒级),磁盘占用率低(MB级),属于进程级别,只打包代码和依赖,共享主机内核。4.Docker:容器。

2023-09-22 10:16:29 73 1

原创 Linux下CPU使用率过高的排查方法

wa(iowait):表示 CPU 在等待 I/O 操作完成所花费的时间,通常该指标越低越好,否则表示 I/O 存在瓶颈,可以用 iostat 等命令做进一步分析。id(idle):表示 CPU 处于空闲态的时间占比,此时,CPU 会执行一个特定的虚拟进程,名为 System Idle Process。st(steal):表示 CPU 被其他虚拟机占用的时间,仅出现在多虚拟机场景。sy(sys):表示 CPU 在内核态运行的时间百分比(不包括中断),通常内核态 CPU 越低越好,否则表示系统存在某些瓶颈。

2023-09-22 08:59:39 1171 1

原创 ssh到远程主机后执行命令脚本

这是因为我们把赋值语句放在了输入重定向里面(<<eof..eof),这种情况下,脚本中的赋值语句将在本地的shell执行,而不是在远程机器B上执行,ssh远程过去后再直接返回A机器上执行的。需求:ssh到远程主机后执行命令,命令里面包含变量以及变量的赋值。可以看到echo $(ls) 返回是空。注意对比LSRESULT运行结果。解决方法:在变量声明加入\转义。

2023-09-21 11:07:04 674

Centos7.9环境下使用clonezilla备份恢复os

Centos7.9环境下使用clonezilla备份恢复os

2024-04-18

centos7 在系统盘做软raid1

centos7 在系统盘做软raid1

2023-11-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除