- 博客(47)
- 收藏
- 关注
原创 Kuberbetes Pod调度基础
基于集合的标签选择器也支持使用 “,” 分隔以同时叠加选择,相同意义上的选择条件在这两种选择方式之间是等价的。
2024-08-22 12:27:01
714
原创 Kubernetes Pod入门
Pod 的状态有 Running、Pending、Succeeded、Failed、Unknown、ImagePullBackOff、ErrImagePull、CrashLoopBackoff、OOMKilled、Terminating、SysctlForbidden、Completed、ContainerCreating 等。在使用裸机或裸容器部署时,一般很难对应用做很完善的健康检查,而Pod提供的在生产环境中,进程正常启动并不代表应用能正常处理请求,所以合理的设计应用的健康检 查尤其重要。
2024-08-21 15:36:07
554
原创 Kubernetes集群部署
会检测到并采取相应的措施,如将该节点上的 Pod 重新调度到其他健康的节点上。首先,您需要准备好合适的硬件基础设施,这包括具有足够计算资源(CPU、内存、存储)的服务器节点。总之,Kubernetes 集群部署需要仔细规划和谨慎操作,以确保集群的稳定和高效运行。另外,监控和日志收集系统的搭建也不能忽视,这有助于您及时发现和解决集群运行中的问题。例如,如果您的集群需要暴露到外网,那么配置合适的防火墙规则和负载均衡器就是必须的。会根据各个节点的资源使用情况和调度策略,选择一个最适合运行该 Pod 的节点。
2024-08-19 14:58:06
929
原创 Containerd 初体验
例如,在一个大型的云原生应用架构中,Containerd 可以负责确保容器的快速启动和停止,有效地管理容器所使用的资源。端口映射通常是由容器运行时(比如 Docker、CRI-0)负责的,而不是容器的底层运行时(Containerd)。它专注于管理容器的生命周期、镜像的传输和存储、以及容器执行的各种底层细节。总的来说,Containerd 在现代容器化技术中扮演着重要的角色,为容器的可靠运行和高效管理提供了坚实的基础。任务执行层:负责实际执行与容器相关的操作,如创建容器、启动容器进程、监控容器状态等。
2024-08-15 12:24:24
1067
原创 Docker Swarm 管理
当其中一个工作节点出现故障,管理节点会感知到,并在其他正常的工作节点上启动新的容器实例,以确保始终有 5 个副本在运行,从而保证服务的高可用性。Drain:集群中该节点不可以被指派新的任务,Swarm Scheduler 停掉已经存在的任务,并将它们调度到可用的节点上。总之,Docker Swarm 通过集中式的管理和智能的调度,使得在多个节点上部署和管理容器化应用变得更加简单和高效。例如,当某个工作节点出现故障时,Swarm 会将其上的任务重新调度到其他健康的节点上。
2024-08-13 12:03:45
1192
原创 Docker Compose与私有仓库部署
它以 Docker 公司开源的 Registry 为基础,提供了管理 UI、基于角色的访问控制(Role Based AccessControl)、AD/LDAP 集成、以及审计日志(Auditlogging) 等企业用户需求的功能。作为一个企业级私有 Registry 服务器, Harbor提供了更好的性能和安全,以提升用户使用 Registry 构建和运行环境传输镜像的效率。指定容器名称,由于容器名称是唯一的,如果指定自定义名称,则无法scale。(5)如果包含特殊字符,要使用单引号('')引起来。
2024-08-12 12:15:21
918
原创 KVM+GFS分布式存储系统构建高可用
如果kvm01上对test01有约束,需要在kvm01上清除约束,才能将test01迁移回来。当把虚拟机迁移到了另一台主机,会出现约束,要想将虚拟机迁移回来,需要先清除约束。清除某个 pcs 资源只能在某个主机上运行的限制。在所有节点Gluster执行以下操作。设置好阿里的基础源和epel扩展源。注意:此时虚拟机在kvm01。注意:先设置阿里yum仓库。在所有节点创建/data。在另一个节点查看状态。
2024-08-01 12:28:17
437
原创 利用VNC安装kvm虚拟机
将实验用到的系统镜像上传到KVM主机的root家目录中。这里直接使用CentOS官方提供的qcow2格式的系统镜像(CentOS-7-x86_64-GenericCloud-2009.qcow2),这个镜像可以直接部署到kvm或openstack的平台中。注意:填写的IP地址(192.168.10.201)是Linux宿主机的IP地址,开放的端口号5901映射到了test01虚拟机。安装完后虚拟机是关闭状态,在vnc终端上再次连接test01虚拟机并登录系统。源宿主机 kvm01 上的准备。
2024-07-31 18:33:00
808
原创 KVN虚拟化平台
(3)将Linux系统的ISO文件拷贝到/opt目录下,并关闭存储设置。客户模式:执行非I/O的客户代码,虚拟机运行在这个模式下。用户模式:用户执行I/O代码,QEMU运行在这个模式下。)在kvm01的主机上新建虚拟机,名称为。内核模式:CPU调度和内存管理相关。在bdqn的存储池中添加存储卷。存储卷名称为:test01。(桥接)为例进行操作演示。存储池的名称为:bdqn。安装完成后还需要开启。服务,以开启相关支持。
2024-07-30 20:13:15
305
原创 FastDFS分布式存储
tracker上的元信息都是由storage汇报的信息生成的,本身不需要持久化任何数据,这样使得tracker非常容易扩展,直接增加tracker机器即可扩展为tracker cluster来服务,cluster里每个tracker之间是完全对等的,所有的tracker都接受stroage的心跳信息,生成元数据信息来提供读写服务,tracker根据storage的心跳信息,建立group==>[storage server list]的映射表。文件索引信息包括:组名,虚拟磁盘路径,数据两级目录,文件名。
2024-07-22 19:58:33
634
原创 高性能内存对象缓存
关闭memcached后,该主机的keepalived也会被脚本关闭,于是VIP就漂移到了另一台主机,待此主机修好后,把memcached和keepalived开启,由于设置了不抢占,VIP不会抢占回来,但是把第二台主机的memcached关闭后,第二台主机的keepalived也会关闭,于是VIP就漂移回了第一台主机。然而,它存在很大的缺点,一旦某个 Memcached 服务器宕机,或有新的 Memcached 服务器加入,就可能会找不到数据,导致严重的数据丢失。以简单的键值对形式存储数据。
2024-07-18 16:59:47
847
原创 zookeeper+kafka消息队列群集部署
许多消息队列所采用的"插入-获取-删除"范式中,在把一个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从而确保你的数据被安全的保存直到你使用完毕。例如,在电商系统中,用户下单后,订单处理的消息可以先放入消息队列,后续的库存更新、物流通知等操作可以异步进行,而不必等待每个环节依次完成,从而提高系统的响应速度和整体性能。想向队列中放入多少消息就放多少,然后在需要的时候再去处理它们。例如,在一些业务流程中,可能需要先处理创建订单的消息,再处理支付订单的消息,消息队列可以保证这种顺序性。
2024-07-15 15:02:02
2418
原创 NoSQL之Redis配置与优化
关系数据库是一种基于关系模型的数据库,它使用结构化查询语言(SQL)进行数据操作和管理。其主要特点包括:1.数据结构化:数据按照严格的模式进行组织,表之间存在明确的关系。例如,在一个员工信息数据库中,可能有“员工表”、“部门表”,通过“部门编号”等字段建立关联。2.数据一致性:通过约束和规则保证数据的准确性和完整性。比如设置主键保证每条记录的唯一性,设置外键保证数据之间的关联一致性。3.支持复杂查询:可以使用 SQL 进行复杂的连接、聚合、排序等操作。
2024-07-11 12:10:19
922
原创 Nginx+Tomcat群集
- 负载均衡:Nginx 作为前端的负载均衡器,根据配置的策略将请求分发到后端的多个 Tomcat 实例上。-- 高可用性:通过监控 Tomcat 实例的状态,当某个实例出现故障时,Nginx 能够自动将请求转发到其他正常运行的实例上,确保服务的连续性。Nginx 和 Tomcat 集群的组合是一种常见且强大的架构方案,旨在实现高可用性、可扩展性和高性能的 Web 应用服务。总之,Nginx + Tomcat 集群为企业提供了一种可靠且高效的解决方案,以满足不断增长的业务需求和用户访问量。
2024-07-09 12:28:09
499
原创 Haproxy搭建Web群集
请注意,以上只是一个简单的示例,实际的生产环境中可能需要更复杂的配置,例如根据 URL 进行路由、设置会话保持、优化性能等。Haproxy 的主要配置文件通常是 /etc/haproxy/haproxy.cfg。您可以通过访问 Haproxy 监听的端口,多次刷新页面,观察请求是否被均衡分发到后端的 Web 服务器上。例如,如果 Haproxy 监听在 80 端口,您可以在浏览器中输入服务器的 IP 地址,多次刷新查看结果。编辑/etc/haproxy/haproxy.conf。
2024-07-08 14:36:34
332
原创 Keepalived双机热备
只要服务器池有两台及以上的真实服务器可用,就可以实现访问量的负载均衡。当主服务器的 Web 服务出现故障,Keepalived 会立即将虚拟 IP 漂移到备份服务器,用户的访问请求会被自动导向备份服务器,从而避免服务中断。总之,Keepalived 双机热备方式能够有效地提高服务的可用性和可靠性,确保在主服务器故障时,备服务器能够快速接管,保障业务的连续性。又如,对于数据库服务器,当主数据库服务器宕机,Keepalived 能够迅速切换到备份服务器,保证数据的可用性和业务的正常运行。
2024-07-05 14:39:47
942
6
原创 部署LVS-DR群集
后端真实服务器收到这个帧,解封装后发现目标IP与本机匹配(事先绑定了VIP),于是处理这个报文,随后重新封装报文,将响应报文通过lo接口传送给物理网卡然后向外发出,客户端将收到回复报文,且客户端认为得到正常的服务,而不会知道是哪一台服务器处理的。Real Server返回报文(源IP是VIP)经路由器转发时,Linux默认使用IP包的源IP地址(即VIP)作为ARP请求包中的源IP地址,而不使用发送接口的IP地址,这可能导致路由器更新ARP表项,使Director的VIP失效。
2024-07-04 15:51:09
1040
原创 LVS负载均衡集群
将内部网络的私有 IP 地址转换为公用 IP 地址时,IP 地址是不确定的,是随机的,所有被授权访问上 Internet 的私有 IP 地址可随机转换为任何指定的合法 IP 地址。例如,一家拥有全球用户的在线游戏公司,通过 GSLB 将亚洲、欧洲和美洲的玩家分别引导到不同区域的数据中心,然后在每个区域内通过 ASLB 分配到不同的服务器集群,最后在服务器集群内通过 SLB 分配到具体的服务器,从而确保玩家能够获得流畅的游戏体验。它可以根据服务器的负载情况、资源利用率等指标,将请求分配到合适的服务器集群。
2024-07-03 12:10:49
526
原创 MySQL主从复制与读写分离
主(master)数据库的 bin 二进制文件读取到本地,并写入到中继日志(Relay log)文件中。然后从(slave)数据库会启动一个 I/O 线程(监控主服务器的二进制日志的变化),这个线程主要是把。对比三次的输出,验证读操作,发现没有在master写入的数据,而slave上写的能查到。读写分离就是只在主服务器上写,只在从服务器上读,基本原理是让主数据库处理事务性查询((3)在从服务器上再次查询数据库,可以看到从服务器上也有了db_test数据库了。数据库的数据,保持主从数据一致,重新写入数据库。
2024-07-01 12:29:11
335
原创 MySQL存储引擎
数据库存储引擎是数据库底层软件组件,数据库管理系统使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎还可以获得特定的功能。现在许多数据库管理系统都支持多种不同的存储引擎。MySQL 的核心就是存储引擎。在MySQL客户端中,使用以下命令可以查看MySQL支持的引擎。1.mysql存储引擎。
2024-06-28 11:15:21
285
原创 MySQL备份与还原
在维护数据库时,因为各种各样的原因可能会导致数据丢失,如:人为的SOL语句破坏数据库、在进行下一次全备份之前发生系统故障导致数据库数据丢失、在数据库主从架构中主库的数据发生故障等。完全备份:每次对数据进行完整的备份,即对整个数据库、数据库结构和文件结构的备份,保存的是备份完成时刻的数据库,是差异备份与增量备份的基础。数据保障了企业业务的正常运行。与完全备份不同,增量备份没有重复数据,备份量不大,时间短:但其复麻烦,需要上次完全备份及完全备份之后所有的增量备份才能恢复,而且要对所有增量备份进行逐个反推恢复。
2024-06-27 13:35:26
731
原创 MySQL索引、事务
索引是一个排序的列表,在这个列表中存储着索引的值和包含这个值的数据所在行的物理地址。在一张表中为一个字段创建一个索引,将创建另外一个数据结构,包含字段数值以及指向相关记录的指针,然后对这个索引结构进行排序,允许在该数据上进行二分法排序。使用索引的副作用是需要额外的磁盘空间。对于较大的数据集,将资料输入一个没有 FULLTEXT索引的表中,然后创建索引,其速度比把资料输入现有 FULLTEXT 索引的速度更快。唯一索引与普通索引类似,不同的就是:唯一索引的索引列的值必须唯一,但允许有空值(注意和主键不同)。
2024-06-26 12:03:52
816
原创 一:权限表
需要注意的是,在实际操作中,修改 root 用户密码需要谨慎,确保您有足够的权限并且知道这样做的后果。这是一条 MySQL 中的 SQL 语句,用于撤销用户 'newAdmin'@'localhost' 对表 test.person 的 SELECT 和 UPDATE 权限。` 此语句的作用是删除名为 `newAdmin` 且主机为 `localhost` 的用户。TO 'testUser'@'localhost' 指定了授权的用户为 testUser,并且该用户从本地主机(localhost)进行连接。
2024-06-25 20:53:40
534
原创 MySQL数据库管理
经初始化后的 MySQL服务器,默认建立了四个数据库:test、mysql、information schema和 performance schema(其中 mysql是MySQL服务正常运行所需的数据库,其中包含了用户认证相关的表),执行以下操作可以进行查看。MySQL的临时表,顾名思义,就是临时建立的表,并不会长期存在,主要用于保存些临时数据。REVOKE 语句:用于撤销指定用户的数据库权限,撤销权限后的用户仍然可以连接到MYSQL服务器,但将被禁止执行对应的数据库操作,语句格式如下所示。
2024-06-24 12:09:05
1848
原创 MySQL数据库初体验
也可以说,表是用来存储具体数据的它是以一定的组织方式存储的相互有关的数据集合。这样,数据的存储就能够井然有序。数据表中的行通常叫做记录或者元组,它代表众多具有相同属性的对象中的一个数据表中的列通常叫做字段或者属性,它代表相应数据库中存储对象的共有属性。数据表中的每行记录都必须是唯一的,而不允许出现完全相同的记录,通过定义主键(主关键字,Primary Key)可以保证记录(实体)的唯一性。数据库的建立和维护功能:包括建立数据库的结构和数据的录入与转换、数据库的转储与恢复、数据库的重组与性能监视等功能。
2024-06-21 21:49:37
997
原创 Tomcat 部署及优化
Tomcat是 Apache 下的一个子项目,它具备 Web 服务器的所有功能,不仅可以监听接受请求并响应静态资源,而且可以在后端运行特定规范的 Java 代码 Servlet,同时将执行的结果以 HTML 代码的形式返回客户端。4.Engine 匹配到名为 localhost 的 Host(即使匹配不到也把请求交给该 Host 处理,因为该 Host 被定义为该 Engine 的默认主机),名为 localhost 的 Host 获得请求/testindex.jsp。
2024-06-20 16:33:05
549
原创 Nginx rewrite
浏览器输入模拟访问 http:/lwww.aaa.com/test/1fndex.php(虽然这个请求内容是不存在的)跳转到http://www.newaaa.com/test/1/index.php,可以看到 301 实现了永久重定向跳转,而且域名后的参数也正常跳转。.com,现在需要将这个域名下面的发帖都跳转到http:/wnw.aaa.combbs,注意保持域名跳转后的参数不变。permanent:返回 301永久重定向,浏览器地址栏会显示跳转后的 URL地址,爬虫更新 url。
2024-06-19 14:11:26
930
原创 Nginx优化与防盗链
写脚本/optfenge.sh,把Nginx的日志文件/usrlocalnginx/logs/access.log 移动到目录/var/oginginx 下面,以当前时间做为日志文件的名称,然后用 kil -USR1 创建新的日志文件/usr/local/nginxhogs/access.log,最后删除 30 天之前的日志文件。參数设置为 4,和 CPU 的核数相同。随着 Nginx 运行时间的增加,产生的日志也会逐渐增加,为了方便掌挥 Nginx 的运行状态,需要时刻关注 Nginx 日志文件。
2024-06-18 15:09:00
610
原创 Nginx网站服务
修改hosts 文件,加入www.benet.com 和 www.accp.com 这两个域名。if($link) echo "<h1>恭喜你,数据库连接成功啦!//重载,选项 -s HUP 等同于 -1 :killall -1 nginx。pm.max_spare_servers = 35 ##最多空闲进程数。pm.min_spare_servers = 5 ##最少空闲进程数。deny IP/IP段:拒绝某个IP或IP段的客户端访问。allow IP/IP段:允许某个IP或IP段的客户端访问。
2024-06-17 20:56:44
645
原创 Apache网页优化
如果有apache的源码,可以重新编译并安装一次,新的模块就会添加进去,如果没有源码,或不想重新编译,可以使用apxs扩展此模块,方法如下。2.如果支持,服务器将检查请求文件的后缀,如HTML,CSS等静态文件,服务器会在压缩缓存目录中查找是否存在最新的压缩文件。3.如果不存在最新压缩文件,服务器会返回未压缩的请求文件,并在缓存目录中存放该请求的压缩文件。5.如果请求是动态文件,则服务器会动态压缩内容并返回浏览器,但内容不会存放到缓存目录中。3.mod_gzip对服务器cpu占用更高,但压缩效率更高。
2024-06-15 23:14:04
1791
原创 源码编译安装LAMP
Before/After:要是一个服务 Before 另一个服务,那么在并行启动时(Systemd 总是用进程 0 并行启动所有东西,然后通过这两个标记来二次等待排序),那另一个服务这时就会等这个服务先启动并返回状态,注意是先启动而不是启动成功,因为失败也是一种状态,一定要成功才启动另一个服务是通过依赖关系定义的。反之 After 亦然。开放源代码:这是Apache服务器的重要特性之一,也是其他特性的基Apache服务程序由全世界的众多开发者共同维护,并且任何人都可以自由使用,这充分体现了开源软件的精神。
2024-06-15 12:06:03
603
原创 iptables 防火墙
只开放本机的WEB服务(80端口),但对发给本机的TCP应答数据包予以放行,其他入站数据包均丢弃,对应的入站规则为(ESTABLISHED:已建立的)要有额外的内核模块提供支持,以手动“-m 模块名称”调用相关的模块,然后在再置匹配条件,显示匹配就是需要手动指定模块的匹配方式。当防火墙规则的数量较多时,若能够以数字形式显示地址和端口信息,可以减少地址解析的环节,在一定程度上加快命令执行的速度。根据规则链的划分原则,不同链的处理时机是比较固定的,因此规则链之间的应用顺序 取决于数据包的流向。
2024-06-07 12:09:14
806
原创 Shell 编程之免交互
是标准输入的一种替代品,可以帮助脚本开发人员不必使用临时文件来构建输入信息,而是直接就地生产出一个文件并用作命令的标准输入。命令接收用户的输入值时会有交互过程,尤其是在脚本执行过程中遇到read 命令,脚本会停下来等待用户输入值后才会继续。多分支用于复杂的用户交互,一般情况下输出内容可能有多个,根据不同的输出内容,分别向标准输入发送不同的内容。目录,删除默认存在的所有仓库配置文件,新建文件,并命名为local.repo,其中后缀。:等待执行结束,若没有这一句,可能导致命令还没执行,脚本就结束了。
2024-05-31 14:22:16
946
原创 Shell 编程之正则表达式与文本处理器
正则表达式对于系统管理员来说是非常重要的,系统运行过程中会产生大量的信息,这些信息有些是非常重要的,有些则仅是告知的信息。正则表达式是使用单个字符串来描述、匹配一系列符合某个句法规则的字符串,简单来说,是一种匹配字符串的方法,通过一些特殊符号,实现快速查找、删除、替换某个特定字符串。)是一个强大而简单的文本解析转换工具,可以读取文本,并根据指定的条件对文本内容进行编辑(删除、替换、添加、移动等),最后输出所有行或者仅输出处理的某些行。的连续字符,这个时候就需要使用基础正则表达式中的限定范围的字符“{}”
2024-05-29 12:30:44
550
原创 Shell 编程之循环语句与函数
在一些技术培训和学习领域,出于实验或测试的目的,需要批量添加用户账号,这些用户的名称中包含固定的前缀字串,并按照数字顺序依次进行编号,账号的数量往往也是固定。循环语句时,需要指定一个变量及可能的取值列表,针对每个不同的取值重复执行相同的命令序列,直到变量值用完退出循环。Shell脚本的时候,经常需要递归遍历系统的目录,列出目录下的文件和目录,逐层递归列出,并对这些层级关系进行展示。为避免编写的脚本出错,除了在编写脚本时注意书写规范,排除语法错误,更重要的是利用调试脚本工具来调试脚本。
2024-05-28 14:37:15
505
原创 Shell 编程之条件语句
常用的逻辑测试操作如下,使用时放在不同的测试语句或命令之间。文件测试指的是根据给定的路径名称,判断对应的是文件还是目录,或者判断文件是否可读、可写、可执行等。整数值比较指的是根据给定的两个整数值,判断第一个数与第二个数的关系,如是否大于、等于、小于第二个数。语句是最为常用的一种流程控制方式,用来根据特定的条件测试结果,别执行不同的操作(如果……语句的结构能够根据多个互斥的条件分别执行不同的操作,实际上等同于嵌套使用的 if。的关系,只有当前面的命令执行成功后才会执行后面的命令,否则后面的命令将会被忽略。
2024-05-27 12:26:35
442
原创 Shell编程规范与变量
注释:“./”、sh、bash是相同的执行方式,“.”和source是相同的source和“.”执行脚本时,将脚本中语句在本shell中执行,sh、bash和./是在执行脚本时先启动一个新的shell,然后让脚本中的语句在新的shell中执行,执行完后就退出。可以使用 ./aaa.sh sh aaa.sh bash aaa.sh . aaa.sh source aaa.sh 来执行。$@:输出所有参数,把输出的参数当做一个个独立的单词,便于遍历所有的参数。
2024-05-25 22:10:22
589
1
原创 FTP文件传输
工作在TCP/IP协议簇的,其传输协议是TCP协议提高文件传输的共享性和可靠性,使用C/S模式的工作方式连接时同时处理服务器和客户端的连接命令和数据传输,FTp将命令和数据分开传输,提高传输效率。Userlist_deny=YES //是否禁用user_list列表中的用户账号 若启用必须等于===NO。Pasv_max_port=* //设置被动模式下服务器随机端口的范围的最大值。User_config_dir=/*/*/*/ //为不同的虚拟用户设置不同的权限。
2024-05-24 12:03:02
713
原创 DNS域名解析服务
分离解析简介分离解析的域名服务器实际也是主域名服务器,这里主要是指根据不同的客户端提供不同的域名解析记录。比如来自内网和外网的不同网段地址的客户机请求解析同一域名时,为其提供不同的解析结果。分离解析示意图:一:实验环境部署1:为dns服务器添加两个网卡,并按上图设置各个主机的网络桥接DNS服务器的主机名设置为ns1ns1的ens33网卡的桥接不变(NAT模式)------->内网客户机192.168.10.106(NAT模式)
2024-05-23 09:52:07
549
1
原创 PXE 高效批量网络装机
如果用户对自动应答文件的配置比较熟悉,也可以直接编辑 CentOS7 安装后自动创建的应答文件。如果用户对自动应答文件的配置比较熟悉,也可以直接编辑 CentOS7 安装后自动创建的应答文件。启动菜单用来指导客户机的引导过程,包括如何调用内核,如何加载初始化镜像。命令,指定目标文件夹、文件名,将配置好的应答参数保存为文本文件,如/root/ks.cfg。Enter 键确认后将自动通过网络下载安装文件,并进入图形安装程序界面,界面中,可以分别添加在安装前、安装后自动运行的可执行语句。
2024-05-21 14:23:55
493
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人