自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Alertmanager 发送告警

Prometheus 对指标的收集、存储与告警能力分属于 Prometheus Server 和 AlertManager 两个独立的组件,前者仅负责定义告警规则生成告警通知, 具体的告警操作则由后者完成。Alertmanager 负责处理由 Prometheus Server 发来的告警通知,Alertmanager对告警通知进行分组、去重后,根据路由规则将其路由到不同的receiver,如Email、钉钉或企业微信等。

2024-02-01 10:49:18 1178 1

原创 Prometheus之PromQL

例如,prometheus_http_requests_total{handler= ""},则该指标名称上所有未使用该标签(handler)的时间序列也符合条件。

2024-01-31 11:57:29 1140

原创 Prometheus:普罗米修斯

Promethues:普罗米修斯promethues是一个开源的系统监控以及报警系统。整合了zabbix的功能,系统,网络,设备。promethues可以兼容网络,设备。容器监控。告警系统。因为他和k8s是一个项目基金开发的产品,天生匹配k8s的原生系统。容器化和云原生服务适配性很高。prometheus是一个服务监控系统和时序数据库,提供了通用的数据模型和快捷数据采集,存储和接口查询。核心组件:prometheus server。

2024-01-29 14:13:47 1135

原创 k8s安全机制

metadata:# "namespace" 被忽略,因为 ClusterRoles 不受名字空间限制rules:resources: ["secrets"] #资源对象为 Secret 类型。

2024-01-25 11:27:16 1190

原创 k8s图形化管理工具rancher

Rancher和K8s的关系,Rancher和K8s区别对比。简单来说,K8s(Kubernetes)为企业提供了一种一致的方式来管理任何计算基础架构,Rancher则是用于管理位于任何位置的Kubernetes集群的完整平台。如果用户是自己手动部署K8s集群,流程还是比较复杂的,需要掌握一定的技术知识,所以为了简化Kubernetes操作,一些Kubernetes管理平台应运而生,例如Rancher。

2024-01-24 10:58:26 1916

原创 k8s之HPA

Horizontal Pod Autoscaling:pod的水平自动伸缩。这是k8s自带的模块。pod占用cpu比率到达一定的阀值,会触发伸缩机制。replication controller 副本控制器 pod的副本数deployment controller 节点控制器。部署podhpa控制副本的数量以及控制部署pod.

2024-01-23 13:58:09 1265

原创 k8s之包管理器Helm

charts 除了可以在 repo 中下载,还可以自己自定义,创建完成后通过 helm 部署到 k8s。在镜像仓库中拉取chart,查看chart的包结构#拉取chart 到本地目录(现在所在的目录中)#对该拉取的chart压缩包进行解压自定义创建一个chart1.使用命令行创建生成一个模板tree nginx2.进行模板文件的修改,生成自定义chartname: nginx #chart名字。

2024-01-22 14:29:59 1764 2

原创 k8s配置资源管理

使用 Secret 资源挂载的方式在 pod.spec.volumes 字段中定义卷类型为 secret在 pod.spec.containers.volumeMounts 字段中把存储卷挂载到指定的容器目录,secret资源数据的key将以文件名的形式存在,value为文件内容容器环境变量引用的方式在 pod.spec.containers.env.name 字段中自定义容器的环境变量名。

2024-01-16 16:23:22 1039

原创 pod控制器

Pod 控制器有几种?1、Deployment+ReplicaSet 部署无状态应用的Pod2、StatefulSet 部署有状态应用的Pod3、DaemonSet 在K8S集群的所有Node节点上部署相同的Pod4、Job 部署一次性的任务Pod,完成后就会退出并不会重启5、CronJob 部署周期性的任务Pod,完成后就会退出并不会重启Deployment1、部署无状态应用的。

2024-01-16 09:49:26 848

原创 k8s存储卷

静态PV的使用:1、准备好存储设备和共享目录2、创建PV资源,配置存储卷类型、访问模式(RWX,RWO,ROX)、存储能力大小3、创建PVC资源,配置请求PV资源的访问模式和存储大小,绑定PV(一个PV只能绑定一个PVC)4、创建Pod资源挂载PVC,配置存储卷类型为persistentVolumeClaim,在容器配置中定义存储卷挂载内容StorageClass 简称 SC 资源 实现动态创建 PV 资源。

2024-01-11 16:58:36 1261 1

原创 k8s的集群调度

Kubernetes 是通过 List-Watch 的机制进行每个组件的协作,保持数据同步的,每个组件之间的设计实现了解耦。用户是通过 kubectl 根据配置文件,向 APIServer 发送命令,在 Node 节点上面建立 Pod 和 Container。APIServer 经过 API 调用,权限控制,调用资源和存储资源的过程,实际上还没有真正开始部署应用。这里需要 Controller Manager、Scheduler 和 kubelet 的协助才能完成整个部署过程。

2024-01-08 16:16:17 1119

原创 k8s的pod基础

每个pod都有一个基础容器pause容器。pause容器对应的镜像属于k8s集群的一部分。创建集群就会有pause这个基础镜像。pod里面包含了一个或者多个相关的容器(应用)pod外再设置一个基础镜像的原因:1、在一组容器作为一个单元的情况下,难以对整体的容器简单地进行判断及有效地进行行动。比如,一个容器死亡了,此时是算整体挂了么?那么引入与业务无关的Pause容器作为Pod的基础容器,以它的状态代表着整个容器组的状态,这样就可以解决该问题。

2024-01-03 17:20:14 1116

原创 kubectl陈述式资源管理

蓝绿发布:两套环境交替升级,旧版本保留一定时间便于回滚。灰度发布:根据比例将老版本升级,例如80%用户访问是老版本,20%用户访问是新版本。滚动发布:按批次停止老版本实例,启动新版本实例。1.查看版本信息2.查看资源对象简写3.查看集群信息4.配置kubectl自动补全5.node节点查看日志创建kubectl create 控制器kubectl run 自助式发布,创建 service更新回滚删除。

2024-01-03 08:35:52 785

原创 kubeadm来搭建k8s集群。

我们采用了二进制包搭建出的k8s集群,本次我们采用更为简单的kubeadm的方式来搭建k8s集群。二进制的搭建更适合50台主机以上的大集群,kubeadm更适合中小型企业的集群搭建主机配置建议:2c 4G主机节点 IP 组件Harbor节点 20.0.0.104 docker、docker-compose、harbor-offline-v1.2.2在所有节点上安装Docker和kubeadm。

2023-12-28 15:02:45 1106

原创 二进制搭建 Kubernetes v1.20最终版

二进制搭建 Kubernetes v1.20k8s集群master01:20.0.0.101 kube-apiserver kube-controller-manager kube-scheduler etcdk8s集群master02:20.0.0.102k8s集群node01:20.0.0.103 kubelet kube-proxy dockerk8s集群node02:20.0.0.104etcd集群节点1:20.0.0.101 etcd。

2023-12-27 15:09:49 952

原创 k8s二进制部署2

/在所有 node 节点上操作#创建kubernetes工作目录#上传 node.zip 到 /opt 目录中,解压 node.zip 压缩包,获得kubelet.sh、proxy.shcd /opt///在 master01 节点上操作#把 kubelet、kube-proxy 拷贝到 node 节点#上传 kubeconfig.sh 文件到 /opt/k8s/kubeconfig 目录中,生成 kubeconfig 的配置文件。

2023-12-27 12:15:12 1139

原创 k8s的二进制部署

k8s的二进制部署:源码包部署node节点01: 20.0.0.103 kubelet kube-proxy etcdnode节点02: 20.0.0.104 kubelet kube-proxy etcd负载均衡:nginx+keepalive:maser:20.0.0.105。

2023-12-26 10:03:04 1129

原创 Kubernetes的理论基础

k8s:kubernetes:8个字母省略,就是k8s。自动部署,自动扩展和管理容器化部署的应用程序的一个开源系统。k8s是负责自动化运维管理多个容器化程序的集群,是一个功能强大的容器编排工具。分布式和集群化的方式进行容器管理。1.15 1.18 1.20 1.28 几个版本 常用1.20.k8s是google的borg系统作为原型,后期经由go语言编写的开源软件。docker微服务,可以满足微服务使用,那么为什么还要使用k8s呢。

2023-12-25 16:13:34 889

原创 ansible的脚本------playbook剧本

在yaml文件中,我们可以在初始配置的模块中用var去定义变量的存在,变量的格式为key:value,以此来确定该变量在剧本中的存在---vars:tasks:---tasks:- debug:直到d4whith_items: {{item}}会把所有的列表展开进行遍历输出,with_flattened也可以替代with_itemswith_list: {{item}}会把每个列表当作一个整体输出。

2023-12-21 15:12:12 1008

原创 Ansible自动化运维工具

command模块:注意:在远程主机执行命令,不支持管道,重定向等shell的特性。ansible 指定的IP -m command -a 'Linux基础命令' #指定 ip 执行 基础命令ansible 组名 -m command -a 'Linux基础命令' #指定组执行基础命令ansible all -m command -a 'linux基础命令' #指定所有被管理的主机执行该命令。

2023-12-19 12:30:00 924

原创 consul

通过服务注册与发现让后端服务A-N可以把当前自己的网络位置注册到服务发现模块,服务发现就以K-V的方式记录下来,K一般是服务名,V就是IP:PORT。服务发现模块定时的进行健康检查,轮询查看这些后端服务能不能访问的了。consul的服务发现机制:Consul在集群的每一个节点都运行一个客户端,这些客户端就是 gossip pool(分布式健康检查 分布式健康检查)的一部分,gossip协议实现在服务宕机发现上很高效,无论服务集群中服务数多少,Consul可以通过简单的检查服务返回200状态来进行健康检查。

2023-12-15 15:05:24 891

原创 docker-harbor私有仓库

docker-harbor私有仓库docker 镜像 容器 仓库仓库:保存镜像私有,自定义用户的形式登录仓库,拉取或者上传镜像。(内部管理的用户)harbor:是VMware公司开发的,开源的企业级的docker registry项目。帮助用户快速的搭建一个企业级的docker 仓库的服务。支持中文。

2023-12-14 14:57:45 1066

原创 docker-compose单机容器编排

Dockerfile:先配置好文件,然后build,镜像-------->容器。docker-conpose 既可以基于dockerfile,也可以基于镜像,一键式拉起镜像和容器。docker-compose核心就是yml文件,可以定义容器的一切。通过yml配置,直接运行容器。docker:单节点。docker没有统一对外提供服务的端口和配置。docker一般都是内部访问。无需使用https。如果要对外以集群和分布式的方式提供统一访问的端口,k8s+ingress.

2023-12-13 13:44:48 990

原创 lnmp搭建

FROM centos:7RUN yum -y install pcre-devel zlib-devel gcc gcc-c++ make && useradd -M -s /sbin/nologin nginxADD nginx-1.22.0.tar.gz /usr/local/src/WORKDIR /usr/local/src/nginx-1.22.0RUN ./configure \--prefix=/usr/local/nginx \--user=nginx \--group=ng

2023-12-12 17:37:55 821

原创 dockerfile,Docker镜像的创建

dockerfile:创建镜像,创建自定义的镜像。包括配置文件,挂载点,对外暴露的端口。设置环境变量。docker的创建镜像的方式:1、基于已有镜像进行创建。根据官方提供的镜像源,创建镜像,然后拉起容器。是一个白板,只能提供基础的功能,扩展性的功能还是需要自定义(进入容器进行操作)(1)首先启动一个镜像,在容器里做修改docker run -it --name web centos:7 /bin/bash #启动容器​。

2023-12-11 12:13:38 922

原创 Docker的数据卷、数据卷容器,容器互联

数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机的目录挂载到数据卷上,对数据卷的修改操作立刻可见,并且更新数据不会影响镜像,从而实现数据在宿主机与容器之间的迁移。数据卷的使用类似于Linux下对目录进行的mount操作。docker run -v 数据卷 #在容器内创建数据卷​docker run -v 宿主机目录:数据卷 #将宿主机目录挂载到容器中。

2023-12-07 14:34:06 1518

原创 Docker网络原理及Cgroup硬件资源占用控制

如果想要删除自定义的网络,可以使用docker network rm 网络模式名称进行删除,例如docker network rm mynetwork。删除网络模式前,需要先确保使用该网络模式创建的容器已退出(即已停止)。如果容器仍在运行,则该网络无法删除。

2023-12-07 14:18:29 1073

原创 docker

docker基本管理和概念:docker是什么:开源的应用容器引擎。基于go语言开发的。运行在linux系统当中的开源的,轻量级的“虚拟机”。docker的容器技术可以在一台主机上轻松的为任何应用创建一个轻量级的,可移植的,自给自足的容器。docker的宿主机是linux系统。集装箱可以理解为相互隔离的容器(组件,应用程序APP),每个容器都是一个独立的应用程序。docker的设计宗旨:build,ship and run any app,anywhere。

2023-12-06 14:22:49 1140

原创 zabbix

●zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。●zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。●zabbix 由 2 部分构成,zabbix server 与可选组件 zabbix agent。通过 C/S 模式采集数据,通过 B/S 模式在 Web 端展示和配置。

2023-12-01 14:00:48 958

原创 zookeeper集群+kafka集群

主要原因是由于在高并发环境下,同步请求来不及处理,请求往往会发生阻塞。比如大量的请求并发访问数据库,导致行锁表锁,最后请求线程会堆积过多,从而触发 too many connection 错误,引发雪崩效应。我们使用消息队列,通过异步处理请求,从而缓解系统的压力。消息队列常应用于异步处理,流量削峰,应用解耦,消息通讯等场景。当前比较常见的 MQ 中间件有 ActiveMQ、RabbitMQ、RocketMQ、Kafka 等。

2023-11-29 17:40:43 1103

原创 ELK日志分析系统

是基于Lucene(一个全文检索引擎的架构)开发的分布式存储检索引擎,用来存储各类日志。Elasticsearch 是用 Java 开发的,可通过 RESTful Web 接口,让用户可以通过浏览器与Elasticsearch 通信。Elasticsearch是一个实时的、分布式的可扩展的搜索引擎,允许进行全文、结构化搜索,它通常用于索引和搜索大容量的日志数据,也可用于搜索许多不同类型的文档。

2023-11-27 17:54:35 1034

原创 Redis主从复制,哨兵和Cluster集群

主从复制: 主从复制是高可用Redis的基础,哨兵和集群都是在主从复制基础上实现高可用的。主从复制主要实现了数据的多机备份(和同步),以及对于读操作的负载均衡和简单的故障恢复。缺陷:故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。哨兵: 在主从复制的基础上,哨兵实现了自动化的故障恢复。(主挂了,找一个从成为新的主,哨兵节点进行监控)缺陷:写操作无法负载均衡;存储能力受到单机的限制。

2023-11-22 14:01:10 129

原创 Redis高可用

redis的高可用:在集群当中有一个非常重要的指标,提供正常服务的时间的百分比(365天)99.9%redis的高可用含义更加宽泛,正常服务是指标之一,数据容量的扩展,数据的安全性。

2023-11-21 13:59:47 72

原创 Redis

非关系数据库1、数据保存在缓存中,利于读取速度/查询数据2、架构中位置灵活3、分布式、扩展性高关系数据库1、安全性高(持久化)2、事务处理能力强3、任务控制能力强4、可以做日志备份、恢复、容灾的能力更强一点。总结:关系型数据库:实例-->数据库-->表(table)-->记录行(row)、数据字段(column)------》存储数据非关系型数据库:实例-->数据库-->集合(collection)-->键值对(key-value)

2023-11-20 17:08:30 321

原创 GFS分布式文件系统

GFS分布式文件系统:gfd glusterFS开源的分布式的文件系统。存储服务器,客户端以及网络(NFS/samba)网关。传统式老的分布式系统元服务器,元服务器保存存储节点的目录树信息。一旦元服务器故障,所有的存储节点全部失效。现在GFS取消了元服务器机制,数据横向扩展能力更强。可靠性更强。存储效率也更高。

2023-11-17 12:02:38 655

原创 rsync远程同步

rsync远程同步:是一个开源的快速备份工具。可以在不同主机之间同步整个目录。在远程同步任务中,一个是源端,还有一个发起端。源端负责文件的原始位置,发起端和源端的文件同步。

2023-11-17 08:33:03 107

原创 squid代理服务器

acl 列表名称 列表类型 列表内容 …1、编辑配置文件,定义控制访问列表......acl localhost src 192.168.73.112/32 #客户机源地址为 192.168.73.112acl MYLAN src 192.168.73.0/24 12.0.0.0/24 #客户机网段acl destinationhost dst 12.0.0.12/32 #目标地址为 12.0.0.12。

2023-11-16 08:40:31 124

原创 mysql主从复制和读写分离

主从复制:主mysql上的数据,新增和修改的库,表,表里的数据,都会同步到从mysql上。

2023-11-14 09:02:46 106

原创 数据库存储过程

存储过程:是一组为了完成特定功能的sql语句的集合。类似于函数。写好了一个存储过程之后,我们可以像函数一样随时调用sql的集合。复杂的,需要很多sql语句联合执行完成的任务。存储过程在执行上比sql语句的执行速度要快,效率也更高。

2023-11-09 10:11:08 76

原创 MySQL高级查询语句

SELECT "字段" FROM "表名" WHERE "字段" IN ('值1', '值2', ...);#in,遍历一个取值列表。SELECT "字段" FROM "表名" [WHERE "条件"] ORDER BY "字段" [ASC|DESC];SELECT "字段" FROM "表名" WHERE "条件1" AND "条件2";SELECT "字段" FROM "表名" WHERE "条件1" OR "条件2";SELECT "字段" FROM 表名" WHERE "条件";

2023-11-07 15:30:26 93

空空如也

空空如也

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

TA关注的人

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