Я установил Hyperic Server 4.4.0 и хочу использовать подключаемый модуль SQL, который подключается к базе данных Oracle. Чтобы эта работа работала с агентом, мне пришлось загрузить драйвер JDBC для Oracle и вставить его в [agent-dir]/bundles/[bundle-dir]/pdk/lib
. Теперь я могу запустить свой плагин на агенте, используя java -jar hq-products.jar ...
.
Теперь я хочу добавить его, чтобы он отображался на сервере. Я помещаю плагин в соответствующий каталог и могу добавить его в качестве службы платформы. Однако, когда я пытаюсь настроить плагин, я получаю следующую ошибку:
Не найдено подходящего драйвера для jdbc: oracle: thin: @ blah.blah: blah: blah
Это та же ошибка, которую я получил на клиенте до того, как добавил драйвер Oracle JDBC, поэтому я предполагаю, что проблема здесь тоже. Но где мне разместить драйверы JDBC на сервере?
Оказывается, неисправен агент, а не сервер. Похоже, что серверу вообще не нужен драйвер JDBC, что имеет смысл.
Как уже упоминалось, я поставил драйвер на агента в [agent-dir]/bundles/[bundle-dir]/pdk/lib
, но вместо этого его нужно было поместить в [agent-dir]/bundles/[bundle-dir]/pdk/lib/jdbc
. Причина, по которой это работало при запуске только на агенте, вероятно, заключалась в том, что я добавил `в определение плагина. Переместив драйвер в правильное место, я теперь могу его удалить.
Итак, подведем итог, драйвер Oracle JDBC нужен только на агенте, и он должен существовать здесь:
[agent-dir]/bundles/[bundle-dir]/pdk/lib/jdbc
Вы можете использовать CLASSPATH
переменная env или -cp
Настройка командной строки java. В вашем окружении сделайте что-нибудь вроде:
export CLASSPATH=.:/usr/local/jdbc_drivers/*
и поместите драйверы JDBC в этот каталог.