Um script em Python para verificar o status de suas instâncias. Ele usa o protocolo SSH para acessar remotamente as máquinas e verificar se um serviço específico está em execução.
Pré-requisitos:
- Biblioteca paramiko: É usada para conectar-se via SSH.
- Biblioteca rocketry: É usada como schedule no script.
- Chaves SSH: Certifique-se de que a máquina principal tem acesso às suas instâncias por meio de chave SSH.
- Arquivo de Configuração: Crie um arquivo instances.json com a lista de instâncias.
- Certifique-se de que o arquivo instances.json está no mesmo diretório do script.
- Certifique-se que o arquivo mercado-topografico.pem está no mesmo diretório do script.
- Ative a venv (virtual environment) com o comando:
pipenv shell- Instale as bibliotecas necessárias com o comando:
pipenv install- Execute o script:
python check_instances.pyPara rodar em segundo plano:
nohup python check_instances.py &Para usar esse script dentro de um Docker container você precisa rodar os seguintes comandos:
- Para gerar o arquivo Pipfile.lock, já dentro da venv rode o comando:
pipenv installou
pipenv lock- Para criar a imagem docker:
sudo docker build -t check_instaces .- Para subir o container, garantindo que ele suba quando a máquina reiniciar:
sudo docker run -d --restart unless-stopped check_instacesResultado:
O script retornará o status de cada instância, indicando se o serviço especificado está ativo e notificará no Discord se houve algum erro ao se conectar.