自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 k8s 安全机制

Kubernetes 作为一个分布式集群的管理工具,保证集群的安全性是其一个重要的任务。API Server 是集群内部各个组件通信的中介, 也是外部控制的入口。所以 Kubernetes 的安全机制基本就是围绕保护 API Server 来设计的。

2024-06-06 18:40:06 792

原创 k8s 对外发布(ingress)

在k8s中,service的作用体现在两个方面,对集群内部,它不断跟踪pod的变化,更新endpoint中对应pod的对象,提供了ip不断变化的pod的服务发现机制;对集群外部,他类似负载均衡器,可以在集群内外部对pod进行访问。

2024-06-04 18:10:42 1214

原创 k8s配置资源管理

Secret 是用来保存密码、token、密钥等敏感数据的 k8s 资源,这类数据虽然也可以存放在 Pod 或者镜像中,但是放在 Secret 中是为了更方便的控制如何使用数据,并减少暴露的风险。

2024-06-03 18:27:16 342

原创 pod控制器

deployment 认为所有的pod都是一样的不用考虑顺序的要求不用考虑在哪个node节点上运行可以随意扩容和缩容。

2024-06-02 20:08:01 949

原创 k8s PV PVC

另外创建这种 PV 需要用到的存储插件,比如 Ceph 等。有了这两部分信息,Kubernetes 就能够根据用户提交的 PVC,找到对应的 StorageClass,然后 Kubernetes 就会调用 StorageClass 声明的存储插件,

2024-06-01 19:20:26 514

原创 k8s集群调度

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

2024-05-31 20:09:23 1197 1

原创 k8s pod详解

Pod是kubernetes中最小的资源管理组件,Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的,例如,用于管理Pod运行的StatefulSet和Deployment等控制器对象,用于暴露Pod应用的Service和Ingress对象,为Pod提供存储的PersistentVolume存储资源对象等k8s集群中pod两种使用方式一个Pod中运行一个容器。

2024-05-28 00:11:53 1312

原创 k8s kubectl

用于与apiserver进行通信,将用户在命令行输入的命令,组织转换成apiserver能识别的信息,进而实现管理k8s各种资源的一种有效途径。

2024-05-24 23:49:50 398

原创 使用kubeadmin安装k8s

Kubeadmin也是一个工具,提供kubeadm init和kubeadm join,用于快速部署K8S集群,相对简单。

2024-05-16 17:52:59 417

原创 kubernetes二进制部署

etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd是go语言编写的etcd 作为服务发现系统,有以下的特点:简单:安装配置简单,而且提供了HTTP API进行交互,使用也很简单安全:支持SSL证书验证快速:单实例支持每秒2k+读操作可靠:采用raft算法,实现分布式系统数据的可用性和一致性。

2024-05-15 17:48:14 693

原创 Kubernetes(k8s)

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

2024-05-12 18:02:31 748

原创 Ansible playbook

playbooks是ansible用于配置,部署,和管理被控节点的剧本。通过playbooks的详细描述,执行其中的tasks,可以让远端主机达到预期的状态。playbooks是由一个或多个”play”组成的列表。当对一台机器做环境初始化的时候往往需要不止做一件事情,这时使用playbooks会更加适合。通过playbooks你可以一次在多台机器执行多个指令。通过这种预先设计的配置保持了机器的配置统一,并很简单的执行日常任务。

2024-05-11 22:58:29 602

原创 Ansible

Ansible是一个基于Python开发的配置管理和应用部署工具,现在也在自动化管理领域大放异彩。它融合了众多老牌运维工具的优点,Pubbet和Saltstack能实现的功能,Ansible基本上都可以实现Ansible能批量配置、部署、管理上千台主机。比如以前需要切换到每个主机上执行的一或多个操作,使用Ansible只需在固定的一台Ansible控制节点上去完成所有主机的操作。

2024-05-11 16:49:45 956

原创 Docker--harbor私有仓库部署与管理

Harbor 是 VMware 公司开源的企业级 Docker Registry 项目,其目标是帮助用户迅速搭建一个企业级的 Docker Registry 服务。Harbor以 Docker 公司开源的 Registry 为基础,提供了图形管理 UI 、基于角色的访问控制(Role Based AccessControl) 、AD/LDAP 集成、以及审计日志(Auditlogging) 等企业用户需求的功能,同时还原生支持中文。

2024-05-05 21:32:31 1144

原创 Docker consul的容器服务更新与发现

consul是google开源的一个使用go语言开发的服务管理软件。支持多数据中心、分布式高可用的、服务发现和配置共享。采用Raft算法,用来保证服务的高可用。内置了服务注册与发现框架、分布一致性协议实现、健康检查、Key/Value存储、多数据中心方案,不再需要依赖其他工具(比如ZooKeeper等)。服务部署简单,只有一个可运行的二进制的包。每个节点都需要运行agent,他有两种运行模式server 和 client。

2024-04-30 17:48:32 1090 1

原创 Docker-compose

Dockerfile 可以让用户管理一个单独的应用容器,而compose则允许用户在一个模板(YAML格式)中定义一组相关联的应用容器(也可以称为一个project(项目)) ,例如一个web服务容器再加上后端的数据库服务容器等Docker-Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排Docker-Compose将所管理的容器分为三层,分别是工程(project),服务(service)以及容器(container)。

2024-04-29 16:34:05 3021

原创 Docker 搭建lnmp+wordpress镜像

【代码】Docker 搭建lnmp+wordpress镜像。

2024-04-29 10:39:08 450

原创 Docker数据管理+镜像的创建

容器其实是在镜像的最上面加了一层读写层,在运行容器里做的任何文件改动,都会写到这个读写层。但是当编写一个新的Dockerfile文件来基于A镜像构建一个镜像(比如为B镜像)时,这时构造A镜像的Dockerfile文件中的ONBUILD指令就生效了,在构建B镜像的过程中,首先会执行ONBUILD指令指定的指令,然后才会执行其它指令。数据卷是一个供容器使用的特殊目录,位于容器中,可将宿主的目录挂载到数据卷上,对数据卷的修改操作立即可见,并且更新数据不会影响镜像,从而实现数据在宿主机与容器之间的迁移。

2024-04-27 16:34:06 863 1

原创 Docker网络+资源控制

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

2024-04-24 18:43:06 901

原创 Docker

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

2024-04-23 18:36:31 1341

原创 虚拟化技术

将应用程序和系统内核资源进行解耦,以操作系统级别进行隔离,目的是提高资源利用率本机(真实的操作系统) ---> 虚拟化产品--->虚拟化操作系统或软件裸金属 服务器 --->虚拟化产品。

2024-04-22 17:19:07 289

原创 zabbix

案列:自定义监控客户端服务器登录的人数需求:限制登录人数不超过 3 个,超过 3 个就发出报警信息#在客户端创建自定义key明确需要执行的linux命令#创建 zabbix 的监控项配置文件,用于自定义 key#可以将自定义的监控项配置文件创建在 zabbix_agent2.d 目录中 在273行自定义监控项的格式如下#具体配置#在服务端验证新建的监控项在 Web 页面创建自定义监控项模板1.创建模板点击左边菜单栏【配置】中的【模板】,点击【创建模板】

2024-04-17 21:32:46 1220 1

原创 zookeeper和kafka消息队列

Kafka 是最初由 Linkedin 公司开发,是一个分布式、支持分区的(partition)、多副本(replica),基于 Zookeeper 协调的分布式消息中间件系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景,比如基于 hadoop 的批处理系统、低延迟的实时系统、Spark/Flink 流式处理引擎,nginx 访问日志,消息服务等等,用 scala 语言编写。

2024-04-13 23:58:25 1447 1

原创 ELK,ELFK日志收集分析系统

是基于Luccene(一个全文检索引擎的架构)开发的分布式存储检索引擎,是一个实时的、分布式的可扩展的搜索引擎,允许进行全文、结构化搜索,它通常用于索引和搜索大容量的日志数据,也可用于搜索许多不同类型的文档Elasticsearch是基于java语言开发,可以通过restful web接口,让用户可以通过浏览器与Elasticsearch通信数据收集引擎,它支持动态的从各种数据源搜集数据,并对数据进行过滤,分析,丰富,统一格式等操作,然后存储到用户指定的位置,一般发送给Elasticsearch。

2024-04-11 18:42:51 1385

原创 GFS 分布式文件系统

GlusterFS 是一个开源的分布式文件系统。由存储服务器、客户端以及NFS/Samba 存储网关(可选,根据需要选择使用)组成。没有元数据服务器组件,这有助于提升整个系统的性能、可靠性和稳定性。MFS传统的分布式文件系统大多通过元服务器来存储元数据,元数据包含存储节点上的目录信息、目录结构等。这样的设计在浏览目录时效率高,但是也存在一些缺陷,例如单点故障。一旦元数据服务器出现故障,即使节点具备再高的冗余性,整个存储系统也将崩溃。

2024-04-09 18:21:47 828

原创 rsync 远程同步

rsync(Remote Sync,远程同步) 是一个开源的快速备份工具,可以在不同主机之间镜像同步整个目录树,支持增量备份,并保持链接和权限,且采用优化的同步算法,传输前执行压缩,因此非常适用于异地备份、镜像服务器等应用,支持匿名传输,注意发起端要有对应目录位置的读权限rsync支持本地复制,ssh,rsync主机同步,默认端口873在远程同步任务中,负责发起rsync同步操作的客户机称为发起端,而负责响应来自客户机的rsync同步操作的服务器称为同步源。

2024-04-08 18:25:44 1465

原创 Redis性能管理

如果物理内存上没有超过 1G 的连续内存块, 那操作系统就不得不使用多个不连续的小内存块来分配并存储这 1G 数据,该操作就会导致内存碎片的产生。除了用户定义的数据和内部开销以外,used_memory_rss 指标还包含了内存碎片的开销, 内存碎片是由操作系统低效的分配/回收物理内存导致的(不连续的物理内存分配)。volatile-lru:使用LRU算法从已设置过期时间的数据集合中淘汰数据(移除最近最少使用的key,针对设置了TTL的key)指的是缓存中大量数据同时失效,通常发生在某个共享的缓存系统中。

2024-04-03 17:02:43 1102

原创 Redis 主从复制,哨兵模式,集群

redis群集有三种模式,主从复制,哨兵模式,集群(Cluster)

2024-04-03 16:31:04 1240

原创 Redis持久化

开启此项会忽略最后一台可能存在问题的指令。

2024-04-02 16:40:16 1082

原创 Redis

Redis(远程字典服务器) 是一个开源的,使用C语言编写的NoSQL数据库Redis 基于内存运行并支持持久化,采用key-value(键值对)的存储形式,是目前分布式架构中不可或缺的一环。Redis服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程,Redis的实际处理速度则是完全依靠于主进程的执行效率。若在服务器上只运行一个Redis进程,当多个客户端同时访问时,服务器的处理能力是会有一定程度的下降;

2024-04-02 15:25:57 1477

原创 mysql常见故障及mysql优化

数据库未启动或者数据库端口被防火墙拦截启动数据库或者防火墙开放数据库监听端口密码不正确或者没有权限访问修改my.cnf主配置文件,在[mysqld]下添加skip-grant-tables,update更新user表authentication_string字段,重新授权DNS解析慢,客户端连接过多修改my.cnf主配置文件(增加skip-name-reslove参数)数据库授权禁止使用主机名1.服务器非正常关机,数据库所在空间已满,或一些其他未知的原因,对数据库表造成了损坏。

2024-04-01 16:23:35 1276

原创 mysql MHA高可用

MHA(MasterHigh Availability)是一套优秀的MySQL高可用环境下故障切换和主从复制的软件。MHA 的出现就是解决MySQL 单点的问题。MySQL故障切换过程中,MHA能做到0-30秒内自动完成故障切换操作。MHA能在故障切换的过程中最大程度上保证数据的一致性,以达到真正意义上的高可用MHA Node(数据节点)MHA Node 运行在每台 MySQL 服务器上MHA Manager(管理节点)MHA Manager 可以单独部署在一台独立的机器上,管理多个 master

2024-03-31 16:27:21 1215

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

读写分离,基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。数据库复制被用来把事务性操作导致的变更同步到集群中的从数据库。

2024-03-28 19:35:16 884

原创 sql高阶语句

需要注意的是,第一条记录的 位置偏移量是 0,第二条是 1,以此类推。使用 SELECT 语句可以将需要的数据从 MySQL 数据库中查询出来,如果对查询的结果进行排序,可以使用 ORDER BY 语句来对语句实现排序,并最终将排序后的结果返回给用户。在 MySQL 查询时,当表的名字比较长或者表内某些字段比较长时,为了方便书写或者 多次使用相同的表,可以给字段列或表设置别名。通过对sql查询的结果,还可以对其进行分组,使用group by 语句来实现,group by 通常配合聚合函数来使用。

2024-03-26 17:11:06 1072 1

原创 mysql日志管理,备份与恢复

mysql日志文件默认在 /usr/local/mysql/datamysql日志需要在配置文件内配置(/etc/my.cnf 下的[mysqld]模块配置)log-error=usr/local/mysql/data/mysql_error.log (指定日志文件位置及文件名)log-bin=mysql-bin 或 log_bin =mysql-bin二进制文件开启后,重启mysql会在目录查看到二进制日志,名称为,开启二进制后会产生一个索引文件二进制日志文件的索引。

2024-03-25 18:59:20 1737

原创 mysql事务及存储引擎

事务是一种机制、一个操作序列,包含了一组数据库操作命令,并且把所有的命令作为一个整体一起向系统提交或撤销操作请求,即这一组数据库命令要么都执行,要么都不执行。事务是一个不可分割的工作逻辑单元,在数据库系统上执行并发操作时,事务是最小的控制单元。事务适用于多用户同时操作的数据库系统的场景,如银行、保险公司及证券交易系统等等。事务是通过事务的整体性以保证数据的一致性。

2024-03-22 17:13:57 778

原创 数据库索引

索引本身是能加快查询效率,但也得看具体情况,因为索引本身会消耗系统资源,在有索引的情况下,数据库会先进行索引查询,然后在定位的具体的数据行,如果索引的使用不当,反而会增加数据库的负担。主键索引是一种特别的唯一索引,必须指定 primary key , 一个表内只能有一个主键,不允许有空值,添加主键时会自动创建该索引。组合索引是可以在单列上创建的索引,也可以在多列上创建的索引。create table 表名 (字段1 ,字段2,字段3,..... index 索引名(字段1,字段2,字段3));

2024-03-21 16:18:53 1722

原创 SQL语句

create database 库名;

2024-03-20 18:46:43 1105

原创 数据库基本介绍及编译安装mysql

包括定义全局数据结构、局部逻辑数据结构、存储结构、保密模式及信息格式等功能。保证存储在数据库中的数据正确、有效和相容,以防止不合语义的错误数据被输入或输出。

2024-03-19 17:06:18 1435

原创 lvs+keepalive

功能:基于vrrp协议完成地址流动为vip地址所在的节点生成ipvs规则(在配置文件中预先定义)为ipvs集群的各RS做健康状态检测基于脚本调用接口完成脚本中定义的功能,进而影响集群事务,以此支持nginx、haproxy等服务。

2024-03-07 17:51:04 1403

空空如也

空空如也

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

TA关注的人

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