- 博客(106)
- 收藏
- 关注
原创 Prometheus之部署 Alertmanager 发送告警
Prometheus 对指标的收集、存储与告警能力分属于 Prometheus Server 和 AlertManager 两个独立的组件,前者仅负责定义告警规则生成告警通知, 具体的告警操作则由后者完成。Alertmanager 负责处理由 Prometheus Server 发来的告警通知,Alertmanager对告警通知进行分组、去重后,根据路由规则将其路由到不同的receiver,如Email、钉钉或企业微信等。
2025-03-31 17:19:07
783
原创 Prometheus PromQL
PromQL(Prometheus Query Language)是 Prometheus 内置的数据查询语言。支持用户进行实时的数据查询及聚合操作。
2025-03-24 22:34:25
929
原创 部署 Prometheus 服务发现
在Prometheus中,在服务发现(Service Discovery)方面,有多种方式和配置方法可以帮助你自动发现和监控你的服务。
2025-03-20 16:07:32
342
原创 Prometheus监控系统及Grafana图形化展示
Prometheus 是一个开源的服务监控系统和时序数据库,其提供了通用的数据模型和快捷数据采集、存储和查询接口。它的核心组件 Prometheus server 会定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉取数据,新拉取到的数据会持久化到存储设备当中。
2025-03-16 22:58:38
752
原创 kubernetes之Helm包管理器
每个成功的软件平台都有一个优秀的打包系统,比如Debian、Ubuntu 的 apt,RedHat、CentOS 的 yum。Helm 则是 Kubernetes上 的包管理器,方便我们更好的管理应用。Helm本质就是让K8s的应用管理(Deployment、Service等)可配置,可以通过类似于传递环境变量的方式能动态生成。通过动态生成K8s资源清单文件(deployment.yaml、service.yaml)。 然后调用 Kubectl 自动执行 K8s 资源部署。
2024-10-20 11:55:08
1010
原创 Rancher—多集群Kubernetes管理平台
Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。
2024-10-17 12:32:59
1493
原创 kubernetes之HPA Pod水平自动伸缩
HPA(Horizontal Pod Autoscaling)Pod 水平自动伸缩,Kubernetes 有一个 HPA 的资源,HPA 可以根据 CPU 利用率自动伸缩一个 Replication Controller、 Deployment 或者Replica Set 中的 Pod 数量。
2024-10-15 22:50:42
312
原创 kubernetes安全机制
Kubernetes 作为一个分布式集群的管理工具,保证集群的安全性是其一个重要的任务。API Server 是集群内部各个组件通信的中介, 也是外部控制的入口。所以 Kubernetes 的安全机制基本就是围绕保护 API Server 来设计的。
2024-10-14 23:35:10
713
原创 kubernetes对外服务之Ingress
service的作用体现在两个方面,对集群内部,它不断跟踪pod的变化,更新endpoint中对应pod的对象,提供了ip不断变化的pod的服务发现机制;对集群外部,他类似负载均衡器,可以在集群内外部对pod进行访问。
2024-10-07 18:26:17
750
原创 kubernetes配置资源管理
Secret 是用来保存密码、token、密钥等敏感数据的 k8s 资源,这类数据虽然也可以存放在 Pod 或者镜像中,但是放在 Secret 中是为了更方便的控制如何使用数据,并减少暴露的风险。ConfigMap与Secret类似,区别在于ConfigMap保存的是不需要加密配置的信息。ConfigMap 功能在 Kubernetes1.2 版本中引入,许多应用程序会从配置文件、命令行参数或环境变量中读取配置信息。
2024-09-28 17:43:07
893
原创 kubernetes—Pod控制器
Pod控制器,又称之为工作负载(workload),是用于实现管理pod的中间层,确保pod资源符合预期的状态,pod的资源出现故障时,会尝试进行重启,当根据重启策略无效,则会重新新建pod的资源。
2023-08-08 20:45:02
710
原创 kubernetes存储卷
容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。其次,在Pod中同时运行多个容器时,这些容器之间通常需要共享文件。Kubernetes 中的Volume抽象就很好的解决了这些问题。Pod中的容器通过Pause容器共享Volume。
2023-08-04 17:48:58
893
2
原创 kubernetes群集调度
Kubernetes 是通过 List-Watch 的机制进行每个组件的协作,保持数据同步的,每个组件之间的设计实现了解耦。用户是通过 kubectl 根据配置文件,向 APIServer 发送命令,在 Node 节点上面建立 Pod 和 Container。APIServer 经过 API 调用,权限控制,调用资源和存储资源的过程,实际上还没有真正开始部署应用。这里 需要 Controller Manager、Scheduler 和 kubelet 的协助才能完成整个部署过程。在 Kuberne
2023-07-31 00:05:48
992
原创 kubernetes—Pod容器的探针
探针是由 kubelet 对容器执行的定期诊断(pod中探针又分为三类): 存活探针(livenessProbe)探测容器是否运行正常。如果探测失败则kubelet杀掉容器(不是Pod),容器会根据重启策略决定是否重启 就绪探针(readinessProbe)探测Pod是否能够进入READY状态,并做好接收请求的准备。如果探测失败Pod则会进入NOTREADY状态(READY为0/1)并且从所关联的service资源的端点(endpoints)中踢出
2023-07-19 01:01:08
2262
原创 kubernetes—Pod容器资源限制
当定义 Pod 时可以选择性地为每个容器设定所需要的资源数量。 最常见的可设定资源是 CPU 和内存大小,以及其他类型的资源。当为 Pod 中的容器指定了 request 资源时,代表容器运行所需的最小资源量,调度器就使用该信息来决定将 Pod 调度到哪个节点上。当还为容器指定了 limit 资源时,kubelet 就会确保运行的容器不会使用超出所设的 limit 资源量。kubelet 还会为容器预留所设的 request 资源量, 供该容器使用。
2023-07-17 19:28:39
1798
1
原创 kubernetes—Pod详解
Pod 中的容器 3 种pause容器(基础容器、父容器、根容器) 给Pod中的容器组环境初始化,具体见上init容器(初始化容器、init container) 可以为应用容器事先提供运行环境或辅助工具;还可以阻塞或延迟应用容器的启动Pod 有多个init容器时,是串行启动的,要在上一个init容器成功的完成启动、运行和退出后才会启动下一个init容器应用容器(业务容器、main container) 提供应用程序业务Pod有多个应用容器时,是并行启动。
2023-07-16 01:07:55
7858
4
原创 Kubernetes资源配置清单的管理操作
Kubernetes 支持 YAML 和 JSON 格式管理资源对象JSON 格式:主要用于 api 接口之间消息的传递YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读
2023-07-04 23:17:14
506
原创 kubectl详解之声明式管理方法
1. 适合于对资源的修改操作 2. 声明式资源管理方法依赖于资源配置清单文件对资源进行管理 资源配置清单文件有两种格式:yaml(人性化,易读),json(易于api接口解析) 3. 对资源的管理,是通过事先定义在统一资源配置清单内,再通过陈述式命令应用到k8s集群里 4. 语法格式:`kubectl create/apply/delete -f xxxx.yaml`
2023-07-03 23:13:18
475
原创 Kubernetes 服务发布方式(蓝绿发布、灰度发布和滚动发布)
应用程序升级面临最大挑战是新旧业务切换,将软件从测试的最后阶段带到生产环境,同时要保证系统不间断提供服务。长期以来,业务升级渐渐形成了几个发布策略:蓝绿发布、灰度发布和滚动发布,目的是尽可能避免因发布导致的流量丢失或服务不可用问题。
2023-07-03 09:47:03
3455
原创 kubectl详解之陈述式资源管理方法
kubernetes 集群管理集群资源的唯一入口是通过相应的方法调用 apiserver 的接口,kubectl 是官方的CLI命令行工具,用于与 apiserver 进行通信,将用户在命令行输入的命令,组织并转化为 apiserver 能识别的信息,进而实现管理 k8s 各种资源的一种有效途径
2023-06-30 11:58:00
324
原创 初识Kubernetes的理论基础
Kubernetes,词根源于希腊语的 舵手、飞行员。在国内又称k8s(因为k和s之间有8个字母,所以得名。“国内程序员的幽默”)。用于自动部署、扩展和管理“容器化(containerized)应用程序”的开源系统。可以理解成 K8S 是负责自动化运维管理多个容器化程序(比如 Docker)的集群,是一个生态极其丰富的容器编排框架工具。K8S由google的Borg系统(博格系统,google内部使用的大规模容器编排工具)作为原型,后经GO语言延用Borg的思路重写并捐献给CNCF基金会开源。
2023-06-26 08:49:47
933
原创 Ansible之playbooks剧本
playbooks是ansible用于配置,部署,和管理被控节点的剧本。通过playbooks的详细描述,执行其中的tasks,可以让远端主机达到预期的状态。playbooks是由一个或多个”play”组成的列表。 当对一台机器做环境初始化的时候往往需要不止做一件事情,这时使用playbooks会更加适合。通过playbooks你可以一次在多台机器执行多个指令。通过这种预先设计的配置保持了机器的配置统一,并很简单的执行日常任务。
2023-06-15 23:12:27
1074
原创 自动化运维工具之Ansible
Ansible其中一个比较鲜明的特性是Agentless,即无Agent的存在,它就像普通命令一样,并非C/S软件,也只需在某个作为控制节点的主机上安装一次Ansible即可,通常它基于ssh连接来控制远程主机,远程主机上不需要安装Ansible或其它额外的服务。Ansible是基于模块工作的,它只是提供了一种运行框架,它本身没有完成任务的能力,真正执行操作的是Ansible的模块, 比如copy模块用于拷贝文件到远程主机上,service模块用于管理服务的启动、停止、重启等。在远程主机定义任务计划。
2023-06-14 22:58:13
1135
原创 Docker 安全及日志管理
容器的安全性问题的根源在于容器和宿主机共享内核。如果容器里的应用导致Linux内核崩溃,那么整个系统可能都会崩溃。与虚拟机是不同的,虚拟机并没有与主机共享内核,虚拟机崩溃一般不会导致宿主机崩溃。
2023-06-13 11:43:30
2633
原创 Docker本地私有仓库、harbor私有仓库部署与管理
docker本地仓库,存放镜像,本地的机器上传和下载,pull/push。使用私有仓库有许多优点:①节省网络带宽,针对于每个镜像不用每个人都去中央仓库上面去下载,只需要从私有仓库中下载即可;②提供镜像资源利用,针对于公司内部使用的镜像,推送到本地的私有仓库中,以供公司内部相关人员使用–restart=always重启策略:no:默认策略,容器退出不重启on-failure:容器非正常退出重启容器on-failure:3:容器非正常退出最多重启4次容器always:退出总是重启容器。
2023-06-11 22:44:53
2437
1
原创 使用Docker-Compose对Docker容器集群快速编排
Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。Docker-Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)。Docker-Compose运行目录下的所有文件(docker-compose.yml,extends文件或环境变量文件等)组成一个工程,若无特殊指定工程名即为当前目录名。一个工程当中可包含多个服务,每个服务中定义了容器运行的镜像、参数、依赖。
2023-06-11 22:43:54
1612
原创 Docker consul的容器服务更新与发现
服务注册与发现是微服务架构中不可或缺的重要组件。起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。直到后来出现了多个节点的分布式架构,起初的解决手段是在服务前端负载均衡,这样前端必须要知道所有后端服务的网络位置,并配置在配置文件中。如果需要调用后端服务A-N,就需要配置N个服务的网络位置,配置很麻烦后端服务的网络位置变化,都需要改变每个调用者的配置既然有这些问题,那么服务注册与发现就是解决这些问题的。
2023-06-11 22:43:43
735
原创 Docker镜像的创建方法及Dockerfile案例
但是当编写一个新的Dockerfile文件来基于A镜像构建一个镜像(比如为B镜像)时,这时构造A镜像的Dockerfile文件中的ONBUILD指令就生效了,在构建B镜像的过程中,首先会执行ONBUILD指令指定的指令,然后才会执行其它指令。联合文件系统(unionFS):分层、轻量级并且高性能的文件系统,即一层一层叠加然后制作成的镜像,底层为内核加载,然后是rootfs系统,再上层是只可读的基础镜像,镜像启动后成为容器即为可读可写层此层保存数据等,然后可以再打包成一个新的镜像保存数据。
2023-06-09 00:22:30
2113
1
原创 Docker资源控制
Docker 通过 Cgroup 来控制容器使用的资源配额,包括 CPU、内存、磁盘三大方面, 基本覆盖了常见的资源配额和使用量控制。Cgroup 是 ControlGroups 的缩写,是 Linux 内核提供的一种可以限制、记录、隔离进程组所使用的物理资源(如 CPU、内存、磁盘 IO 等等) 的机制,被 LXC、docker 等很多项目用于实现进程资源控制。Cgroup 本身是提供将进程进行分组化管理的功能和接口的基础结构,I/O 或内存的分配控制等具体的资源管理是通过该功能来实现的。
2023-06-06 10:38:41
663
原创 Docker基本管理与网络以及数据管理
Docker是一个go语言开发的应用容器引擎,运行容器里的应用。docker是用来管理容器和镜像的一种工具。容器是在linux上本机运行,并与其他容器共享主机的内核,它运行的是一个独立的进程,不占用其他任何可执行文件的内存,非常轻量。虚拟机运行的是一个完整的操作系统,通过虚拟机管理程序对主机资源进行虚拟访问,相比之下需要的资源更多。直接使用bridge模式,是无法支持指定IP运行docker的,例如执行以下命令就会报错。
2023-06-04 18:01:54
1463
1
原创 分布式存储Ceph的部署及应用(创建MDS、RBD、RGW 接口)
存储机制会把数据分散存储到多个节点上,具有高扩展性、高性能、高可用性等优点。Ceph使用C++语言开发,是一个开放、自我修复和自我管理的开源分布式存储系统。具有高扩展性、高性能、高可靠性的优点。Ceph目前已得到众多云计算厂商的支持并被广泛应用。RedHat及OpenStack,Kubernetes都可与Ceph整合以支持虚拟机镜像的后端存储。粗略估计,我国70%—80%的云平台都将Ceph作为底层的存储平台,由此可见Ceph俨然成为了开源云平台的标配。
2023-06-02 00:49:39
1512
原创 zookeeper机制及消息队列kafka集群部署
Zookeeper:开源分布式的服务,为分布式框架提供协调服务的apache项目kafka:是一个分布式的,支持分区的,多副本基于发布/订阅模式的消息队列(MQ message quene),主要用于日志和大数据实时处理①broker:一台kafka服务器就是一个broker。一个集群由多个broker组成,一个broker可以容纳多个topic②Produer:生产者。也就是写入消息的一方,将消息写入broker中③Consumer:消费者。也就是读取消息的一方,从broker中读取消息。
2023-05-30 15:47:41
1619
原创 ELFK日志分析系统并使用Filter对日志数据进行处理
Filebeat是用于转发和集中日志数据的轻量级传送工具。Filebeat监视您指定的日志文件或位置,收集日志事件,并将它们转发到Elasticsearch或 Logstash进行索引。
2023-05-29 11:57:46
1360
原创 ELK企业级日志分析系统
ELK平台是一套完整的日志集中处理解决方案,将 ElasticSearch、Logstash 和 Kiabana 三个开源工具配合使用, 完成更强大的用户对日志的查询、排序、统计需求。
2023-05-27 23:29:25
698
原创 zabbix 自动发现与自动注册、部署 zabbix 代理服务器及部署 Zabbix 高可用集群
zabbix 自动发现(对于 agent2 是被动模式)zabbix server 主动的去发现所有的客户端,然后将客户端的信息登记在服务端上。缺点是如果定义的网段中的主机数量多,zabbix server 登记耗时较久,且压力会较大。
2023-05-24 22:18:04
2614
原创 分布式系统监控zabbix安装部署及自定义监控
zabbix是一个监控软件,其可以监控各种网络参数,保证企业服务架构安全运营,同时支持灵活的告警机制,可以使得运维人员快速定位故障、解决问题。zabbix支持分布式功能,支持复杂架构下的监控解决方案,也支持web页面,为主机监控提供了良好直观的展现。作为一个运维,需要会使用监控系统查看服务器系统性能、应用服务状态和网站流量指标等,利用监控系统的数据去了解网站上线发布的结果和健康状态。利用一个优秀的监控软件,我们可以:●通过一个友好的界面进行浏览整个网站所有的服务器状态。
2023-05-23 12:29:27
866
原创 rsync远程同步:上行同步、下行同步+inotify实时同步部署
①.rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具。并且可以不进行改变原有数据的属性信息,实现数据的备份迁移特性。②.rsync软件适用于unix/linux/windows等多种操作系统平台③.rsync是一个快速和非常同样的文件复制工具。它能本能复制,远程复制,或者远程守护进程方式复制,它提供了大量的参数来控制其行为的各个方面,并且允许非常灵活的方式来实现文件的传输复制④.以其delta-transfer算法闻名。⑤.rsync监听端口:873。
2023-05-22 19:55:44
2610
原创 Squid代理服务器应用
squid主要提供缓存加速、应用层过滤控制的功能代理服务器是一个位于客户端和原始(资源)服务器之间的服务器,为了从原始服务器取得内容,客户端想代理服务器发送一个请求并指定目标原始服务器,然后代理服务器向原始服务器转交请求并将获得的内容返回给客户
2023-05-21 22:17:05
516
Prometheus软件包
2025-03-16
Helm 不同版本软件包
2024-10-20
metrics-server.yaml
2024-10-15
eNSP 安装包.zip
2024-09-29
一键部署LNMP脚本(Nginx、MySql、PHP)
2023-04-21
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人