Have an ElasticSearch cluster

This commit is contained in:
Alex 2022-02-26 20:14:55 +01:00
parent 8064d91dfb
commit bd2abf3449
Signed by untrusted user: lx
GPG key ID: 0E496D15096376BE
3 changed files with 65 additions and 34 deletions

View file

@ -0,0 +1,61 @@
job "telemetry-system" {
datacenters = ["neptune"]
type = "system"
group "elasticsearch" {
network {
port "elastic" {
static = 9200
}
port "elastic_internal" {
static = 9300
}
}
task "elastic" {
driver = "docker"
config {
image = "docker.elastic.co/elasticsearch/elasticsearch:7.17.0"
network_mode = "host"
volumes = [
"/mnt/ssd/telemetry/es_data:/usr/share/elasticsearch/data",
]
ports = [ "elastic", "elastic_internal" ]
sysctl = {
#"vm.max_map_count" = "262144",
}
ulimit = {
memlock = "9223372036854775807:9223372036854775807",
}
}
resources {
memory = 2500
cpu = 500
}
template {
data = <<EOH
node.name={{ env "attr.unique.hostname" }}
http.port=9200
transport.port=9300
cluster.name=es-deuxfleurs
cluster.initial_master_nodes=caribou,cariacou,carcajou
discovery.seed_hosts=carcajou,caribou,cariacou
bootstrap.memory_lock=true
xpack.security.enabled=true
xpack.security.authc.api_key.enabled=true
xpack.security.transport.ssl.enabled=true
xpack.security.transport.ssl.verification_mode=certificate
xpack.security.transport.ssl.client_authentication=required
xpack.security.transport.ssl.keystore.path=/usr/share/elasticsearch/data/elastic-certificates.p12
xpack.security.transport.ssl.truststore.path=/usr/share/elasticsearch/data/elastic-certificates.p12
ES_JAVA_OPTS=-Xms512M -Xmx512M
EOH
destination = "secrets/env"
env = true
}
}
}
}

View file

@ -15,9 +15,6 @@ job "telemetry" {
port "otel_grpc" { port "otel_grpc" {
static = 4317 static = 4317
} }
port "elastic" {
static = 9200
}
port "kibana" { port "kibana" {
static = 5601 static = 5601
} }
@ -54,37 +51,6 @@ job "telemetry" {
} }
} }
task "elastic" {
driver = "docker"
config {
image = "docker.elastic.co/elasticsearch/elasticsearch:7.17.0"
network_mode = "host"
volumes = [
"/mnt/ssd/telemetry/es_data:/usr/share/elasticsearch/data",
]
ports = [ "elastic" ]
}
resources {
memory = 2500
cpu = 500
}
template {
data = <<EOH
node.name=elastic
http.port=9200
cluster.name=es-docker-cluster
discovery.type=single-node
bootstrap.memory_lock=true
xpack.security.enabled=true
ES_JAVA_OPTS=-Xms512m -Xmx512m
EOH
destination = "secrets/env"
env = true
}
}
task "kibana" { task "kibana" {
driver = "docker" driver = "docker"
config { config {

View file

@ -34,6 +34,10 @@
keyMap = "fr"; keyMap = "fr";
}; };
boot.kernel.sysctl = {
"vm.max_map_count" = 262144;
};
# List packages installed in system profile. To search, run: # List packages installed in system profile. To search, run:
# $ nix search wget # $ nix search wget
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [