Админизм

блого-заметки об администрировании и программировании (python, ruby, php). Траблшутинг в «примерах» и HOWTO.

😎 О себе | 📚 Литература и ресурсы | ⚡ Все посты | 📮 E-mail

KVM virtualization: Открыть порт с гостевой ОС

Данные правила необходимы для проброса в мир определенного порта с гостевой машины. Зачем? У каждого свои потребности связанные с архитектурой сервиса.


iptables -t nat -I PREROUTING -p tcp -d $EXTERNAL_IP --dport $PORT -j DNAT --to-destination $GUEST_VM_IP:$PORT
iptables -I FORWARD -m state -d $GUEST_VM_IP/24 --state NEW,RELATED,ESTABLISHED -j ACCEPT 


где:

$EXTERNAL_IP — внешний IP
$GUEST_VM_IP — локальный IP гостевой машины
$PORT — порт, который нужно пробросить в интернет

RabbitMQ: ERROR epmd error for host

RabbitMQ: ERROR: epmd error for host
Для исправления данной ошибки, проверяем содержимое файла /etc/hosts
FQDN имя должно соответсвовать назначенному IP или 127.0.0.1

Пример:


user@rmq1:~$ cat /etc/hosts
127.0.0.1	localhost rmq1

# The following lines are desirable for IPv6 capable hosts
::1     localhost ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters


Если такого соответсвия не будет, сервис не будет стартовать.

ERROR: database «database» is being accessed by other users

ERROR:  database "database" is being accessed by other users

При удалении БД в PostgreSQL, если открыто соединение — будем получать следующую ошибку:


postgres=# drop database database;
ERROR:  database "database" is being accessed by other users
DETAIL:  There is 1 other session using the database.


Чтобы удалить БД завершаем соединение (вариант попробовать перезапустить сервер, если можно, да и у меня даже после этого БД не отпустило) с помощью запроса ниже от суперпользователя и дропаем БД


SELECT 
    pg_terminate_backend(pid) 
FROM 
    pg_stat_activity 
WHERE 
    -- don't kill my own connection!
    pid <> pg_backend_pid()
    -- don't kill the connections to other databases
    AND datname = 'database_name'
    ;


где database_name имя БД

Шаги обновления PHP 7.1 на PHP 7.2 Ubuntu 16.04 LTS

Замкетка о порядке поочередности выполнения шагов

Устанавливаем необходимые пакеты:


sudo apt-get install php7.2 php7.2-cli php7.2-common
sudo apt-get install php7.2-curl php7.2-gd php7.2-json php7.2-mbstring php7.2-intl php7.2-mysql php7.2-xml php7.2-zip


Отключаем старую версию php


sudo a2dismod php7.1 ; sudo a2enmod php7.2


Изменяем бинарник (в списке выбираем номер с 7.2)


sudo update-alternatives --config php


Перезапускаем веб-сервер


service apache2 restart


Сбросить локальный кеш DNS в Ubuntu 16.04 / 18.04 LTS

Сбросить локальный кеш DNS в Ubuntu 16.04 / 18.04 LTS

Для сброса кеша откроем терминал с помощью команды CTRL+ALT+T и далее выполним следующую команду:


sudo systemd-resolve --flush-caches


Также можно посмотреть статистику с помощью следующей команды


sudo systemd-resolve --statistics


Elasticsearch 7 & Kibana 7: изменения

Elasticsearch 7
discovery.type: single-node
узел выберет себя ведущим и не присоединится к кластеру

Kibana:

elasticsearch.url -> elasticsearch.hosts

Ранее Ctrl + ↓