diff --git a/playbook.yml b/playbook.yml index a2af622..6559fc6 100644 --- a/playbook.yml +++ b/playbook.yml @@ -2,10 +2,6 @@ - name: Deploy Monitoring on general_server hosts: general_server become: yes - vars_files: - - group_vars/all/vars.yml - - group_vars/all/vault.yml - tasks: - name: Создание системного юзера ansible.builtin.user: @@ -69,10 +65,6 @@ - name: Deploy Exporter on other servers hosts: all become: yes - vars_files: - - group_vars/all/vars.yml - - group_vars/all/vault.yml - tasks: - name: Создание системного юзера ansible.builtin.user: @@ -80,12 +72,6 @@ state: present shell: /usr/sbin/nologin - - name: Установить понятное имя хоста с индексом - ansible.builtin.hostname: - name: "node-{{ ansible_play_hosts.index(inventory_hostname) }}" - when: ansible_play_hosts.index(inventory_hostname) > 0 - notify: restart node-exporter - - name: Создать директории для проекта ansible.builtin.file: path: "{{ monitoring_dir }}" diff --git a/terraform-infra/main.tf b/terraform-infra/main.tf index 59158bb..5df60d1 100644 --- a/terraform-infra/main.tf +++ b/terraform-infra/main.tf @@ -14,21 +14,21 @@ resource "yandex_vpc_subnet" "main_subnet" { } resource "yandex_compute_instance" "server" { - count = 5 + count = var.instance_count name = "server_${count.index + 1}" platform_id = "standard-v3" zone = "ru-central1-a" resources { - cores = 2 - memory = 2 + cores = var.cores + memory = var.memory } boot_disk { initialize_params { image_id = data.yandex_compute_image.ubuntu.id - size = 15 + size = var.size } } @@ -38,7 +38,12 @@ resource "yandex_compute_instance" "server" { } metadata = { - ssh-keys = "ubuntu:${file("~/.ssh/ssh-key-1789658954721.pub")}" + ssh-keys = "ubuntu:${file(pathexpand(var.key))}" + user-data = <<-EOF + #!/bin/bash + echo "PasswordAuthentication no" > /etc/ssh/sshd_config.d/01-disable-pw.conf + systemctl reload ssh + EOF } } @@ -46,3 +51,4 @@ output "public_ips" { description = "Публичные IP адреса созданных серверов" value = yandex_compute_instance.server[*].network_interface.0.nat_ip_address } + diff --git a/terraform-infra/variables.tf b/terraform-infra/variables.tf new file mode 100644 index 0000000..28f32db --- /dev/null +++ b/terraform-infra/variables.tf @@ -0,0 +1,25 @@ +variable "instance_count" { + type = number + description = "Количество инстансов" + default = 5 +} + +variable "cores" { + type = number + default = 2 +} + +variable "memory" { + type = number + default = 2 +} + +variable "size" { + type = number + default = 20 +} + +variable "key" { + type = string + default = "~/.ssh/ssh-key-1789658954721.pub" +}