- 博客(96)
- 收藏
- 关注
原创 【云原生】Kubernetes部署Jenkins静动Slave
Kubernetes是一个开源的系统,用于自动化部署、扩展、以及容器化应用程序的管理。Kubernetes集群向Jenkins添加了一个新的自动化层。Kubernetes确保资源得到有效利用,并且您的服务器底层基础设施不会过载。Kubernetes编排容器部署的能力确保Jenkins始终具有适量的可用资源。Kubernetes集群上托管Jenkins有利于基于Kubernetes的把部署和基于容器的动态可扩展Jenkins代理。
2024-10-19 16:01:59 990
原创 【云原生】Helm资源清单管理工具
在一个企业中,可能存在多个不同的应用业务,每个业务可能包含多个yaml资源清单,甚至几十个yaml资源清单,那么对于“运维”和“研发”人员来讲,这么多资源清单,通过人力去区分辨别,即便有名称空间namespace和不同的“路径目录”来进行区分,也是非常吃力的;所以,我们就需要借助k8s。
2024-10-13 12:40:01 978
原创 【云原生监控】Prometheus之Alertmanager报警
Prometheus通过 规则文件对比抓取到的数据,来判断是否触发告警,我们通过配置告警的工具Alertmanager进行告警通知。规则文件,写的就是,当我们获取到PromeSQL的值到达一个设置的规则后,触发告警,也就是说,规则文件,是触发告警的关键,而Alertmanager是告警的手段、工具。
2024-09-17 20:05:40 1754 1
原创 【云原生监控】Prometheus动态发现
目前,我们每增加一个被监控的节点,就需要修改Prometheus的配置文件,然后重新加载Prometheus服务,这种方式比较繁琐,每次新增、 删除被监控节点都需要重新操作一遍,不适合生产环境的大规模监控架构;所以Prometheus就提供了这种问题的解决方案,方案有两种,基于文档的自动发现和基于网络的自动发现。
2024-09-17 20:03:13 855
原创 【云原生监控】Prometheus之PushGateway
PushGateway为Promethus整体监控方案的功能组件之一,并作为一个独立的工具存在。它主要用于Prometheus无法直接拿到监控指标的场景,如监控源位于防火墙之后,Prometheus无法穿透防火墙,目标服务器没有可抓取监控数据的端点等多种情况。在类似的场景中,可通过部署PushGateway的方式解决问题。当部署该组件后,监控源通过主动发送监控数据到PushGateway,再又Prometheus定时获取信息,实现资源的状态监控。
2024-09-16 12:43:04 1370
原创 【云原生监控】Prometheus监控系统
访问地址:http://192.168.93.103:3000。此时,就会看到,新配置的被监控项主体的指标列表。需重新设置密码即可登录。默认账户:admin。默认密码:admin。
2024-09-16 12:38:49 1496
原创 【云原生】RBAC授权详解
基于角色(Role)的访问控制(RBAC)是一种基于组织中用户的角色来调节控制对计算机或网络资源的访问的方法。RBAC签权机制使用API(Kubernetes API中的一组相关路径)组来驱动签权决定,允许你通过Kubernetes API动态配置策略。
2024-08-19 10:52:05 1189
原创 【云原生】UserAccount使用账户详解
Kubernetes用户账号可以直接在终端使用,用来读写有权限的资源或者非资源数据,而Service Account一般是用来绑定程序调用的。
2024-08-19 10:51:15 222
原创 【云原生】ServiceAccount程序用户详解
Kubernetes提供两种完全不同的方式来为客户端提供支持,这些客户端可能运行在你的集群中,也能与你的集群的控制平面有关,需要向API(提供Kubernetes API服务的控制平缅组件),服务器完成身份认证。服务账号(Service Account)为Pod中运行的进程提供身份标识,并映射到ServiceAccount对象。当你向API服务器执行身份认证时,你会讲自己标识为某个用户(User)。Kubernetes能够识别用户的概念,但是Kubernetes自身并不提供User API。
2024-08-19 10:49:27 1058
原创 【云原生】Ingress控制器超级详解
对其流量作负载均衡、SSL/TLS,以及基于名称的虚拟托管等能力。Ingress控制器负载完成Ingress的工作,具体实现上通常会使用某个负载均衡器,不过也可以配置边缘路由器或其他前端来帮助处理流量。Ingress提供从集群外部到集群内部服务的HTTP和HTTPS路由。流量路由,由Ingress资源所定义的规则来控制。Ingress不会随意公开端口或协议。将HTTP和HTTPS以外的服务开放到Ingress时,通常使用。图.基于域名实现虚拟托管的Ingress。Ingress控制器。
2024-08-16 12:29:37 1235
原创 【云原生】Service服务暴露详细
Kubernetes中Service是将运行在一个或一组Pod上的网络用用程序公开为网络服务的方法。Kubernetes中Service的一个关键目标是让你无需修改现有应用以使用某种不熟悉的服务发现机制。你可以在Pod集合中运行代码,无论该代码是为云原生环境设计的,还是被容器化的老应用。你可以使用Service让一个组Pod可以在网络上被访问,这样客户端就能与之交互。如果你使用Deployment来运行你的应用,Deployment可以动态地创建和销毁Pod。
2024-08-07 12:04:29 1160
原创 【云原生】Secret敏感信息存储
Secret是一种包含少量敏感信息例如密码、令牌或密钥的对象。这样的信息可能会被放在Pod规约种或者镜像中。使用Secret意味着你不需要再应用程序代码中包含机制数据。由于创建Secret可以独立于使用它们的Pod,因此在创建、查看和编辑Pod的工作流程中暴露Secret(及其数据)的风险较小。Kubernetes和在集群中运行的应用程序也可以对Secret采取额外的预防措施,例如避免讲敏感数据写入非易失性存储。Secret类似于ConfigMap但专门用来保存机密数据。
2024-08-06 14:42:42 1122
原创 【云原生】ConfigMap存储
ConfigMap是一种API对象,用来将非机密性的数据保存到键值对中。使用时,Pod可以将其用作环境变量、命令行参数或存储卷中的配置文件。ConfigMap将你的环境配置信息和容器镜像解耦,便于应用配置的修改。注意:ConfigMap并不提供保密或加密功能。如果你想存储的数据是机密性的,请使用Secret,或者使用其他第三方工具来保存你的数据的私密性,而不是用ConfigMap。
2024-08-06 14:41:42 942
原创 【云原生】CronJob周期性任务详解
CronJob用于执行排期操作,例如备份、生成报告等。一个CronJob对象就像Linux系统上的crontab(cron table)文件中一行。它用Cron格式进行编写,并周期性地给定的调度事件执行Job。CronJob有所限制,也比较特殊。例如在某些情况下,单个CronJob可以创建多个并发任务。当控制平面为CronJob创建新的Job和(间接)Pod时,CronJob的是命名这些Pod的部分基础。CronJob的名称必须是一个合法的DNS子域值,但这会对Pod的主机名产生意外的结果。
2024-08-05 13:11:53 686
原创 【云原生】Job一次性任务详解
Job会创建一个或者多个Pod,并将继续重试Pod的执行,直到指定数量的Pod成功终止。随着Pod成功借宿,Job跟踪记录成功完成的Pod个数。当数量达到指定的成功个数阈值时,任务(即Job)结束。删除Job的操作会清除所有创建的全部Pod。挂起Job的操作会删除Job的所有活跃的Pod,直到Job被再次恢复执行。一种简单的使用场景下,你会创建一个Job对象以便以以一种可靠的方式运行某Pod直到完成。当第一个Pod失败或者被删除(比如因为节点硬件失效或者重启)时,Job对象对启动一个新的Pod。
2024-08-05 13:10:43 546
原创 【云原生】StatefulSet控制器详解
RC、Deployment、DaemonSet都是面向无状态的服务,它们所管理的Pod的IP、名字、启停顺序等都是随机的,而StatefulSet是什么?顾名思义,有状态的集合,管理所有有状态服务,比如MySQL、MongoDB集群等。StatefulSet本质上是Deployment的一种变体,在v1.9版本中已成为GA版本,它为了解有状态服务的问题,它所管理的Pod拥有固定的Pod名称,启停顺序,在StatefulSet中,Pod名称为网络标识(hostname),还必须要用到共享存储。
2024-08-03 12:45:47 1287 1
原创 【云原生】Ubuntu系统部署Kubernetes-Docker集群
(三台主机都要执行)(三台主机都要执行)(三台主机都要执行)三台主机都要执行三台主机都要执行mastermastermastermastermasterNodemastermaster。
2024-07-29 10:19:42 653
原创 【云原生】Deployment控制器详细
Deployment同样也是Kubernetes系统的一个核心概念,主要职责和RC、RS一样都是保证Pod的数量和健康,通过定义一个Deployment控制器会创建一个新的ReplicaSet控制器,通过ReplicaSet创建Pod,删除Deployment控制器,也会删除Deployment控制器下对应的ReplicaSet控制器和Pod资源。二则大部分功能都是完全一致的,我们可以看成是一个升级版的RC、RS控制器。
2024-07-29 10:18:01 509
原创 【云原生】ReplicaSet控制器详解
ReplicaRet简称RS的目的是维护一组在任何时候都处于运行状态的Pod副本的稳定集合。因此,它通常用来保证给定数量的、完全相同的Pod的可用性。
2024-07-25 17:43:31 1540
原创 【云原生】ReplicationController控制器详解
ReplicationController确保在任何时候都有特定数量的Pod副本处于运行状态。换句话说,ReplicationController确保一个Pod或一组同类的Pod总是可用的。
2024-07-24 14:30:51 1169
原创 【云原生】NameSpace名称空间详解
默认情况下,Kubernetes集群会在配置集群时实例化一个default名称空间,用以存放集群所有使用的默认Pod、Service和Deployment集合(默认代表创建的资源没有指定名称空间,那么就会在默认的名称空间下创建也就是default名称空间)假设你有一个新的集群,你可以通过执行以下操作看到所有名称空间。
2024-07-23 16:12:49 718
原创 【云原生】Kubernetes之Pod的使用和Pod模板定义详解
Pod的共享上下文包括一组Linux名称空间、控制组(cgroup)和可能一些其他的隔离方面,即用来隔离容器的技术。在Pod的上下文中,每个独立的应用可能会进一步实施隔离。工作负载资源的控制器通常使用Pod模板来代替你创建Pod并管理它们。Pod模板是包含在工作负载对象中的规范,用来创建Pod。这类负载资源包括DeploymentJob和DaemonSet等。工作负载的控制器会使用负载对象中的来生成实际的Pod。是你用来运行应用时指定的负载资源的目标状态的一部分。
2024-07-22 17:59:05 1069 1
原创 【企业级监控】Zabbix监控网站关键词
当我们需要获取某台主机上的数据时,直接利用zabbix提供的模板可以很方便的获得需要的数据,但是有些特别的数据,利用这些现有模板或监控项是无法实现的,例如网站状态信息的监控、mysql数据库主从状态等信息。这时就需要自己定义键值和监控项,以满足企业对检测数据的需要。
2024-07-15 11:51:41 539
原创 【企业级监控】Zabbix监控MySQL主从复制
当我们需要获取某台主机上的数据时,直接利用zabbix提供的模板可以很方便的获得需要的数据,但是有些特别的数据,利用这些现有模板或监控项是无法实现的,例如网站状态信息的监控、mysql数据库主从状态等信息。这时就需要自己定义键值和监控项,以满足企业对检测数据的需要。# 默认352行,进行修改# 默认361行,取消注释进行修改# 备注UnsafeUserParameters=1:启用自定义Key功能UserParameter:指定脚本mysql.slave:为Key值名称。
2024-07-15 11:48:23 1168
原创 【企业级监控】Zabbix监控网站并发连接数
当我们需要获取某台主机上的数据时,直接利用zabbix提供的模板可以很方便的获得需要的数据,但是有些特别的数据,利用这些现有模板或监控项是无法实现的,例如网站状态信息的监控、mysql数据库主从状态等信息。这时就需要自己定义键值和监控项,以满足企业对检测数据的需要。Zabbix中内置了很多监控参数(Key),我们可以通过在客户端配置文件中定义Key,获取监控对象中的系统、CPU、网络、内存、文件系统等信息。Key(键)是zabbix标记item的键,是一种标识符。
2024-07-15 11:45:06 1097
原创 【企业级监控】Zabbix实现邮箱报警
监控运维工作中所占的比例为30%左右,监控做的好,会省很多事情,让工作能有序地进行。理想的监控应该是自动化得,只需要配置规则,即可完成所有得事情,比如主机的自动添加和注册、模板的自动添加、分组的自动添加、出现故障后能自动处理和自动发送警告信息等。Zabbix就是具有以上自动化功能的一款监控软件,那么它是如何实现监控自动化的功能呢?
2024-07-13 11:20:01 1143 1
原创 【企业级监控】Zabbix自动发现+自动注册+主被动详细
监控运维工作中所占的比例为30%左右,监控做的好,会省很多事情,让工作能有序地进行。理想的监控应该是自动化得,只需要配置规则,即可完成所有得事情,比如主机的自动添加和注册、模板的自动添加、分组的自动添加、出现故障后能自动处理和自动发送警告信息等。Zabbix就是具有以上自动化功能的一款监控软件,那么它是如何实现监控自动化的功能呢?Agent程序有两种工作模式:主动模式和被动模式我们知道获取数据的方式有两种,一种是get,一种是push;
2024-07-13 11:15:27 1542
原创 【企业级监控】源码部署Zabbix与监控主机
主机列表中Availability(可用性)列包括了每个接口的可用性指标,乳沟定义了主机的zabbix agent接口,可以通过ZBX选项了解主机的可用性。ZBX在没有配置错误的情况下,可能需要等待几分钟才能变为绿色(正确状态)依次点击“管理”–>“proxy”–>“创建agent代理”
2024-07-10 13:33:57 1098
原创 【企业级监控】Docker部署Zabbix与监控主机
zabbix-server:zabbix的server段,负责接收agent发送过来的监控数据,并且提供zabbix的所有核心功能。database:用于存储监控数据和配置信息的数据库,目前常用的有mysql和postgresql两种数据库。zabbix-web:zabbix的UI端口,提供操作控制台和监控展示等功能。zabbix-java-gateway:用于监控Java程序的JVM状态,zabbix本身无法直接从jvm获取监控指标,需要使用该网关来实现。
2024-07-10 13:17:05 1955 1
原创 【云原生】Kubernetes部署EFK日志分析系统
Elasticsearch、Fluentd和Kibana。(EFK)技术栈也是官方推荐的一种方案。
2024-07-08 13:31:31 1478 2
原创 【云原生】Kubernetes---Storageclass存储类动态生成存储(持久化)
每个StorageClass都包含字段provisioner,parameters和reclaimPolicy具体来说,StorageClass会定义以下两部分: PV的属性,比如存储的大小、类型等 创建这种PV需要使用到的存储插件,比如Ceph、NFS等有了这两部分信息,Kubernetes就能够根据用户提交的PVC,找到对应的StorageClass,然后Kubernetes就会调用StorageClass声明的存储插件,创建出需要的PV。
2024-07-05 11:28:39 927
原创 【云原生】Kubernetes之持久化
emptyDir是一个临时存储卷,与Pod的声明周期绑定在一起,如果Pod被删除了,这意味着数据也被随之删除。hostPath Volume是指Pod挂载宿主机上的目录或文件。hostPath Volume使得容器可以使用宿主机的文件系统进行存储,hostpath(宿主机路径):节点级别的存储卷,在Pod被删除,这个存储卷还是存在的,不会被删除,所以只要同一个Pod被调度到同一个节点上来,在Pod被删除重新被调度到这个节点之后,对应的数据依然存在的。
2024-07-05 11:27:22 1447
原创 【云原生】Kubernetes之更新证书详细版
Kubernetes集群的ca证书默认是10年,其他证书的有效期是1年,当证书过期以后集群无法正常执行命令,所以需要更新证书。证书更新分为自动更新和手动更新,当集群升级的时候,证书自动更新。这里我们主要说的是手动更新
2024-07-03 12:00:34 623
原创 【云原生】Kubernetes-kubeadm升级版本
Kubernetes-kubeadm升级版本。当我们要用到新版本的一些功能和特性的时候或者当前版本太旧无法满足需要的时候势必要对Kubernetes集群进行升级
2024-07-03 11:57:54 538
原创 【云原生】Kubernetes资源配额+HPA+节点选择器+亲和性+污点
当多个用户或团队共享具有固定节点数目的集群时,人们会担心有人使用超过其基于公平原则所分配到的资源量资源配额是帮助管理员解决这一问题的工具。资源配额,通过ResourceQuota对象来定义,对每个命名空间的资源消耗总量提供限制。它可以限制命名空间中某种类型的对象的总数目上限,也可以限制命名空间中的Pod可以使用的计算资源的总上限。对于cpu和memory资源:ResourceQuota强制该命名空间中的每个(新)Pod为该资源设置限制。
2024-07-01 11:17:43 1072 2
原创 【云原生】最新版Kubernetes集群基于Containerd部署
在部署网络插件的过程中,实测是可能会有两个镜像拉取不来下,所以手动拉取一下,不过要使用魔法,拉取不到了评论或私信(开源免费)没有网络插件的私信或评论(免费开源)所有节点都需要拉取以下两个镜像。master节点操作即可。
2024-06-29 13:00:23 1239
原创 【云原生】Kubernetes高级功能
Configmap是k8s中的资源对象,用于保存非机密性的配置的,数据可以用key/value键值对的形式保存,也可通过文件的形式保存。
2024-06-29 12:58:07 1217
原创 【云原生】使用Kubectl工具详细讲解+管理集群
kubectl是一个用于操作Kubernetes集群的命令行接口,利用kubectl的各种命令可以是实现各种功能,再使用Kubernetes过程中是非常常用的工具。在Kubernetes中,一般使用YAML格式的文件来创建符合预期期望的Pod状态,这样的YAML文件一般称之为资源清单。
2024-06-27 11:32:18 1083
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人