自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Prometheus】Prometheus的k8s部署

4)当下一个 alert rule 的评估周期到来的时候,发现 UP=0 继续为真,然后判断警报 Active 的时间是否已经超出 rule 里的 for 持续时间,如果未超出,则进入下一个评估周期;6)属于同一个 Alert Group的警报,在等待的过程中可能进入新的 alert,如果之前的报警已经成功发出,那么间隔 group_interval 的时间间隔后再重新发送报警信息。比如配置的是邮件报警,那么同属一个 group 的报警信息会汇总在一个邮件里进行发送。这时候把接口的状态变为 "DOWN"。

2024-06-15 17:14:38 1124

原创 【Prometheus】Prometheus 监控 + Grafana 可视化平台部署

为什么要用zabbix/prometheus监控Prometheus 是一个开源的服务监控系统和时序数据库,其提供了通用的数据模型和快捷数据采集、存储和查询接口。它的核心组件 Prometheus server 会定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉取数据,新拉取到的数据会持久化到存储设备当中。zabbix 以;只适合传统设备,;只分了服务端和客户端,架构简单prometheus使用http来收集数据,主动拉取数据;专门用于监控容器化的服务;

2024-06-14 21:41:33 1158

原创 【Kubernetes】Rancher 管理 Kubernetes 集群

Rancher 是一个开源的企业级多集群 Kubernetes 管理平台,实现了 Kubernetes 集群在混合云+本地数据中心的集中部署与管理, 以确保集群的安全性,加速企业数字化转型。超过 40000 家企业每天使用 Rancher 快速创新。

2024-06-14 21:03:18 903

原创 【Kubernetes】traefik 自动服务发现

deployment 可以更方便的伸缩,但是不能确定有哪些 Node 在运行 traefik 所以不能确定的知道后端 ip。daemonset 能确定有哪些 Node 在运行 traefik,所以可以确定的知道后端 ip,但是不能方便的伸缩。//访问 Traefik UI,浏览器访问 http://Nodeip:NodePort/dashboard/面向内部(internal)服务的 traefik,建议可以使用 deployment 的方式。//部署 Traefik Web UI。

2024-06-14 20:48:11 635

原创 【Kubernetes】k8s 自动伸缩机制—— HPA 部署

●HPA 是 控制器管理pod资源的副本数量 实现自动伸缩●原理:追踪可控制器管理的pod负载情况,来根据设置的阈值来动态调整pod副本的数量●metrics-server 收集k8s中的node、pod 等资源的使用情况,kubectl top node/pod●kubectl autoscale 控制器 --cpuprecent=60 --min=最小值 --max=最大值。

2024-06-14 20:01:00 1056

原创 【Kubernetes项目部署】k8s集群+高可用、负载均衡+防火墙

负载均衡区域配置Keepalived+Nginx,实现负载均衡高可用,通过VIP 192.168.10.100和自定义的端口号即可访问K8S发布出来的服务。Pod使用hostPath类型的存储卷挂载,两个节点本地目录共享使用 /data,2个Pod副本测试页面自定义,但要不同,以做区分。在 Kubernetes 环境中,通过yaml文件的方式,创建2个Nginx Pod分别放置在两个不同的节点上;点击【添加】,选择【网络适配器】,点击【完成】;点击【虚拟机】,选择【设置】;#到两个node节点查看。

2024-06-13 08:41:08 1180

原创 【Kubernetes】Helm--包管理工具

在没使用 helm 之前,向 kubernetes 部署应用,我们要依次部署 deployment、svc 等,步骤较繁琐。况且随着很多项目微服务化,复杂的应用在容器中部署以及管理显得较为复杂,helm 通过打包的方式,支持发布的版本管理和控制, 很大程度上简化了 Kubernetes 应用的部署和管理。Helm 本质就是让 K8s 的应用管理(Deployment、Service 等)可配置,可以通过类似于传递环境变量的方式能动态生成。

2024-06-13 00:07:13 706

原创 【Kubernetes】k8s--安全机制

认证(Authenticating)鉴权(Authorization)准入控制(Admission Control)

2024-06-12 16:48:46 787

原创 【Kubernetes】Ingress 对外服务、ingress-controlle

kubectl edit svc 服务名#添加IP地址ingress-controller 用于对外接收请求对外发布的四种方式。

2024-06-11 00:14:29 740

原创 【Kubernetes】配置资源管理(secret和configma)

①Opaque 通用类型,可以通过文件、目录、变量创建;k8s中的默认类型②kubernetes.io/service-account-token 是k8s 自动创建的,给service-account服务账号(pod 在k8s 集群内部的专属服务用户)访问APIserver使用,③ kubernetes.io/dockerconfigjson 是给k8s 从harbor私有镜像仓库,进行镜像认证使用④kubernetes.io/tls 通过TLS 证书来认证的(私有文件、密钥)

2024-06-11 00:13:36 908

原创 【Kubernetes】9-Pod控制器

拉取一个centos:7 镜像倒叙删除k8s 内部负载均衡是根据访问量来算的,所以可能会导致一直访问到同一个服务器那是k8s内部的负载均衡 ,会根据资源占比进行调度,会调度到资源少的,请求少的pod创建pod的两种方式自主式pod和以控制器创建的pod无状态就是类似于nginx 的静态页面,一般不会进行改变;每次访问内容都是一样的有状态则类似于数据库,每天都会进行改变;每次访问都是不一样的声明式 == yaml文件陈述式 == 命令kafka消息队列。

2024-06-05 22:03:02 1061

原创 【Kubernetes】 emptyDir、nfs存储卷 和 PV、PVC

pv是磁盘;pvc是磁盘的请求;storage节省资源和当没有满足需求的pv时,就会报错前端后端打包工具?emptyDir 可以实现pod 中容器之间共享数据,但是存储卷之间不能做持久化数据,并且随着pod生命周期的结束emptyDir一起删除。

2024-06-05 22:02:47 897

原创 【Kubernetes】k8s集群的污点、容忍、驱逐 以及排障思路

节点亲和性,是Pod的一种属性(偏好或硬性要求),它使Pod被吸引到一类特定的节点。Taint 则相反,它使节点能够排斥一类特定的 Pod。Taint 和 Toleration 相互配合,可以用来避免 Pod 被分配到不合适的节点上。每个节点上都可以应用一个或多个 taint ,这表示对于那些不能容忍这些 taint 的 Pod,是不会被该节点接受的。如果将 toleration 应用于 Pod 上,则表示这些 Pod 可以(但不一定)被调度到具有匹配 taint 的节点上。

2024-06-04 08:32:24 1008

原创 【Kubernetes】k8s的调度约束(亲和与反亲和)

通过xxx是不经过调度器的,直接在指定的节点创建pod存在多个硬(或软)策略时,最下面的那个生效;硬策略——requiredDuringSchedulingIgnoredDuringExecution表明其是一个强制性的调度,调度器只有在规则被满足的时候才能执行调度软策略——preferredDuringSchedulingIgnoredDuringExecution表明其是一个偏好性的调度,调度器会根据偏好优先选择满足对应规则的节点来调度Pod。

2024-06-04 08:31:30 1050

原创 部署 harbor 创建私有项目

(1)浏览器访问:http://192.168.67.14 登录 Harbor WEB UI 界面,默认的管理员用户名和密码是 admin/Harbor12345。上传 docker-compose 和 harbor-offline-installer-v1.2.2.tgz 到 /opt 目录中。创建 harbor 登录凭据资源清单,用于 K8S 访问 Harbor 私服拉取镜像所需要的密钥权限凭证 secret 资源。(3)填写项目名称为“kgc-project”,点击“确定”按钮,创建新项目。

2024-06-02 15:38:27 181

原创 【Kubernetes】Pod 容器资源限制和三种探针

创建pod 容器时,需要预留的资源量;0.5=500m,内存:MI、GI(2进制为底),M、G(10进制为底)pod 容器能够使用资源量的一个上限;例:4 Gi 内存上限,1 cpu上限(不允许超过上限制)kubectl describe node 节点名称 查看pod 或者node 资源使用情况。

2024-06-02 15:20:12 908

原创 【Kubernetes】Pod理论详解

每个Pod都有一个特殊的被称为“基础容器”的Pause容器。Pause容器对应的镜像属于Kubernetes平台的一部分,除了Pause容器,每个Pod还包含一个或者多个紧密相关的用户应用容器。Pod 是k8s 最小的创建和运行单元,一个pod 可以包含一个或多个容器(一个或多个应用/业务容器:淘宝、京东,pdd后台),Pause 是一个基础容器,也叫根容器/父容器Pod 里的容器共享 network、uts、ipc、user、mount 等命名空间。

2024-06-01 21:33:56 1057

原创 【Kebunetes】 声明式资源管理——yaml文件

Deployment,则可以动态的创建和销毁PodnodePort是外部流量访问K8s的一种方式;删除副本控制器查看如何编写 yaml 文件#每次可以在 . 后面继续添加你需要的内容,它会给你提供模板可以参考--dry-run=client 的"=client" 可以省略不写,不写执行后会有提示但并不是报错,yaml文件正常。

2024-05-26 13:30:46 720

原创 【Kubernetes】kubectl陈述式资源管理

查看nginx-123 副本的版本#更新完毕,查看nginx版本关闭防火墙规则,关闭selinux,关闭swap交换,调整内核参数调优,时间同步● portport 是 k8s 集群内部访问service的端口,即通过 clusterIP: port 可以从 Pod 所在的 Node 上访问到 service​● nodePortnodePort 是外部访问 k8s 集群中 service 的端口,通过 nodeIP: nodePort 可以从外部访问到某个 service。​。

2024-05-22 15:40:57 831

原创 【Kubernetes】Kubeadmin 部署K8S + Harbor仓库部署

1、在所有节点上安装Docker和kubeadm2、部署Kubernetes Master3、部署容器网络插件4、部署 Kubernetes Node,将节点加入Kubernetes集群中5、部署 Dashboard Web 页面,可视化查看Kubernetes资源6、部署 Harbor 私有仓库,存放镜像资源

2024-05-20 13:07:07 950

原创 【Kbernetes】K8S 多master集群架构

仪表板是基于Web的Kubernetes用户界面。您可以使用仪表板将容器化应用程序部署到Kubernetes集群,对容器化应用程序进行故障排除,并管理集群本身及其伴随资源。您可以使用仪表板来概述群集上运行的应用程序,以及创建或修改单个Kubernetes资源(例如deployment,job,daemonset等)。例如,您可以使用部署向导扩展部署,启动滚动更新,重新启动Pod或部署新应用程序。仪表板还提供有关群集中Kubernetes资源状态以及可能发生的任何错误的信息。

2024-05-16 22:08:07 1052

原创 【Kubernetes】Kubernetes 二进制部署

时间同步:CA证书是什么CA其实是Certification Authority的缩写,翻译过来就是认证机构,它原意指的是一个负责签发证书、认证证书、管理已颁发证书的机构,类似于发驾照的车管所。在接到企业的发证申请后,他们会核查申请者的信息,并给企业颁发一个数字证书,用来对文件进行加密、对材料进行签章等做软连接做软连接,目的是为了在任何目录都可以执行命令1, 环境部署关闭防火墙 关闭selinux 关闭swap 根据规划设置主机名做域名映射 调整内核参数 时间同步。

2024-05-16 22:07:59 752

原创 【Kubernetes】Kubernetes 容器集群管理系统概述

前言:包含容器编排,docker、mesos + marathon、k8s、容器编排,云原生、SREdocker compose 单机编排工具docker swarm 能够在多台主机中构建一个docker集群;可以集群化管理和处理的工具目前已基本淘汰微服务、封装 dockerfile 编写成镜像然后进行发布;dockerfile 可以写成shell脚本(通过函数做调用)k8s产于2015年12月,是CNCF与云原生计算基金会,免费开源;

2024-05-10 17:38:22 580

原创 【Ansible】ansible-playbook剧本

定义变量vars:#格式为key: valuetasks:#使用{{key}}引用变量的值#在setup模块中可以获取facts变量信息ps:name: 后面要使用变量的话需要用引号" "括起来;- name: 自定义的名字不需要例:name: "{{fuwu}}"

2024-05-07 23:32:01 675

原创 【Ansiable】ansible的模块和主机清单

present表示添加(可以省略),absent表示移除。#cron 模块的描述信息和操作动作;按 q 退出取消注释,并修改17行的端口为1314[all:vars]

2024-05-07 23:31:53 871

原创 【Docker】Harbor 私有仓库和管理

Harbor 是 VMware 公司开源的企业级 Docker Registry 项目,其目标是帮助用户迅速搭建一个企业级的 Docker Registry 服务。Harbor以 Docker 公司开源的 Registry 为基础,提供了图形管理 UI基于角色的访问控制AD/LDAP 集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文。Harbor 的每个组件都是以 Docker 容器的形式构建的,使用 docker-compose 来对它进行部署。

2024-05-05 19:24:17 980

原创 【实验】使用docker-compose编排lnmp(dockerfile) 完成Wordpress 部署

报错原因:IPv4转发可能被系统内核参数禁用;也可能是由于网络配置文件中的错误设置导致的解决方法①#先检查是否能上网#不能上网去改ifcfg-ens33,DNS1=114.114.114.114②#永久启用IPv4转发#找到并取消注释以下行(如果不存在则添加):#保存文件后,运行以下命令使更改生效。

2024-05-04 19:14:42 1201

原创 【实验】根据docker部署nginx并且实现https

执行该脚本后执行后会生成ca.crt ca.key certificate.sh kgc.com.crt kgc.com.csr kgc.com.key 这几个文件,需要对其进行处理。#将/mnt/index.html挂载到容器内的/usr/share/nginx/html/index.html,将容器内的index.html覆盖掉。#将/mnt/cert挂载到容器内的/mnt下,/mnt/cert下的所有文件都会出现在容器的/mnt下。kgc.com.crt(购买者) ca.crt(b颁发者)

2024-05-04 18:55:29 735

原创 【Docker】如何注册Hub账号并上传镜像到Hub仓库

点击【Repositories】,点击【Create repository】创建仓库。ps:请确保您已经在Docker Hub上创建了相应的镜像仓库,并且有权限上传镜像。在终端中执行以下命令,输入您的凭据以登录到Docker Hub。是您在Docker Hub上创建的镜像仓库的名称和标签。输入仓库名,设置成【公共/私有仓库】是您当前虚拟机中的镜像名称和标签,点击【Create】创建,即可完成。点击【Sign up】注册账号。输入【邮箱】【用户名】【密码】点击【Sign in】登录账号。输入【邮箱】【密码】

2024-05-02 11:26:49 1630 2

原创 【Docker】★★★

如果你想要查看主机上运行的容器资源使用情况,可以访问 http://localhost:8080/docker/,这个页面会列出 Docker 的基本信息和运行的容器情况。访问 http://localhost:8080/containers/ 地址,在首页可以看到主机的资源使用情况,包含 CPU、内存、文件系统、网络等资源。此时,cAdvisor 已经成功启动,我们可以通过访问http://localhost:8080 访问到 cAdvisor 的 Web 界面。创建veth来连接两个网络设备。

2024-04-30 13:59:53 746 1

原创 【Docker】docker consul容器服务更新与发现

服务注册与发现是微服务架构中不可或缺的重要组件。起初服务都是单节点的,不保障高可用性,也不考虑服务的压力承载,服务之间调用单纯的通过接口访问。直到后来出现了多个节点的分布式架构,起初的解决手段是在服务前端负载均衡,这样前端必须要知道所有后端服务的网络位置,并配置在配置文件中。这里就会有几个问题:●如果需要调用后端服务A-N,就需要配置N个服务的网络位置,配置很麻烦●后端服务的网络位置变化,都需要改变每个调用者的配置既然有这些问题,那么服务注册与发现就是解决这些问题的。

2024-04-30 08:26:17 1068

原创 【Docker】docker compose服务编排

Dockerfile模板文件可以定义一个单独的应用容器,如果需要定义多个容器就需要服务编排。docker swarm(管理跨节点)Dockerfile可以让用户管理一个单独的应用容器;而Compose则允许用户在一个模板(YAML格式)中定义一组相关联的应用容器(被称为一个 project,即项目),例如一个 Web 服务容器再加上后端的数据库服务容器等Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排。

2024-04-29 23:13:35 1281 2

原创 【Docker】docker部署lnmp和搭建wordpress网站

编辑Dockerfile上传 my.cnf、mysql-boost-5.7.20.tar.gz 到 /opt/lnmp/mysqld 目录中创建mysql镜像上传 php-7.1.10.tar.bz2 到/opt/lnmp/php 目录中php.ini 文件php-fpm.conf 文件www.conf 文件

2024-04-28 17:52:00 781 1

原创 【Docker】Docker (Dockerfile)的数据管理和网络通信

挂载:两个日志,配置文件,网页目录tomcatdocker rm $(docekr ps -a -q) 删除所有停止的容器docker run -v 宿主目录:容器绝对路径--volums-from 数据卷容器--link 容器名:连接别名-P-p创建镜像基于现有镜像创建docker run 创建并启动容器,再通过docker exec/cp 等容器操作指令修改容器内容然后docker commit 提交成新的镜像②基于本地模板创建。

2024-04-28 08:00:00 862

原创 【Docker】安装docker20.10.24版本

要使用 Yum 包管理器安装 Docker 20 版本(即 Docker 20.10.x),您需要先添加 Docker 的官方仓库。

2024-04-26 14:01:20 647

原创 【Docker】Docker的网络与资源控制

直接使用bridge模式,是无法支持指定IP运行docker的,例如执行以下命令就会报错可以先定义网络,再使用指定IP运行docker#docker1 为执行 ifconfig -a 命令时,显示的网卡名,如果不使用 --opt 参数指定此名称,那你在使用 ifconfig -a 命令查看网络信息时,看到的是类似 br-110eb56a0b22 这样的名字,这显然不怎么好记。#mynetwork 为执行 docker network list 命令时,显示的bridge网络模式名称。

2024-04-26 08:00:00 1015 2

原创 【Docker】Docker基本操作

Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。Docker是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”。Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的、可移植的、自给自足的容器。Docker的Logo设计为蓝色鲸鱼,拖着许多集装箱。鲸鱼可看作为宿主机,集装箱可理解为相互隔离的容器,每个集装箱中都包含自己的应用程序。

2024-04-23 08:00:00 1285 2

原创 【Zabbix】zabbix 软件监控

使用zabbix监控系统查看服务器状态以及网站流量指标,利用监控系统的数据去了解上线发布的结果,和网站的健康状态利用一个优秀的监控软件,我们可以:●通过一个友好的界面进行浏览整个网站所有的服务器状态●可以在 Web 前端方便的查看监控数据●可以回溯寻找事故发生时系统的问题和报警情况●zabbix 是一个基于 Web 界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案●zabbix 能监视各种网络参数,保证服务器系统的安全运营;并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题。

2024-04-16 08:00:00 1675

原创 【Kafka】Kafka 架构深入

topic 是逻辑上的概念,而 partition 是物理上的概念,每个 partition 对应于一个 log 文件,该 log 文件中存储的就是 producer 生产的数据。为保证 producer 发送的数据,能可靠的发送到指定的 topic,topic 的每个 partition 收到 producer 发送的数据后, 都需要向 producer 发送 ack(acknowledgement 确认收到),如果 producer 收到 ack,就会进行下一轮的发送,否则重新发送数据。

2024-04-14 08:00:00 936

原创 【Kafka】Zookeeper集群 + Kafka集群

Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。主要原因是由于在高并发环境下,同步请求来不及处理,请求往往会发生阻塞。比如大量的请求并发访问数据库,导致行锁表锁,最后请求线程会堆积过多,从而触发 too many connection 错误,引发雪崩效应。使用消息队列,通过异步处理请求,缓解系统的压力;消息队列常应用于异步处理,流量削峰,应用解耦,消息通讯等场景。当前比较常见的 MQ 中间件有 ActiveMQ、RabbitMQ、RocketMQ(用的最多)

2024-04-12 19:58:29 1142 1

LNMP-LNMP-编译安装

LNMP-LNMP-编译安装

2023-08-03

空空如也

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

TA关注的人

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