mgmt/nomad-configs/nodes/onecloud1.hcl

184 lines
3.5 KiB
HCL
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

datacenter = "dc1"
data_dir = "/opt/nomad/data"
plugin_dir = "/opt/nomad/plugins"
log_level = "INFO"
name = "onecloud1"
bind_addr = "onecloud1.tailnet-68f9.ts.net"
addresses {
http = "onecloud1.tailnet-68f9.ts.net"
rpc = "onecloud1.tailnet-68f9.ts.net"
serf = "onecloud1.tailnet-68f9.ts.net"
}
advertise {
http = "onecloud1.tailnet-68f9.ts.net:4646"
rpc = "onecloud1.tailnet-68f9.ts.net:4647"
serf = "onecloud1.tailnet-68f9.ts.net:4648"
}
ports {
http = 4646
rpc = 4647
serf = 4648
}
server {
enabled = true
bootstrap_expect = 3
server_join {
retry_join = [
"semaphore.tailnet-68f9.ts.net:4648",
"ash1d.tailnet-68f9.ts.net:4648",
"ash2e.tailnet-68f9.ts.net:4648",
"ch2.tailnet-68f9.ts.net:4648",
"ch3.tailnet-68f9.ts.net:4648",
"onecloud1.tailnet-68f9.ts.net:4648",
"de.tailnet-68f9.ts.net:4648",
"hcp1.tailnet-68f9.ts.net:4648"
]
}
}
client {
enabled = true
servers = [
"ch2.tailnet-68f9.ts.net:4647",
"ash3c.tailnet-68f9.ts.net:4647",
"onecloud1.tailnet-68f9.ts.net:4647",
"de.tailnet-68f9.ts.net:4647"
]
# 配置host volumes
host_volume "fnsync" {
path = "/mnt/fnsync"
read_only = false
}
host_volume "vault-storage" {
path = "/opt/nomad/data/vault-storage"
read_only = false
}
# 禁用Docker驱动只使用Podman
options {
"driver.raw_exec.enable" = "1"
"driver.exec.enable" = "1"
}
# 配置节点元数据
meta {
consul = "true"
consul_version = "1.21.5"
consul_server = "true"
}
# 激进的垃圾清理策略
gc_interval = "5m"
gc_disk_usage_threshold = 80
gc_inode_usage_threshold = 70
gc_max_allocs = 50
# 网络配置
network_interface = "tailscale0"
# 资源限制
cpu_total_compute = 4000
memory_total_mb = 8192
# 任务限制
max_kill_timeout = "30s"
# 日志配置
logging {
level = "INFO"
format = "json"
enable_syslog = true
syslog_facility = "LOCAL0"
}
# 插件配置
plugin_dir = "/opt/nomad/plugins"
# 状态同步
state_dir = "/opt/nomad/data/client"
alloc_dir = "/opt/nomad/data/alloc"
# 任务驱动配置
task_drivers = ["exec", "raw_exec"]
# 网络指纹
network_interface = "tailscale0"
# 存储配置
disk_free_threshold = "10%"
disk_usage_threshold = "90%"
# 任务限制
max_kill_timeout = "30s"
# 健康检查
health_check_grace_period = "30s"
# 任务重启策略
restart_policy {
interval = "5m"
attempts = 3
delay = "15s"
mode = "fail"
}
# 任务清理
cleanup_interval = "5m"
# 任务监控
enable_monitoring = true
# 任务日志
log_config {
enabled = true
max_file_size = "10MB"
max_files = 10
}
# 任务资源
resource_limits {
cpu_total_compute = 4000
memory_total_mb = 8192
}
# 任务网络
network_config {
interface = "tailscale0"
port_range = "20000-30000"
}
# 任务存储
storage_config {
disk_free_threshold = "10%"
disk_usage_threshold = "90%"
}
# 任务安全
security_config {
enable_tls = false
verify_server_hostname = false
}
# 任务调试
debug_config {
enabled = false
log_level = "INFO"
}
}
consul {
address = "ch4.tailnet-68f9.ts.net:8500,ash3c.tailnet-68f9.ts.net:8500,warden.tailnet-68f9.ts.net:8500"
server_service_name = "nomad"
client_service_name = "nomad-client"
auto_advertise = true
server_auto_join = true
client_auto_join = true
}