cpu满载排查
当你的 CPU 占用率达到 99% 或接近满载时,需要通过以下步骤进行分析,以找出根本原因并采取相应的措施。以下是详细的分析思路:
实时监控 CPU 占用首先,使用系统自带的监控工具,实时查看哪些进程或线程在消耗大量的 CPU 资源。常用工具:
Linux/Unix 系统:
top:实时显示所有进程的 CPU、内存占用。按 P 可以按 CPU 使用率排序。
htop:更为人性化的进阶工具,显示每个核心的使用情况,并提供更详细的进程信息。
iostat:可以显示 CPU 和 I/O 的使用情况,帮助识别是否是 I/O 密集型进程。
mpstat:查看多核 CPU 的负载情况,帮助确定 CPU 负载是否集中在某个核心。
Windows 系统:
任务管理器:按 Ctrl+Shift+Esc,可以查看进程的 CPU 使用情况,按 CPU 列排序,找到占用最多资源的进程。
资源监视器:提供更详细的 CPU 和线程信息。
MacOS:
Activity Monitor:类似任务管理器的工具,可以监控每个进程的 CPU 使用。示例:在 Linux 中,使用 top ...
linuxRAID
系统中的软 RAID 和硬 RAID 是两种不同的 RAID (Redundant Array of Independent Disks) 实现方式,用于提高数据存储的性能、冗余和可靠性。它们的主要区别在于 RAID 的管理方式、性能和硬件依赖性。
软 RAID (Software RAID)软 RAID 是通过操作系统的软件来实现 RAID 功能的,无需专用的硬件 RAID 控制器。
实现方式:软 RAID 依赖于操作系统的驱动程序和 CPU 来执行 RAID 逻辑。它通过软件层进行管理,常见的工具如 Linux 中的 mdadm 可以创建和管理软 RAID。
优点:
成本低:无需专门的 RAID 硬件,使用现有的硬盘和 CPU 资源即可实现 RAID 功能。
灵活性高:几乎所有类型的 RAID(如 RAID 0、RAID 1、RAID 5、RAID 10 等)都可以通过软件配置,且与硬件无关。
易于配置:可以通过操作系统命令轻松管理 RAID 阵列。
缺点:
性能较差:软 RAID 依赖系统的 CPU 来处理 RAID 操作,这会消耗一定的系统资源,特别是在高负载或复杂 RA ...
docker挂载本机目录
挂载主机目录挂载一个主机目录作为数据卷使用 --mount 标记可以指定挂载一个本地主机的目录到容器中去。
复制
12345$ docker run -d -P \ --name web \ # -v /src/webapp:/usr/share/nginx/html \ --mount type=bind,source=/src/webapp,target=/usr/share/nginx/html \ nginx:alpine
上面的命令加载主机的 /src/webapp 目录到容器的 /usr/share/nginx/html目录。这个功能在进行测试的时候十分方便,比如用户可以放置一些程序到本地目录中,来查看容器是否正常工作。本地目录的路径必须是绝对路径,以前使用 -v 参数时如果本地目录不存在 Docker 会自动为你创建一个文件夹,现在使用 --mount 参数时如果本地目录不存在,Docker 会报错。
Docker 挂载主机目录的默认权限是 读写,用户也可以通过增加 readonly 指定为 只读。
复制
12345$ docker run -d ...
docker数据卷
数据卷`数据卷是一个可供一个或多个容器使用的特殊目录,它绕过 UnionFS,可以提供很多有用的特性:
`数据卷可以在容器之间共享和重用
对数据卷的修改会立马生效
对数据卷的更新,不会影响镜像
`数据卷默认会一直存在,即使容器被删除
注意:`数据卷的使用,类似于 Linux 下对目录或文件进行 mount,镜像中的被指定为挂载点的目录中的文件会复制到数据卷中(仅数据卷为空时会复制)。
创建一个数据卷复制
1$ docker volume create my-vol
查看所有的 数据卷
复制
1234$ docker volume lsDRIVER VOLUME NAMElocal my-vol
在主机里使用以下命令可以查看指定数据卷的信息
复制
1234567891011$ docker volume inspect my-vol[ { "Driver": "local", "Labels&quo ...
docker仓库
私有仓库有时候使用 Docker Hub 这样的公共仓库可能不方便,用户可以创建一个本地仓库供私人使用。
本节介绍如何使用本地仓库。
docker-registry 是官方提供的工具,可以用于构建私有的镜像仓库。本文内容基于 docker-registry v2.x 版本。
安装运行 docker-registry容器运行你可以使用官方 registry 镜像来运行。
复制
1$ docker run -d -p 5000:5000 --restart=always --name registry registry
这将使用官方的 registry 镜像来启动私有仓库。默认情况下,仓库会被创建在容器的 /var/lib/registry 目录下。你可以通过 -v 参数来将镜像文件存放在本地的指定路径。例如下面的例子将上传的镜像放到本地的 /opt/data/registry 目录。
复制
1234$ docker run -d \ -p 5000:5000 \ -v /opt/data/registry:/var/lib/registry \ registry
在 ...
Keepalived:Nginx高可用的实现及抢占式与非抢占模式详解
Keepalived:Nginx高可用的实现及抢占式与非抢占模式详解1. 简介Keepalived 是一种用于实现高可用性的工具,通过提供虚拟 IP(VIP),允许两个或多个服务器共享同一个 IP 地址,当一台服务器故障时,另一台服务器可以立即接管,确保服务的持续可用性。
2. Keepalived 安装在 CentOS/RHEL 系统上,可以通过以下命令安装 Keepalived:
1sudo yum install keepalived -y
3. Keepalived抢占式配置3.1 Keepalived抢占式MASTER配置1234567891011121314151617181920212223vrrp_script chk_nginx { script "/usr/local/bin/check_nginx.sh" interval 2}vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 ...
Hello World
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
Quick StartCreate a new post1$ hexo new "My New Post"
More info: Writing
Run server1$ hexo server
More info: Server
Generate static files1$ hexo generate
More info: Generating
Deploy to remote sites1$ hexo deploy
More info: Deployment