# CSOL Consul 静态节点配置说明

## 概述

本目录包含CSOL（Cloud Service Operations Layer）的Consul静态节点配置文件。这些配置文件定义了Consul集群的服务器和客户端节点信息，便于团队成员快速了解和使用Consul集群。

## 配置文件说明

### 1. csol-consul-nodes.ini
这是主要的Consul节点配置文件，包含所有服务器和客户端节点的详细信息。

**文件结构：**
- `[consul_servers]` - Consul服务器节点（7个节点）
- `[consul_clients]` - Consul客户端节点（2个节点）
- `[consul_cluster:children]` - 集群所有节点的组合
- `[consul_servers:vars]` - 服务器节点的通用配置
- `[consul_clients:vars]` - 客户端节点的通用配置
- `[consul_cluster:vars]` - 整个集群的通用配置

**使用方法：**
```bash
# 使用此配置文件运行Ansible Playbook
ansible-playbook -i csol-consul-nodes.ini your-playbook.yml
```

### 2. csol-consul-nodes.json
这是JSON格式的Consul节点配置文件，便于程序读取和处理。

**文件结构：**
- `servers` - 服务器节点列表
- `clients` - 客户端节点列表
- `configuration` - 集群配置信息
- `notes` - 节点统计和备注信息

**使用方法：**
```bash
# 使用jq工具查询JSON文件
jq '.csol_consul_nodes.servers.nodes[].name' csol-consul-nodes.json

# 使用Python脚本处理JSON文件
python3 -c "import json; data=json.load(open('csol-consul-nodes.json')); print(data['csol_consul_nodes']['servers']['nodes'])"
```

### 3. consul-nodes.ini
这是更新的Consul节点配置文件，替代了原有的旧版本。

### 4. consul-cluster.ini
这是Consul集群服务器节点的配置文件，主要用于集群部署和管理。

## 节点列表

### 服务器节点（7个）

| 节点名称 | IP地址 | 区域 | 角色 |
|---------|--------|------|------|
| ch2 | 100.90.159.68 | Oracle Cloud KR | 服务器 |
| ch3 | 100.86.141.112 | Oracle Cloud KR | 服务器 |
| ash1d | 100.81.26.3 | Oracle Cloud US | 服务器 |
| ash2e | 100.103.147.94 | Oracle Cloud US | 服务器 |
| onecloud1 | 100.98.209.50 | Armbian | 服务器 |
| de | 100.120.225.29 | Armbian | 服务器 |
| bj-semaphore | 100.116.158.95 | Semaphore | 服务器 |

### 客户端节点（2个）

| 节点名称 | IP地址 | 端口 | 区域 | 角色 |
|---------|--------|------|------|------|
| master | 100.117.106.136 | 60022 | Oracle Cloud A1 | 客户端 |
| ash3c | 100.116.80.94 | - | Oracle Cloud A1 | 客户端 |

## 配置参数

### 通用配置
- `consul_version`: 1.21.5
- `datacenter`: dc1
- `encrypt_key`: 1EvGItLOB8nuHnSA0o+rO0zXzLeJl+U+Jfvuw0+H848=
- `client_addr`: 0.0.0.0
- `data_dir`: /opt/consul/data
- `config_dir`: /etc/consul.d
- `log_level`: INFO
- `port`: 8500

### 服务器特定配置
- `consul_server`: true
- `bootstrap_expect`: 7
- `ui_config`: true

### 客户端特定配置
- `consul_server`: false

## 注意事项

1. **退役节点**：hcs节点已于2025-09-27退役，不再包含在配置中。
2. **故障节点**：syd节点为故障节点，已隔离，不包含在配置中。
3. **端口配置**：master节点使用60022端口，其他节点使用默认SSH端口。
4. **认证信息**：所有节点使用统一的认证信息（用户名：ben，密码：3131）。
5. **bootstrap_expect**：设置为7，表示期望有7个服务器节点形成集群。

## 更新日志

- 2025-06-17：初始版本，包含完整的CSOL Consul节点配置。

## 维护说明

1. 添加新节点时，请同时更新所有配置文件。
2. 节点退役或故障时，请及时从配置中移除并更新说明。
3. 定期验证节点可达性和配置正确性。
4. 更新配置后，请同步更新此README文件。