摘要: Nginx 正在等待后端响应(upstream server),但客户端先断开了连接 场景: 后端接口响应慢,客户端等待超时主动断开 移动端网络波动,连接中断 用户在浏览器中发起请求,但页面加载太久或用户点击了“取消”按钮 解决: proxy_ignore_client_abort on; # 默认 阅读全文
posted @ 2025-05-27 10:39 不会跳舞的胖子 阅读(249) 评论(0) 推荐(0)
摘要: Ansible Vault 用于加密敏感信息,不是用来生成加密密码,它可以将一些敏感信息写入文件后,用密码加密此文件,当访问此文件时,需要传递密码。 1. 创建 Vault 加密文件 假设你想存储一个 Linux 用户密码: ansible-vault create secrets.yml 编辑文件 阅读全文
posted @ 2025-05-11 21:23 不会跳舞的胖子 阅读(103) 评论(0) 推荐(0)
摘要: 在某些场景下,在任务执行报错时,需要忽略错误而继续执行,但是ansible在遇到报错后,就会停止运行。 比如,在安装jdk时,需要检测jdk是否安装,如果没找到java命令,则进行安装,但是which java如果没找到命令,ansible直接抛出错误,停止运行。 在使用ignore_errors: 阅读全文
posted @ 2025-02-25 17:19 不会跳舞的胖子 阅读(45) 评论(0) 推荐(0)
摘要: 目录结构 [root@master-1 roles]# tree roles/es_cluster/ roles/es_cluster/ ├── defaults │ └── main.yml ├── files │ ├── elastic-certificates.p12 │ ├── elasti 阅读全文
posted @ 2025-02-25 15:57 不会跳舞的胖子 阅读(35) 评论(0) 推荐(0)
摘要: 集群规划 此role 模拟3台节点,每个节点运行两个redis,共计6节点。 仓库地址 github: 目录结构 创建redis_cluster roles ansible-galaxy init redis_cluster roles/redis_cluster/ ├── defaults │ └ 阅读全文
posted @ 2025-02-25 10:32 不会跳舞的胖子 阅读(36) 评论(0) 推荐(0)
摘要: 在 Ansible 中,register 用于 存储任务的输出结果,以便后续任务可以引用或使用这个结果。它是 Playbook 中的一个关键功能,特别适用于需要条件判断或依赖上一步执行结果的场景。 如何查看模块返回的字段信息 1. debug: var=变量名 直接查看 register 变量。 - 阅读全文
posted @ 2025-02-21 15:18 不会跳舞的胖子 阅读(86) 评论(0) 推荐(0)
摘要: 在 Ansible roles 目录结构中,tests/ 目录主要用于测试该角色是否可以正确运行,确保它能在不同环境中顺利执行。 tests/ 目录的内容 在你的 tests/ 目录下,有两个文件: inventory 这个文件通常定义了测试环境中的主机(类似 hosts 文件)。 [test_se 阅读全文
posted @ 2025-02-21 15:04 不会跳舞的胖子 阅读(45) 评论(0) 推荐(0)
摘要: Jinja2 在 Ansible 中的模板渲染功能非常强大,支持条件判断 (if)、循环 (for)、过滤器 (filters)、宏 (macros)、变量 (set)、以及包含 (include) 等流程控制机制。以下是更详细的介绍,并配有示例和参数解析。 1. 条件判断 (if 语句) Jinj 阅读全文
posted @ 2025-02-20 10:17 不会跳舞的胖子 阅读(95) 评论(0) 推荐(0)
摘要: systemd管理服务的目录:/usr/lib/systemd/system [root@node-2 ~]# cat /usr/lib/systemd/system/nginx.service [Unit] Description=Nginx Web Server After=network.ta 阅读全文
posted @ 2025-02-18 13:56 不会跳舞的胖子 阅读(71) 评论(0) 推荐(0)
摘要: loop介绍 在 Ansible 中,loop(循环)用于 批量执行任务,避免重复编写相同的任务代码,适用于 文件管理、用户管理、软件安装等 场景。 1. 循环创建用户 - name: 创建多个用户 ansible.builtin.user: name: "{{ item }}" state: pr 阅读全文
posted @ 2025-02-17 17:35 不会跳舞的胖子 阅读(199) 评论(0) 推荐(0)
摘要: Inventory(清单文件) 是 Ansible 用来定义和管理受控主机(被管节点)的配置文件。它告诉 Ansible 哪些服务器需要管理 以及 如何连接这些服务器。 1. Inventory 文件格式 Inventory 文件可以使用 INI 格式(常见)或 YAML 格式(更复杂,适用于动态 阅读全文
posted @ 2025-02-17 13:43 不会跳舞的胖子 阅读(115) 评论(0) 推荐(0)
摘要: Ansible 变量支持算术运算、字符串拼接、列表操作、条件判断等,主要通过 Jinja2 模板引擎处理。 1. 基本算术运算 Ansible 变量可以直接进行数值计算。 - hosts: localhost gather_facts: no vars: a: 10 b: 3 tasks: - de 阅读全文
posted @ 2025-02-17 13:34 不会跳舞的胖子 阅读(83) 评论(0) 推荐(1)
摘要: Ansible roles 是一种组织和管理 Ansible 任务的方式,提供了一种结构化的方法来编写可复用的自动化代码。它将 Playbook 里的各种元素(tasks、handlers、templates、files、vars 等)进行模块化拆分,使配置更加清晰、易维护和复用。 Ansible 阅读全文
posted @ 2025-02-11 15:11 不会跳舞的胖子 阅读(45) 评论(0) 推荐(0)
摘要: $# 用于计算用户传递给脚本或函数的参数总数 if [ $# -lt 5 ];then echo "usage $0 <aaa> <bbb> <ccc> <ddd> <eee>" exit fi ADM=$1 ADM_PW=$2 DIST_ID=$3 INPUT_FILE=$4 LOG_FILE=$ 阅读全文
posted @ 2025-02-07 17:46 不会跳舞的胖子 阅读(12) 评论(0) 推荐(0)
摘要: zk清单 apiVersion: v1 kind: ConfigMap metadata: name: zookeeper-config namespace: app data: zoo.cfg: | tickTime=5000 initLimit=10 syncLimit=5 dataDir=/d 阅读全文
posted @ 2024-12-27 09:46 不会跳舞的胖子 阅读(73) 评论(0) 推荐(0)