Содержание
- Createdb error database creation failed error database zabbix already exists
- Описание ошибки установки Zabbix агента
- Как устранить ошибку
- My Blog
- Немного об ИТ и ИБ
- Свежие записи
- Свежие комментарии
- Архивы
- Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
- 24 комментария
- Ставлю zabbix на centos7 и накосячил с базой
Createdb error database creation failed error database zabbix already exists
Добрый день! Уважаемые читатели и гости одного из крупнейших IT блогов в рунете Pyatilistnik.org. В прошлый раз мы с вами разобрали процесс установки Windows 11 и посмотрели его базовую настройку. Идем далее и возвращаемся к обыденным, административным вещам, в сегодняшней статье я бы хотел с вами поделиться ситуацией, когда вы видите при попытке установить Zabbix агента вот такую ошибку «service already exists«. После чего ваш мастер установки закрывается и все.
Описание ошибки установки Zabbix агента
Появилась задача по созданию нового виртуального сервера, по ошибки я на него установил не того агента Zabbix, при попытке его переустановить я стал получать ошибку:
После чего мастер установки благополучно закрывался и больше ничего не происходило. Самое интересное, что сама предыдущая установка не виделась в списке установленных программ и папка по пути «C:Program FilesZabbix Agent» была пуста. Перезагрузка сервера не помогала. Если зайти в оснастку services.msc, то там служба Zabbix Agent присутствовала.
Но при попытке ее запустить выскакивало предупреждение:
Как устранить ошибку
Для того, чтобы устранить данную ошибку вам необходимо удалить службу Zabbix Agent из системы, для этого я воспользуюсь командлетами PowerShell. Откройте оснастку PowerShell 7 или какая у вас и введите команду:
Данная команда покажет точное имя службы и ее статус. Копируем из поля «Name» ее точное название, в моем примере это Zabbix Agent. Далее выполняем команду по удалению:
Источник
My Blog
Немного об ИТ и ИБ
Свежие записи
Свежие комментарии
- Denis к записи Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
- Denis к записи Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
- evgen к записи Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
- Denis к записи Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
- Denis к записи Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
Архивы
Zabbix 5.0 на Centos 8 с TimescaleDB и PostgreSQL
Отключаем или настраиваем SELinux в /etc/selinux/config, заодно можно сразу же настроить firewall-cmd на открытие нужных портов (http, https, 10051)
Установим TimescaleDB и PostgreSQL12
В автоматизированном режиме тюним PostgreSQL12. И в дальнейшем если будем менять ресурсы сервера, то нужно будет запускать заново tune, ну или в ручную редактировать конфиг.
Создаем пользователя в PSQL и базу zabbix
Добавим разрешение на подключение zabbix к psql, для этого добавим в файл /var/lib/pgsql/12/data/pg_hba.conf строку:
host zabbix zabbix 127.0.0.1/32 md5
Настроим nginx и php-fpm
В /etc/nginx/conf.d/ создадим файл для нашего сервера zabbix.conf. У меня примерно такой конфиг:
Настроен http и https (не забудьте положить сертификаты или сгенерировать), а так же настроен php-fpm через сокет (/etc/php-fpm.d/zabbix.conf)
В /etc/php-fpm.d/zabbix.conf раскомментим последнюю строку и впишем свой регион.
php_value[date.timezone] = Europe/Moscow
Установим Zabbix 5.0
В конфиг zabbix пропишем параметры для подключения к базе. В /etc/zabbix/zabbix_server.conf:
DBHost=127.0.0.1
DBName=zabbix
DBUser=zabbix
DBPassword=пароль
На этом всё, можно запускать и донастраивать через web интерфейс
Если возникли проблемы с базой, подключитесь под учеткой zabbix и проверьте, что всё ок:
Так же не забывайте про firewall и логи:
24 комментария
Ваша статья не подразумевает удаленное подключение к базе
находим postgresql.conf
Находим и редактируем следующее:
listen_addresses = ‘*’
И это логично, база и zabbix на одном сервере.
Открывать базу на удаленное подключение чревато утечками информации, поэтому если и открывать, то нужно и парольно нормально защитить и фаерволом ограничить хосты подключения.
Пароль на вход в zabbix
Admin
zabbix
Спасибо за пост! Тоже перехожу на Timescaledb, надоела такак же проблема!
я правильно пнимаю что при его использовании housekeeper можно не влючать?
И если его включить то он будет использовать надскройки Timescaledb для очистки а не свои скрипты=)
housekeeper всё равно работает, но по другому механизму, чистка происходит не записями, а блоками.
В настройках Zabbix можно задать период очистки.
доброго времени.
почему пошли ошибки в доступе ?
]# sudo -u postgres createuser —pwprompt zabbix
could not change directory to «/root»: Отказано в доступе
Enter password for new role:
Enter it again:
[[email protected]
]# sudo -u postgres createuser —pwprompt zabbix
could not change directory to «/root»: Отказано в доступе
Enter password for new role:
Enter it again:
createuser: error: creation of new role failed: ERROR: role «zabbix» already exists
[[email protected]
]# psql
psql: ошибка: FATAL: role «root» does not exist
[[email protected]
]# su postgres
bash-4.4$ sudo -u postgres createuser —pwprompt zabbix
postgres is not in the sudoers file. This incident will be reported.
bash-4.4$ exit
exit
[[email protected]
]# sudo -u postgres createuser —pwprompt zabbix
could not change directory to «/root»: Отказано в доступе
Enter password for new role:
Enter it again:
createuser: error: creation of new role failed: ERROR: role «zabbix» already exists
[[email protected]
]# sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
could not change directory to «/root»: Отказано в доступе
[[email protected]
]# sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
could not change directory to «/root»: Отказано в доступе
createdb: error: database creation failed: ERROR: database «zabbix» already exists
[[email protected]
]# -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
-bash: -u: команда не найдена
[[email protected]
]# sudo -u postgres createdb -O zabbix -E Unicode -T template0 zabbix
could not change directory to «/root»: Отказано в доступе
createdb: error: database creation failed: ERROR: database «zabbix» already exists
[[email protected]
]# zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u zabbix psql zabbix
gzip: /usr/share/doc/zabbix-server-pgsql/create.sql.gz: No such file or directory
sudo: неизвестный пользователь: zabbix
sudo: не удаётся инициализировать модуль политики
[[email protected]
]# su postgres
bash-4.4$ psql
could not change directory to «/root»: Отказано в доступе
psql (12.5)
Type «help» for help.
postgres=# showdatabases;
ERROR: syntax error at or near «showdatabases»
СТРОКА 1: showdatabases;
^
postgres=# show databases;
ERROR: unrecognized configuration parameter «databases»
postgres=# show database;
ERROR: unrecognized configuration parameter «database»
postgres=# q
bash-4.4$ exit
exit
[[email protected]
]# sudo -i -u postgres psql
psql (12.5)
Введите «help», чтобы получить справку.
postgres=# dt
postgres-# dt
Отношения не найдены.
postgres-# l
Список баз данных
Имя | Владелец | Кодировка | LC_COLLATE | LC_CTYPE | Права доступа
————+———-+————+————-+————-+————————
postgres | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
zabbix | zabbix | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
(4 строки)
Насколько я вижу базу и пользователя вы все таки создали.
Можно использовать такую конструкцию sudo -i -u postgres psql и все будет ок.
Ошибки с доступом к каталогу могут быть связаны с тем, что команда из этого каталога и запускалась. Как вариант можно было сделать cd /var и запустить еще раз команду.
Доброго времени суток. Заббикс сервер стартанул, но при установке через веб интерфейс пишет:
Cannot connect to the database.
Error connecting to database.
Пользователь для БД создан в конфиге заббикс сервера прописан. Postgresql слушает 80 порт.
В чем может быть причина?
Собственно нужно проверять настройки доступа к БД.
Возможно обратить внимание на настройки доступа тут /var/lib/pgsql/12/data/pg_hba.conf
Если база postgres почему подключение к mysql
tail -f /var/log/zabbix/zabbix_server.log
5327:20210227:185506.710 [Z3001] connection to database ‘zabbix’ failed: [2002] Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (2)
А так я ото всюду к базе цепляюсь
Эта статья не инструкция для новичка
система установленная с нуля идем по пунктам и упираемся в
zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u zabbix psql zabbix
gzip: /usr/share/doc/zabbix-server-pgsql/create.sql.gz: No such file or directory
sudo: неизвестный пользователь: zabbix
sudo: не удаётся инициализировать модуль политики
Там нет этого каталога
Спасибо за труды )))
psql -U zabbix -d zabbix -h 127.0.0.1
psql: ошибка: ВАЖНО: пользователь «zabbix» не прошёл проверку подлинности (Ident)
[[email protected] postgresql]#
Подскажите пож. пути решения. Команда:
echo «CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;» | sudo -u postgres psql zabbix
выдает ошибку:
ОШИБКА: для расширения «timescaledb» не определён путь установки или обновления для версии «2.1.0»
Скорее всего проблема с версиями. ОС Centos 8?
Да 8 все по вашей инструкции. чистая установка.
Давайте сравним версии:
# rpm -qa | grep -E ‘postgres|timescale’
timescaledb-2-loader-postgresql-12-2.1.0-0.el7.x86_64
timescaledb-postgresql-12-1.7.5-0.el7.x86_64
postgresql12-libs-12.6-1PGDG.rhel8.x86_64
postgresql12-server-12.6-1PGDG.rhel8.x86_64
postgresql12-12.6-1PGDG.rhel8.x86_64
———————
timescaledb-2-loader-postgresql-12-2.1.0-0.el7.x86_64
timescaledb-postgresql-12-1.7.5-0.el7.x86_64
timescaledb-tools-0.11.0-0.el7.x86_64
Да, у вас версии новее, скорее всего там что-то не совместимо. Вот рабочие версии пакетов:
timescaledb-tools-0.8.1-0.el7.x86_64
postgresql12-libs-12.3-1PGDG.rhel8.x86_64
postgresql12-server-12.3-1PGDG.rhel8.x86_64
timescaledb-postgresql-12-1.7.1-0.el7.x86_64
postgresql12-12.3-1PGDG.rhel8.x86_64
_____
Конкретные версии можно устанавливать так:
dnf —showduplicates list postgresql12-server — покажет все версии
А дальше конкретную версию ставишь
Ага интересно . C нуля cent8 установил накатил
rpm -Uvh https://repo.zabbix.com/zabbix/5.3/rhel/8/x86_64/zabbix-release-5.3-1.el8.noarch.rpm
dnf clean all
dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-agent
rpm -Uvh https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
dnf clean all
dnf -qy module disable postgresql
dnf -y install postgresql12 postgresql12-server
/usr/pgsql-12/bin/postgresql-12-setup initdb
systemctl enable —now postgresql-12
sudo -u postgres createuser —pwprompt zabbix
sudo -u postgres createdb -O zabbix zabbix
zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix ————————И тут ошибка путь есть а файла create.sql.gz нету !
я чисто эксперементирую поэтому меня не напрягает баги собирать )))
Не обломайтесь выложите чистое руководство с нуля cent8 по полочкам начиная с ngnx ,php
Я рад, что у вас есть много времени по нескольку раз в месяц пробовать устанавливать Zabbix. Если вы можете поделитесь с пользователями своей актуально инструкцией.
Я не пишу официальную документацию по установке каких-либо продуктов, все что написано тут это чисто мой опыт и если он кому-то еще пригодиться, то хорошо, нет, так нет.
Вот инструкция вдруг кому понадобится https://youtu.be/c2StvD19Jw8
Centos 8 + Zabbix 5.0 + Nginx + PostgreSQL12
Буду полезен ВСЕМ кто сталкнулся с такой проблемой .
zcat /usr/share/doc/zabbix-server-pgsql/create.sql.gz | sudo -u zabbix psql zabbix
gzip: /usr/share/doc/zabbix-server-pgsql/create.sql.gz: No such file or directory
Переодически возвращался к проблеме и если вдруг кому понадобиться решение есть !
У меня почему то при выполнении не было этого .
1:zabbix-release-5.2-1.el8 ################################# [100%]
Источник
Ставлю zabbix на centos7 и накосячил с базой
удалил ее просто руками из /var/lib/mysql/ ( пароль ввел не тот) базу создал заново, но таблицы не могу создать, что то пошло не так 🙂
Что делать? Где какие хвосты остались?
переустанови мускул же!
А сделать еще раз drop database(терять то уже нечего), а потом create database?
Информация об innodb-таблицах записывается ещё и в ibdata файл. Поэтому простое удаление каталога с базой не удаляет всю информацию о ней (никогда так не удаляйте).
Сейчас получилась поломанная ситуация. Исправить можно как вам уже написали — drop database, а потом заново create database.
А сделать еще раз drop database(терять то уже нечего), а потом create database?
Спасибо помогло, саму базу я не дропал, а только таблицу.
Информация об innodb-таблицах записывается ещё и в ibdata файл. Поэтому простое удаление каталога с базой не удаляет всю информацию о ней (никогда так не удаляйте).
Про это даже уже находил где то, но лазил лазил, так и не нашел где это вычистить.
Раньше у меня прокатывало, правда Федора старенькая у меня везде до centos7, видимо поменялось что то. Спасибо
Так допустимо было делать с MyISAM табличками. С InnoDB категорически нельзя.
Источник
Zabbix 6.2 + Nginx + PostgreSQL 14 + TimescaleDB
Zabbix — свободная система мониторинга и отслеживания статусов разнообразных сервисов компьютерной сети, серверов и сетевого оборудования, написанная Алексеем Владышевым. Для хранения данных используется MySQL, PostgreSQL, SQLite или Oracle Database, веб-интерфейс написан на PHP.
Подготовка
Обновляем ОС, устанавливаем софт
$ sudo apt update
$ sudo apt -y upgrade
$ sudo apt -y install nano curl bind9-utils telnet wget net-tools traceroute git tcpdump rsync open-vm-tools mlocate htop tar zip unzip cloud-guest-utils
$ sudo apt -y install gnupg2
Установка Nginx из репозитория
Добавляем ключ репозитория
$ wget --quiet -O - https://nginx.org/keys/nginx_signing.key | sudo apt-key add -
Добавляем репозиторий Nginx
$ sudo nano /etc/apt/sources.list.d/nginx.list
# NGINX repo
deb https://nginx.org/packages/mainline/debian/ bullseye nginx
deb-src https://nginx.org/packages/mainline/debian bullseye nginx
Устанавливаем Nginx
$ sudo apt update
$ sudo apt install -y nginx
Установка Postgresql 14 из репозитория
Добавляем репозиторий PostgreSQL
$ sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
Добавляем ключ репозитория
$ wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
Устанавливаем Postgresql 14
$ sudo apt update
$ sudo apt -y install postgresql-14
Установка Zabbix 6.2 из репозитория
Добавляем репозиторий
$ wget https://repo.zabbix.com/zabbix/6.2/debian/pool/main/z/zabbix-release/zabbix-release_6.2-1+debian11_all.deb
$ sudo dpkg -i zabbix-release_6.2-1+debian11_all.deb
Устанавливаем Zabbix для Nginx и Postgresql
$ sudo apt update
$ sudo apt -y install zabbix-server-pgsql zabbix-frontend-php php7.4-pgsql zabbix-nginx-conf zabbix-sql-scripts zabbix-agent2
Почему то в процессе установки обнаружил, что установился apache2, удаляем его
$ sudo apt -y remove apache2
$ sudo apt -y autoremove
Настройка Postgresql 14
Редактируем конфиг pg_hba.conf, включаем авторизацию по паролю для локальных соединений
...
#host all all 127.0.0.1/32 scram-sha-256
host all all 127.0.0.1/32 md5
# IPv6 local connections:
#host all all ::1/128 scram-sha-256
host all all ::1/128 md5
...
Перезапускаем сервис
$ sudo systemctl restart postgresql
Настройка PHP-FPM
Меняем Timezone
$ sudo nano /etc/zabbix/php-fpm.conf
...
php_value[date.timezone] = Europe/Moscow
Меняем права на файл zabbix.sock
$ sudo chmod 777 /run/php/zabbix.sock
Перезапускаем сервис
$ sudo systemctl restart php7.4-fpm
Настройка Nginx
Редактируем конфиг zabbix.conf
listen 80;
listen [::]:80;
server_name _;
# listen 8080;
# server_name example.com;
root /usr/share/zabbix;
index index.php;
client_max_body_size 100M;
...
Отключаем дефолтный конфиг
$ sudo mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.disabled
Перезапускаем сервис
$ sudo systemctl restart nginx
Настройка PostgreSQL для Zabbix
Создаем пользователя
$ sudo -u postgres createuser --pwprompt zabbix
Enter password for new role: mysuperpass
Создаем базу
$ sudo -u postgres createdb -O zabbix zabbix
Загружаем данные
$ zcat /usr/share/doc/zabbix-sql-scripts/postgresql/server.sql.gz | sudo -u zabbix psql zabbix
Правим конфиг zabbix_server.conf, добавляем пароль пользователя
$ sudo nano /etc/zabbix/zabbix_server.conf
...
DBPassword=mysuperpass
...
Перезапускаем сервисы, добавляем их в автозагрузку
$ sudo systemctl restart zabbix-server zabbix-agent2 nginx php7.4-fpm
$ sudo systemctl enable zabbix-server zabbix-agent2 nginx php7.4-fpm
Zabbix server установлен, заходим в web-интерфейс, завершаем установка
Default login: Admin
Default pass: zabbix
Установка TimescaleDB
Ставим софт
$ sudo apt -y install gnupg postgresql-common apt-transport-https lsb-release
Добавляем ключ репозитория
$ wget --quiet -O - https://packagecloud.io/timescale/timescaledb/gpgkey | sudo sh -c "gpg --dearmor > /etc/apt/trusted.gpg.d/timescaledb.gpg"
Добавляем репозиторий timescaledb
$ echo "deb https://packagecloud.io/timescale/timescaledb/debian/ $(lsb_release -c -s) main" | sudo tee /etc/apt/sources.list.d/timescaledb.list
Устанавливаем timescaledb
$ sudo apt update
$ sudo apt -y install timescaledb-2-postgresql-14
Тюним конфиг PostgreSQL
$ sudo timescaledb-tune --quiet --yes
Добавляем параметр shared_preload_libraries = ‘timescaledb’ в конфиг Postgresql
$ echo "shared_preload_libraries = 'timescaledb'" | sudo tee -a /etc/postgresql/14/main/postgresql.conf
Перезапускаем Postgresql
$ sudo systemctl restart postgresql
Добавляем расширение в базу
$ echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix
Скачиваем дистрибутив zabbix-6.2.1 и распаковываем его
$ wget https://cdn.zabbix.com/zabbix/sources/stable/6.2/zabbix-6.2.1.tar.gz
$ tar -zxvf zabbix-6.2.1.tar.gz
Добавляем данные в базу
$ cat zabbix-6.2.1/database/postgresql/timescaledb.sql | sudo -u zabbix psql zabbix
Что б zabbix server не ругался на версию TimescaleDB, добавляем в самом конце конфига zabbix_server.conf
$ sudo nano /etc/zabbix/zabbix_server.conf
...
AllowUnsupportedDBVersions=1
Иначе в логах zabbix server будет ошибка:
Unsupported DB! timescaledb version is 20702 which is higher than maximum of 20699
Recommended version should not be higher than TimescaleDB Community Edition 2.6.
Перезапускаем сервисы
$ sudo systemctl restart postgresql zabbix-server
Установка Zabbix Agent 2 на хостах
Добавляем репозиторий Zabbix
$ wget https://repo.zabbix.com/zabbix/6.2/debian/pool/main/z/zabbix-release/zabbix-release_6.2-1+debian11_all.deb
$ sudo dpkg -i zabbix-release_6.2-1+debian11_all.deb
Устанавливаем Zabbix Agent 2
$ sudo apt update
$ sudo apt -y install zabbix-agent2
Правим конфиг zabbix_agent2.conf
$ sudo nano /etc/zabbix/zabbix_agent2.conf
Перезапускаем сервис и добавляем его в автозагрузку
$ sudo systemctl restart zabbix-agent2
$ sudo systemctl enable zabbix-agent2
У блога появился хостинг, его любезно предоставила компания Облакотека. Облакотека — облачные сервисы для создания и управления виртуальной ИТ-инфраструктурой.
Если вам понравился мой блог и вы хотели бы видеть на нем еще больше полезных статей, большая просьба поддержать этот ресурс.
Если вы размещаете материалы этого сайта в своем блоге, соц. сетях, и т.д., убедительная просьба публиковать обратную ссылку на оригинал
ошибка при установке и настройке Zabbix
13
Посты
6
Пользователи
2
Likes
16.7 Тыс.
Просмотры
(@maxim)
New Member
Присоединился: 3 года назад
добрый день,
по статье «Установка и настройка Zabbix 4.0» по статье, столкнулся с проблемой проверки логов cat /var/log/zabbix/zabbix_server.log
получают ответ
1710:20190920:163530.988 *** Enabled features
1710:20190920:163530.988 SNMP monitoring: YES
1710:20190920:163530.988 IPMI monitoring: YES
1710:20190920:163530.988 Web monitoring: YES
1710:20190920:163530.988 VMware monitoring: YES
1710:20190920:163530.988 SMTP authentication: YES
1710:20190920:163530.988 Jabber notifications: YES
1710:20190920:163530.988 Ez Texting notifications: YES
1710:20190920:163530.988 ODBC: YES
1710:20190920:163530.988 SSH2 support: YES
1710:20190920:163530.988 IPv6 support: YES
1710:20190920:163530.989 TLS support: YES
1710:20190920:163530.989 ***************************
1710:20190920:163530.989 using configuration file: /etc/zabbix/zabbix_server.conf
1710:20190920:163530.994 cannot use database «zabbix»: its «users» table is empty (is this the Zabbix proxy database?)
помогите пожалуйста, бьюсь уже третий день, в centos я новичок
(@zerox)
Prominent Member
Присоединился: 9 лет назад
У вас, судя по всему, не создались таблицы в базе данных. В статье это выполняется командой:
zcat /usr/share/doc/zabbix-server-mysql/create.sql.gz | mysql -uzabbix -p zabbix
Убедитесь, что она корректно отработала.
(@zerox)
Prominent Member
Присоединился: 9 лет назад
Проверьте, что у вас реально в базе в таблице users.
# mysql -uzabbix -p zabbix
mysql> select * from users;
Должны увидеть двух пользователей — Admin и guest. Если это не так, значит база у вас либо не создана, либо создана с ошибками.
(@kmosk)
New Member
Присоединился: 3 года назад
Я так понял ошибка связана с новыми версиями MariaDB