自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 解决node: /lib64/libm.so.6: version `GLIBC_2.27‘ not found (required by node)

node运行的时候报了以下几个错误,查阅了不少资料,原因主要是与系统中安装的 glibc 和 libstdc++ 版本过低有关,导致无法满足 Node.js 运行所需的库版本要求。折腾半天成功解决,这里记录一下我的处理过程。目前用的是6.0.19,没有CXXABI_1.3.9、GLIBCXX_3.4.20、GLIBCXX_3.4.21。解决办法:更新glibc和libstdc++安装bison、升级gcc、make。接下来继续解决libstdc++进入前面编译gcc的输入目录。查看升级后的make版本。

2025-02-16 16:19:21 1811 1

原创 mysql 双主双从 + proxysql 代理

ProxySQL 本质上是一个中间代理层,当客户端连接到 ProxySQL 并使用某个用户身份发起请求时,ProxySQL 会以同样的用户身份将请求转发到后端 MySQL 服务器。default_hostgroup:默认连接到后端服务器的组id,0表示没有,也就是访问的时候完全依赖路由规则,如果访问的时候没有匹配到任何规则,会报错。master1和master2互为主从,slave1是master1的从,slave2是master2的从。在master2,slave1,slave2上面查看。

2025-01-14 15:36:30 1409

原创 go 1.23.4安装

报错,不要慌,这是因为 go 的编译需要一个已有的 go 运行环境作为引导工具链。这是 go 编译的一个基本需求。1、下载源码,从 Go 的官方存储库下载指定版本的源码包。2、解压源码包到 /usr/local 目录。5、设置go环境变量。

2025-01-06 18:42:21 539

原创 nginx 基于 geoip 模块限制地区访问

9、确保数据库文件存在,确保你下载的数据库文件 GeoLite2-Country.mmdb 正确放置在 /usr/share/GeoIP 目录下,并且该目录对 Nginx 有读取权限。11、编辑 nginx 配置文件,分别在 http 模块和 server 模块里面添加以下内容。6、上传nginx源码文件到 /opt 目录,并解压编译。可以看到,目前没有做地区限制,nginx是可以访问状态。接下来我们限制 中国、香港、澳门三个地区的访问。4、安装nginx,下载依赖包。10、启动 nginx 并且访问。

2024-12-29 18:31:52 1098

原创 Kubernetes 二进制安装

本节采用二进制方式来安装 Kubernetes 集群,集群结果同前面 Kubeadm 方式安装类似。实验环境包括一台 master 节点,两台 node 节点,具体的配置要求和角色分配如下表所示。主机操作系统主机名 / IP 地址主要软件服务器CentOS 7.9服务器CentOS 7.9服务器CentOS 7.9二进制安装 k8s 系统环境IP 地址Hostnamek8s-masterk8s-node1k8s-node2Docker 角色分配。

2024-06-06 15:21:49 1081 1

原创 Docker Swarm 管理

创鑫公司给云计算工程师提出新的要求,可将集群中所有 Docker Engine 整合进一个虚拟的资源池,通过执行命令与单一的主 Swarm 进行沟通,而不必分别和每个 Docker Engine 沟通。在灵活的调度策略下,IT 团队可以更好地管理可用的主机资源,保证应用容器的高效运行。

2024-06-04 14:58:10 1163

原创 Docker 安全及日志管理

虚拟机通过添加 Hypervisor 层,虚拟出网卡、内存、CPU 等虚拟硬件,再在其上建立虚拟机,每个虚拟机都有自己的系统内核。而 Docker 容器则是通过隔离的方式,将文件系统、 进程、设备、网络等资源进行隔离,再对权限、CPU 资源等进行控制,最终让容器之间互不影响,容器无法影响宿主机。容器与宿主机共享内核、文件系统、硬件等资源。

2024-06-02 15:58:33 928 1

原创 Docker 私有仓库部署和管理

创鑫公司提出了一个新需求,使用 Docker 将 Consul、Consul Template、Registrator 和 Nginx 组装成一个值得信任且可扩展的服务框架,可在这个框架中添加和移除服务,不需要重写任何配置,也不需要重启任何服务,一切都能正常运行。Docker Compose 的前身是 Fig,它是一个定义及运行多个 Docker 容器的工具。使用 Docker Compose 时,只需要在一个配置文件中定义多个 Docker 容器,然后使用一条命令启动这些容器。

2024-05-30 11:19:04 1379

原创 Docker 基本管理

因为 Docker 轻便、快速的特性,可以使应用达到快速迭代的目的。每次小的变更,马上就可以看到效果,而不用将若干个小变更积攒到一定程度再变更。每次变更一小部分其实是一种非常安全的方式,在开发环境中能够快速提高工作效率。Docker 容器能够帮助开发人员、系统管理员、质量管理和版本控制工程师在一个生产环节中 一起协同工作。制定一套容器标准能够使系统管理员更改容器的时候,程序员不需要关心容器的变 化,而更专注自己的应用程序代码。从而隔离开了开发和管理,简化了开发和部署的成本。Docker 产品的 Logo。

2024-05-28 11:54:04 729

原创 Kubernetes 资源控制管理

Kubectl 是一个用于操作 Kubernetes 集群的命令行接口,利用 Kubectl 的各种命令可以实现各种功能,在使用 Kubernetes 过程中是非常常用的工具。在 Kubernetes 中,一般使用 YAML 格式的文件来创建符合预期期望的 Pod,这样的 YAML 文件一般称之为资源清单。

2024-05-17 14:44:38 1035

原创 Kubernetes 群集部署

Kubeadm 是谷歌推出的一个专门用于快速部署 kubernetes 集群的工具。在集群部署的过程中,可以通过 kubeadm init 来初始化 master 节点,然后使用 kubeadm join 将其他的节点加入到集群中。Kubeadm 通过简单配置可以快速将一个最小可用的集群运行起来。它在设计之初关注点是快速安装并将集群运行起来,而不是一步步关于各节点环境的准备工作。

2024-05-14 21:40:34 923

原创 OpenStack 云平台管理

OpenStack 大部分管理功能都可以通过 Dashboard 进行操作,熟练掌握 Dashboard 操作对于运维工程师十分重要。Dashboard 图形化的操作界面将简化管理任务,同时降低出错概率。本章通过云主机的创建过程,学习 Dashboard 界面的基本操作,同时学习网络、路由、实例类型、镜像、安全组、卷、密钥对、快照等功能的操作方法。

2024-04-25 09:18:03 1758 4

原创 OpenStack 常见模块

Keystone 类似一个服务总线, 或者说是整个 Openstack 框架的注册表,其他服务通过 keystone 来注册其服务的 Endpoint,任何服务之间相互的调用,需要经过 Keystone 的身份验证,并获得目标服务的 Endpoint,从而找到目标服务。在 keystone 中包含一个端点模板,这个模板提供了所有已存在的服务的端点信息。在文件系统中,对象以二进制文件的形式存储,它的元数据存储在文件系统的扩展属性(xattr)中, 建议采用默认支持扩展属性(xattr)的 XFS 文件系统。

2024-04-21 17:34:39 1388

原创 OpenStack 入门体验

相信大家都听到很多的阿里云、腾讯云、百度云等等这些词,那到底什么是云计算?云计算又能做什么?云计算(cloud computing)是一种基于网络的超级计算模式,基于用户的不同需求,提供所需的资源,包括计算资源、存储资源、网络资源等。云计算服务运行在若干台高性能物理服务器之上,提供每秒 10 万亿次的运算能力,可以用于模拟核爆炸、预测气候变化以及市场发展趋势。云计算有广义和狭义之分。狭义的云计算是指通过网络按需向用户提供 IT 基础设施,包括硬件、平台和软件,提供资源的网络被称为“云”。

2024-04-16 10:03:27 1223

原创 KVM + GFS 分布式存储

本章案例主要使用之前章节所学的 KVM 及 GlusterFS 技术,结合起来从而实现 KVM 高可用。利用 GlusterFS 分布式复制卷,对 KVM 虚拟机文件进行分布存储和冗余。分布式复制卷主要用于需要冗余的情况下把一个文件存放在两个或两个以上的节点,当其中一个节点 数据丢失或者损坏之后,KVM 仍然能够通过卷组找到另一节点上存储的虚拟机文件,以保证虚拟机正常运行。当节点修复之后,GlusterFS 会自动同步同一组卷组里面有数据的节点数据。

2024-04-12 15:20:55 1158

原创 KVM 高级功能部署

企业内部为了使服务器资源达到最大化利用,通常都会进行 KVM 虚拟化,每台服务器上运行多台 KVM 虚拟机。随着 KVM 虚拟机数量的不断增多,个别服务器会出现资源过载现象,这时候就需要对部分 KVM 虚拟机进行迁移,迁移到负载相对较低的服务器上。为了解决以上问题,针对可停机的 KVM 虚拟机,可使用静态迁移的方式来迁移 KVM 虚拟机。针对在线提供服务、不可停机的 KVM 虚拟机,可使用基于共享存储的动态迁移或基于数据块的动态迁移来完成迁移工作。

2024-04-09 15:48:33 984

原创 部署 KVM 虚拟化平台

公司部分 Linux 服务器硬件资源利用率不高,为了充分利用这些 Linux 服务器,可以部署 KVM,在物理机上运行多个业务系统。例如,在运行 Nginx 的服务器上部署 KVM,然后在 KVM 虚拟机上运行 Tomcat 等服务。广义的 KVM 实际上包含两部分,一部分是基于 Linux 内核支持的 KVM 内核模块,另一部分就是经过简化和修改的 Qemu。KVM 内核模块是模拟处理器和内存以支持虚拟机的运行,Qemu 主要处理 I/O 以及为用户提供一个用户空间工具来进行虚拟机的管理。

2024-04-07 16:19:57 3091

原创 ELK 企业级日志分析系统

日志分析是运维工程师解决系统故障、发现问题的主要手段。日志包含多种类型,包括程序日志、Web 访问日志、系统日志以及安全日志等。通过对日志的分析,既可以未雨绸缪预防故障的发生,又可以在故障发生时寻找蛛丝马迹、快速定位故障点。机房管理员也可以通过日志了解服务器的软件信息、硬件信息、服务器负荷以及安全性相关的信息,如服务器是否被攻击、磁盘空间是否即将耗尽、内存是否严重不足等。通过这些分析,机房管理员可以及时采取措施。

2024-04-06 14:55:08 1240

原创 GFS 分布式文件系统

GlusterFS 是一个开源的分布式文件系统,同时也是 Scale-Out 存储解决方案 Gluster 的核心,在存储数据方面具有强大的横向扩展能力,通过扩展不同的节点可以支持数 PB 级别的存储容量。GlusterFS 借助 TCP/IP 或 InfiniBand RDMA 网络将分散的存储资源汇聚在 一起,统一提供存储服务,并使用单一全局命名空间来管理数据。GlusterFS 基于可堆叠的用户空间以及无元的设计,可为各种不同的数据负载提供优异的性能。

2024-04-02 20:43:15 1045

原创 Redis 集群

现今 Redis 在很多业务场景,使用越来越广泛。在互联网发展的今天,网站的稳定性和高可用性不言而喻。随着技术的发展,集群方案层出不穷,目前 Redis 集群的实现方法 一般有客户端分片、代理分片和服务器端分片三种解决方案。

2024-03-26 11:19:38 974

原创 rsync 远程同步

正确、有效的备份方案是保障系统及数据安全的重要手段。在服务器中,通常会结合计划任务、Shell 脚本来执行本地备份。为了进一步提高备份的可靠性,使用异地备份也是非常有必要的。本章将要学习 rsync 工具的使用,以实现快速、安全、高效的异地备份,如针对 Web 站点的同步备份。

2024-03-25 20:39:00 1030

原创 Redis 配置与优化

Redis 数据库是一个非关系型数据库,在正式学习 Redis 之前,先来了解关系型数据库与非关系型数据库的概念。Redis(RemoteDictionaryServer,远程字典型)是一个开源的、使用 C 语言编写 NoSQL 数据库。Redis 基于内存运行并支持持久化,采用 key-value(键值对)的存储形式, 是目前分布式架构中不可或缺的一环。Redis服务器程序是单进程模型,也就是在一台服务器上可以同时启动多个Redis进程, 而 Redis 的实际处理速度则是完全依靠于主进程的执行效率。

2024-03-23 15:22:52 1201

原创 高性能内存对象缓存 Memcached

Memcached 是一套开源的高性能分布式内存对象缓存系统,它将所有的数据都存储在内存中,因为内存中会统一维护一张巨大的 Hash 表,所以支持任意存储类型的数据。很多网站使用 Memcached 提高网站的访问速度,尤其是需要频繁访问数据的大型网站。Memcached 是典型的 C/S 架构,因此需要构建 Memcached 服务器端与 Memcached API 客户端。

2024-03-19 16:08:45 892

原创 Squid 代理服务器应用

作为应用层的代理服务软件,Squid 主要提供缓存加速、应用层过滤控制的功能。

2024-03-19 09:30:52 1727 1

原创 MySQL MHA故障切换

目前 MySQL 已经成为市场上主流数据库之一,考虑到业务的重要性,MySQL 数据库单点问题已成为企业网站架构中最大的隐患。随着技术的发展,MHA 的出现就是解决 MySQL 单点的问题。另外随着企业数据量越来越庞大,数据库的压力又成为企业的另一个 瓶颈,MySQL 多主多从架构的出现可以减轻 MySQL 本身的压力。本章将主要介绍 MHA 的搭建和模拟 MySQL 故障自动切换的过程。

2024-03-15 15:59:58 874

原创 MySQL主从复制与读写分离

在实际的生产环境中,如果对数据库的读和写都在同一个数据库服务器中操作,无论是在安全性、高可用性还是高并发等各个方面都是完全不能满足实际需求的。因此,一般来说都是通过主从复制(Master-Slave)来同步数据,再通过读写分离来提升数据库并发负载能力的方案来进行部署与实施。如下图所示,一台主 MySQL 服务器带两台从 MySQL 服务器做数据复制,前端应用在进行数据库写操作时,对主服务器进行操作,在进行数据库读操作时,对两台从服务器进行操作,这样大量减轻了对主服务器的压力。MySQL主从复制与读写分离。

2024-03-12 09:41:42 1056

原创 MySQL高级SQL语句

对 MySQL 数据库的查询,除了基本的查询外,有时候需要对查询的结果集进行处理。例如只取 10 条数据、对查询结果进行排序或分组等等,这些内容就是接下来要讲解的知识。MySQL 数据库存储过程是一组为了完成特定功能的 SQL 语句的集合。存储过程这个功能是从 5.0 版本才开始支持的,它可以加快数据库的处理速度,增强数据库在实际应用中的灵活性。存储过程在使用过程中是将常用或者复杂的工作预先使用 SQL 语句写好并用一 个指定的名称存储起来,这个过程经编译和优化后存储在数据库服务器中。

2024-03-10 20:46:16 771

原创 MySQL备份与恢复

备份的主要目的是灾难恢复,备份还可以测试应用、回滚数据修改、查询历史数据、审计等。之前已经学习过如何安装 MySQL,本小节将从生产运维的角度了解备份恢复的分类与方法。1)增量备份的特点与完全备份不同,增量备份没有重复数据,备份量不大,时间短;但其恢复麻烦,需要上次完全备份及完全备份之后所有的增量备份才能恢复,而且要对所有增量备份进行逐个反推恢复。MySQL 没有提供直接的增量备份办法,可以通过 MySQL 提供的二进制日志(binary logs)间接实现增量备份。

2024-03-07 20:54:47 877

原创 MySQL索引、事务与存储引擎

当数据保存在磁盘类存储介质上时,它是作为数据块存放。这些数据块是被当作一个整体来访问的,这样可以保证操作的原子性。硬盘数据块存储结构类似于链表,都包含数据部 分,以及一个指向下一个节点(或数据块)的指针,不需要连续存储。记录集只能在某个关键字段上进行排序,所以如果需要在一个无序字段上进行搜索,就 要执行一个线性搜索(Linear Search)的过程,平均需要访问 N/2 的数据块,N 是表示所 占据的数据块数目。

2024-03-04 15:50:03 1059

原创 MySQL数据库管理

在 MySQL 数据库服务器中,用于访问数据库的各种用户(如 root)信息都保存在 mysql 数据库的 user 表中,管理员可以直接修改其中的数据记录来完成密码修改或权限赋予,但值得注意的是,应当尽量减少人工操作,避免由于操作失误导致数据库无法访问或连接不到 数据库等问题。实际工作中,通常会建立一些低权限的用户,只负 责一部分数据库、表的管理和维护操作,甚至可以对查询、修改、删除记录等各种操作做进 一步的细化限制,从而将数据库的风险降至最低。例如,执行以下操作可以创建一个名为 auth 的数据库。

2024-03-02 15:52:12 3926

原创 MySQL的二进制安装

MySQL 的安装方式除了常规的源码编译安装之外,最常用的还包括 YUM 方式安装和二进 制方式安装。二进制安装方式中,包括 rpm 版本以及 glibc 版本。rpm 版本就是在特定 Linux 版本下编译的,如果你的 Linux 版本匹配,就可以安装。如下载 CentOS7 系统所对应编译好 的 rpm 包安装即可。另外一种二进制安装包是基于特定的 glibc 版本编译的,这里主要讲解 基于 glibc 方式安装 MySQL。

2024-03-01 14:30:16 1143

原创 LVS-DR群集

LVS-DR(Linux Virtual Server Director Server)工作模式,是生产环境中最常用的一 种工作模式。

2024-01-15 11:16:02 1280

原创 LVS负载均衡群集

根据实际企业环境的不同,群集所提供的功能也各不相同,采用的技术细节也可能各有千秋。然而从整体上来看,需要先了解一些关于群集的共性特征,才能在构建和维护群集的工作中做到心中有数,避免操作上的盲目性。

2024-01-13 11:56:17 1104

原创 Tomcat简介及搭建

自从JSP发布之后,推出了各式各样的 JSP 引擎。Apache Group 在完成 GNUJSP1.0 的开发以后,开始考虑在 SUN 的 JSWDK 基础上开发一个可以直接提供 Web 服务的 JSP 服务器,当然同时也支持 Servlet, 这样 Tomcat 就诞生了。Tomcat 是 Apache 软件基金会(Apache Software Foundation)Jakarta 项目中的一 个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。

2024-01-12 11:59:26 1438

原创 LNMP架构及应用部署

本章主要介绍LNMP结构的搭建以及部署Web应用

2024-01-07 11:37:51 2680

原创 Nginx网站服务

本章详细介绍了Nginx网站服务

2024-01-06 11:17:15 1703

原创 Apache网页优化

本章主要介绍如何对Apache网页进行优化

2024-01-05 10:00:06 1046

原创 LAMP平台搭建

LAMP 架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和 相关软件,能够提供动态 Web 站点服务及其应用开发环境。LAMP 是一个缩写词,具 体包括 Linux 操作系统、Apache 网站服务器、MySQL 数据库服务器、PHP(或 Perl、 Python)网页编程语言。本章将以源码编译的方式搭建 LAMP 环境,能够满足企业定制化的需求。

2024-01-04 09:49:58 1481

原创 Apache的配置与应用

Apache HTTP Server是开源软件项目的杰出代表,基于标准的HTTP网络协议提供网页浏览服务,在Web服务器领域中长期保持着超过半数的份额。Apache服务器可以运行在Linux、UNIX、Windows等多种操作系统平台中。

2024-01-03 13:59:37 1580

原创 iptables防火墙(二)

随着 Internet 网络在全世界范围内的快速发展,IPv4 协议支持的可用 IP 地址资源逐渐变少,资源匮乏使得许多企业难以申请更多的公网 IP 地址,或者只能承受一个或者少数几个公网 IP 地址的费用。而与此同时,大部分企业面临着将局域网内的主机接入 Internet 的 需求。通过在网关中应用 SNAT 策略,可以解决局域网共享上网的问题。下面以一个小型的企业网络为例。

2023-12-29 11:25:26 1325

空空如也

空空如也

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

TA关注的人

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