среда, 17 апреля 2024 г.

Postgresql cluster patroni

разворачиваем кластер с помощью ansible

https://github.com/vitabaks/postgresql_cluster?tab=readme-ov-file


ставим dbeaver

https://pq.hosting/help/instructions/407-ustanovka-dbeaver-v-ubuntu-2204.html


ставим jmeter

https://www.how2shout.com/linux/2-ways-to-install-apache-jmeter-on-ubuntu-22-04-lts-linux/

вторник, 16 апреля 2024 г.

Ansible установка, настройка SSH

Для установки Ansible (ubuntu) есть несколько способов:

1)  С помощью "apt"

sudo apt update

sudo apt upgrade -y

sudo apt install ansible

Но вероятнее всего установится устаревшая версия, 2.10.хх ,

("ansible --version")

которая не поддерживает современные playbook

для поднятия версии до актуальной:

sudo add-apt-repository --yes --update ppa:ansible/ansible

sudo apt install ansible

если версия не поднимется или ansible вообще пропадет, то можно воспользоваться:

apt --fix-broken install

и уточнить версию:

"ansible --version"

https://www.cherryservers.com/blog/install-ansible-ubuntu

2) С помощью pip

Установим pip:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

python3 get-pip.py --user

проверим наличие: python3 -m pip -V

Установим ansible:

python3 -m pip install --user ansible

( при необходимости, минимальная версия:

python3 -m pip install --user ansible-core

или конкретная версия:

python3 -m pip install --user ansible-core==2.12.3 )

Обновление через pip (не проверял):

python3 -m pip install --upgrade --user ansible

этот и другие способы: https://docs.ansible.com/ansible/latest/installation_guide/intro_installation.html



Для того чтобы ansible мог подключаться к хостам (на которых он будем изменять что-то)

необходимо настроить вход по ключу (без пароля) есть несколько способов:


1) создаем (linux) пару ключей (pub and priv, pass-фразу не вводим, просто "enter")

ssh-keygen -f ~/.ssh/id_rsa  (можно отдельное название использовать для ключа вместо id_rsa )

ssh-copy-id -i ~/.ssh/id_rsa.pub user-ansbl@192.168.58.58 

#(192.168.58.58 машина которой будем управлять, в ней , в файле $HOME/.ssh/authorized_keys, должно появиться что-то типа: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAICc/6Mhk0/y....)

в inventory file можно добавить: 

all:

  vars:

    ansible_user: ta

  hosts:

    ta-lxlt:

      ansible_host: 192.168.58.58

      ansible_ssh_private_key_file: ~/.ssh/id_rsa


или запусить ssh-agent:

ssh-agent $SHELL

ssh-add ~/.ssh/id_rsa


после чего проверить:

ssh user-ansbl@192.168.58.58

должно открыться ssh сессия на удаленную машину без ввода пароля.


https://dev.to/rimelek/ansible-playbook-and-ssh-keys-33bo

проверяем:

ansible all -m ping

можно приватный ключ указать и через параметр:

ansible -playbook ХХХХХХ.yaml --private-key ~/.ssh/id_rsa


2) использовать сгенерированные в putty ключи:

в putty key generator создаем ключи типа:  ssh-ed25519, сохраняем оба ключа (приватный).

(в окошке же сразу видно и публичный ключ, при необходимости можно его скоприровать)

если разворачиваем виртуалку в клауде, то при создании ВМ есть возможность сразу вставить (если реализован cloud-init у провайдера)  публичный ключ из окошка "putty key generator" (если ранее загружен/сгенерирован приватный ключ)

Затем выбираем пункт "Conversion" и Export OpenSSH key, сохраняем в файле (без пароля)

(в файле будет что-то типа -----BEGIN OPENSSH PRIVATE KEY-----) 

именно из этого файла необходимо будет скопировать содержимое и вставить ~/.ssh/id_rsa на машинке с ansible.

выставить права:

chmod 600 /root/.ssh/id_rsa

Если же подключаться с рабочей машинки с Putty, то надо прикрепить приватный ключ .ppk к ssh-сессии.