![]() ![]() ![]()
Какой рейтинг вас больше интересует?
|
Главная /
Каталог блоговCтраница блогера Записки Oracle-ойда/Записи в блоге |
![]() |
Записки Oracle-ойда
Голосов: 1 Адрес блога: http://stan1slav.blogspot.com/ Добавлен: 2011-07-16 14:20:30 блограйдером stan1slav Принадлежит блограйдеру stan1slav |
Кластеризация Oracle BAM 11g
2012-04-01 09:13:00 (читать в оригинале)Описание: Описана кластеризация BAM 11g в конфигуции с двумя физическими машинами.
ПО: RHEL 5.5, Weblogic 10.3.5, Oracle BAM 11.1.1.5 + некоторые патчи.
Есть простой BAM-домен следующей конфигурации:
Weblogic сервера:
- AdminServer - порт 7001;
- bam_server1 - порт 9001.
- 192.168.2.130
- 192.168.2.96
Ньюанс: BAM Server является singleton-компонентом в Oracle BAM и может быть только один в Weblogic-домене. Его кластеризовать нельзя, обычно настраивается на него миграция сервера, а компоненты BAM Web кластеризуются как обычные Web-приложения.
Первоначальная конфигурация:


Последовательность шагов:
- Необходимо разрешить пользователю операционной системы под которым развернут Oracle BAM (в нашем случае - это weblogic) полномочия для запуска команд /sbin/ifconfig и /sbin/arping. Для этого пользователем root добавим в файл /etc/sudoers следующую строку (выделена красным):
......
## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
## user MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
weblogic ALL=NOPASSWD: /sbin/ifconfig,/sbin/arping
## Allows members of the 'sys' group to run networking, software,
## service management apps and more.
...... - Для обеспечения работоспособности необходим дополнительный "плавающий"/виртуальный IP-адрес из той же подсети, например: 192.168.2.139. После этого выполнить следующие команды на первой машине:
$ sudo /sbin/ifconfig eth0:1 192.168.2.139 netmask 255.255.252.0
$ sudo /sbin/arping -q -U -c 3 -I eth0 192.168.2.139 - Добавить в переменную PATH следующее (лучше на уровне профиля пользователя, если используется bash, то это файл ~/.bash_profile):
PATH=$PATH:$FW_HOME/wlserver_10.3/common/nodemanager:$FW_HOME/user_projects/domains/bam_domain/bin/server_migration:$FW_HOME/wlserver_10.3/common/bin
export PATH - Клонируем bam_server1 (переходим в "Environment"->"Servers", выбираем bam_server1 и нажимаем на кнопку "Clone"). Новый сервер:
- Server Name - bam_server2;
- Server Listen Address - 192.168.2.96;
- Server Listen Port - 9002.
- Создаем кластер:
- Name - BAM_Cluster;
- Messaging Mode - Unicast.
- Добавляем в данный кластер оба сервера - bam_server1 и bam_server2.
- На каждой физической машине (с т.з. операционной системы) сконфигурируем по Node Manager-у (подробнее здесь) и создадим две Weblogic-машины (Machines):
- Machine1 - 192.168.2.139;
- Machine2 - 192.168.2.96.
- Соотнесём Weblogic-сервера и Weblogic-машины следующий образом:
- bam_server1 - Machine1;
- bam_server2 - Machine2.
- Теперь соотнесём приложения и библиотеки с созданным нами кластером (BAM_Cluster), а не только с bam_server1:
- DMS Application (11.1.1.1.0)
- oracle-bam (11.1.1)
- usermessagingdriver-email
- usermessagingserver
- wsil-wls
- wsm-pm
- Соотнести приложение "oracle-bam (11.1.1)" следующим образом:
oracle-bam(11.1.1) BAM_Cluster /oracle/bam bam_server1 oracle-bam-adc-ejb.jar bam_server1 oracle-bam-ems-ejb.jar bam_server1 oracle-bam-eventengine-ejb.jar bam_server1 oracle-bam-reportcache-ejb.jar bam_server1 oracle-bam-statuslistener-ejb.jar bam_server1 OracleBAM BAM_Cluster OracleBAMWS BAM_Cluster sdpmessagingclient-ejb.jar bam_server1 - Так же соотнести следующие Data Source-ы с кластером BAM_Cluster:
- BAMDataSource;
- mds-owsm;
- OraSDPMDataSource.
- Соотнести следующие Startup and Shutdown Classes с BAM_Cluster:
- JOC-Shutdown
- JOC-Startup
- Создать новый Data Source для механизма контроля миграции (если потребуется, то создать отдельного пользователя в СУБД. Не использовать административных пользователей, таких как SYS и SYSTEM) и соотнесём его с кластером BAM_Cluster.
- Создадим необходимую служебную таблицу для механизма контроля миграции, для этого надо выполнить скрипт лежащий в $MW_HOME/wlserver_10.3/server/sb/<СУБД>/leasing.ddl.
- Перейти в "Services"->"Persistence Stores" и проверить какие типы Persistence Store-ов используются:
- Если FileStore, то обеспечить доступ к директориям со второго сервера, как правило для этого используется раздел дискового массива или кластерной файловой системы.
- Если JDBCStore, то соотнести используемый Data Source с кластером BAM_Cluster.
- Запустить bam_server1 и bam_server2.
- Зайти в Enterprise Manager (http://AdminServerHost:AdminServerPort/em) раскрыть меню BAM в нём должны быть три элемента:
- OracleBamServer(bam_server1);
- OracleBamWeb(bam_server1);
- OracleBamWeb(bam_server2).
- ServerName - IP-адрес или доменное имя BAM-сервера, в нашем случае это 192.168.2.130;
- ServerPort - порт на котором запущен BAM-сервер, в нашем случае это 9001;
- Перезапустить AdminServer.
- Необходимо донастроить Node Manager-ы на каждой физической машине, добавить опции для сетевых интерфейсов в файл nodemanager.properties:
где eth0 - имя сетевого интерфейса на котором будет поднят "плавающий"/виртульный IP-адрес.Interface=eth0
NetMask=255.255.255.0
UseMACBroadcast=true - Затем в Weblogic Console выбрать кластер BAM_Cluster и перейти в "Configuration"->"Migration" и заполнить поле "Data Source For Automatic Migration:", где выбрать созданный Data Source для механизма контроля миграции (см. пункт 13).
- Далее перейти в "Environment"->"Servers" выбрать bam_server1. Перейти в "Configuration"->"Migration" и поставить галку "Automatic Server Migration Enabled".
- Перезапустить сервера и протестировать миграцию.
Конфигурирование автоматической миграции JMS-серверов
2012-03-29 01:00:00 (читать в оригинале)Описание: WebLogic-кластере приложения и Data Source-ы могут быть распределены на всех узлах кластера, но есть несколько типов singleton-ресурсов, которые должны быть в единственном экземпляре в кластере:
- JMS-сервера и их destinations;
- JMS SAF-агенты;
- Persistance store;
- Менеджер транзакций и его логи;
- Созданные пользователем классы (должен быть имплементирован интерфейс weblogic.cluster.singleton.SingletonService).
- Миграция всего Managed-сервера;
- Миграция сервисов (т.е. данных singleton-ресурсов с одного Managed-сервера на другой в Weblogic-кластере).
В данной статье пойдёт речь об автоматической миграцией JMS-ресурсов в конфигурации из двух физических серверов (с точки зрения операционной системы).
Последовательность шагов:
- Создадим два Managed-сервера, например jms_server1 и jms_server2:
- Создадим кластер, например JMS_Cluster и добавим ранее созданные Managed-сервера:
- Создадим две Machine и соотнесём их с каждым Managed-сервером:
- Создадим Data Source для целей миграции, например MigrationDS:
- Создадим JDBC Persistence Store, например JDBCStore1:
- Создадим JMS-сервер, например JMSServer1:
- Создадим JMS-модель, например JMSModule1:
- Создадим в JMSModule1 новый Subdeployment, например JMSServer1Sub, и назначим его на JMSServer1:
- В JMSModule1 создадим Connection Factory и очередь, например JMSConnectionFactory и TestQueue соответственно, и соотвесём их с SubDeployment - JMSServer1Sub:
- Перейти в JMS_Cluster на страницу "Configuration"->"Migration" и выбрать тип механизма контроля миграции, в нашем случае будем использовать Database и выберем созданный (на шаге 4) Data Source - MigrationDS:
- Создадим необходимую служебную таблицу для механизма контроля миграции, для этого надо выполнить скрипт лежащий в $MW_HOME/wlserver_10.3/server/sb/<СУБД>/leasing.ddl.
- Затем перейти в "Environment"->"Migratable Targets" выбрать "jms_server1 (migratable)" и изменить Service Migration Policy, например:
- Аналогично для "jms_server2 (migratable)":
- Перезапустить AdminServer, а после этого запустить jms_server1 и jms_server2:
- Тестируем миграцию JMS-сервера. Например с помощью данного консольного клиента.
Простой консольный JMS-клиент для Weblogic Server
2012-03-28 01:00:00 (читать в оригинале)Возникла необходимость тестирования миграции JMS-очередей (queue-типа), для этого сделана утилита для:
- отправки текстовых сообщений в очередь;
- получения сообщений из очереди.
Как настроить соединение с сервером:
В jar-файле есть текстовый файл connection.properties - параметры соединения хранятся в нём.
Пример содержимого данного файла:
url=t3://192.168.2.130:7501,192.168.2.96:7502
user=weblogic
password=welcome1
queue=jms/Queue
connectionFactory=jms/JMSConnectionFactory
Как запустить:- Отправка сообщений в очередь, например:
где C:\Apps\Oracle\Weblogic\10.3.5\wlserver_10.3\server\lib\weblogic.jar - путь к weblogic.jar;java -classpath C:\Apps\SimpleClientForJMS.jar;C:\Apps\Oracle\Weblogic\10.3.5\wlserver_10.3\server\lib\weblogic.jar com.blogspot.stan1slav.jms.testing.SimpleJMSClient send 12
12 - какое кол-во сообщений отправить в очередь. - Забрать сообщения из очереди, например:
где 10 - сколько секунд ожидать получение новых сообщенийюjava -classpath C:\Apps\SimpleClientForJMS.jar;C:\Apps\Oracle\Weblogic\10.3.5\wlserver_10.3\server\lib\weblogic.jar com.blogspot.stan1slav.jms.testing.SimpleJMSClient receive 10
Ошибка "BEA-149265 java.lang.IllegalArgumentException: Cannot convert value of type" и вариант её решения
2012-03-27 21:04:00 (читать в оригинале)Ошибка:
После создания домена с SOA Suite (может быть и в других случаях) не стартует SOA-INFRA, а в логе серверы фигурирует ошибка:
...
WARNING: unable to read logging configuration from file '/u01/WLS/user_projects/domains/jms_domain/config/fmwconfig/servers/soa_server1/logging.xml'; exception: oracle.core.ojdl.logging.LoggingConfigurationException: ODL-52049: cannot create instance of class 'oracle.dfw.incident.IncidentDetectionLogFilter': java.lang.ExceptionInInitializerError
oracle.core.ojdl.logging.LoggingConfigurationException: ODL-52049: cannot create instance of class 'oracle.dfw.incident.IncidentDetectionLogFilter': java.lang.ExceptionInInitializerError
at oracle.core.ojdl.logging.impl.LoggingConfigurationImpl.getInstance(LoggingConfigurationImpl.java:651)
at oracle.core.ojdl.logging.impl.LoggingConfigurationImpl.access$000(LoggingConfigurationImpl.java:104)
...
<Mar 26, 2012 3:46:31 PM MSD> <Critical> <WebLogicServer> <BEA-000286> <Failed to invoke startup class "DMS-Startup", java.lang.NoClassDefFoundError: oracle/dfw/impl/common/TempFileManager
java.lang.NoClassDefFoundError: oracle/dfw/impl/common/TempFileManager
at oracle.dfw.spi.portable.PortableDiagnosticsFrameworkProvider.init(PortableDiagnosticsFrameworkProvider.java:120)
...
WARNING: Error during preRegister for MBean oracle.dfw:name=Streamer,type=oracle.dfw.jmx.Streaming
java.lang.RuntimeException: java.lang.NoClassDefFoundError: oracle/dfw/impl/common/TempFileManager
at oracle.as.jmx.framework.generic.spi.interceptors.LoggingMBeanInterceptor.internalPreRegister(LoggingMBeanInterceptor.java:663)
...
Mar 26, 2012 3:46:33 PM oracle.as.jmx.framework.LoggerHelper log
WARNING: Error initializing MBean "oracle.dfw:name=Streamer,type=oracle.dfw.jmx.Streaming", declared in file "/u01/WLS/user_projects/domains/jms_domain/config/fmwconfig/servers/soa_server1/mbeans/dfw_mbeans.xml".
javax.management.RuntimeMBeanException: RuntimeException thrown in preRegister method
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.preRegisterInvoke(DefaultMBeanServerInterceptor.java:1012)
...
Mar 26, 2012 3:46:33 PM oracle.as.jmx.framework.LoggerHelper log
WARNING: Error during preRegister for MBean oracle.dfw:name=DiagnosticsConfig,type=oracle.dfw.jmx.DiagnosticsConfigMBean
java.lang.RuntimeException: java.lang.NoClassDefFoundError: oracle/dfw/impl/common/TempFileManager
at oracle.as.jmx.framework.generic.spi.interceptors.LoggingMBeanInterceptor.internalPreRegister(LoggingMBeanInterceptor.java:663)
...
...
WARNING: Error during postRegister for MBean oracle.adf.share.config:ApplicationName=soa-infra,name=ADFConfig,type=ADFConfig,Application=soa-infra
java.lang.RuntimeException: java.lang.NoClassDefFoundError: oracle/dfw/impl/common/TempFileManager
at oracle.as.jmx.framework.generic.spi.interceptors.LoggingMBeanInterceptor.internalPostRegister(LoggingMBeanInterceptor.java:703)
...
SEVERE: Failed to register config mbean for soa-infra.
SEVERE:
javax.management.RuntimeMBeanException: RuntimeException thrown in postRegister method
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.postRegisterInvoke(DefaultMBeanServerInterceptor.java:1037)
...
Caused by: java.lang.NoClassDefFoundError: oracle/dfw/impl/common/TempFileManager
at oracle.dfw.spi.portable.PortableDiagnosticsFrameworkProvider.init(PortableDiagnosticsFrameworkProvider.java:120)
...
Причина:
Во временных директориях закончилось свободное место или нет привелений.
Вариант решения:
- Остановить все Managed-серверы и Admin-сервер.
- Очистить временные директории и дать права записи:
$ cd /var/tmp/
$ rm -rf ora*
$ chmod 777 /var/tmp/
$ cd /tmp
$ rm -rf *
$ chmod 777 /tmp - Запустить все Managed-серверы и Admin-сервер.
Настройка NFS на Linux
2012-03-26 19:45:00 (читать в оригинале)- Залогиниться на сервер NFS (в нашем случае 192.168.2.95).
- Добавляем в файл /etc/exports на сервере:
где 192.168.2.96 - ip-адрес или доменное имя клиента;/u02/data 192.168.2.96(rw,no_root_squash)
/u02/data - директория на сервере. - Перезапустить сервер NFS:
$ /etc/init.d/nfs restart
..................................................................
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS daemon: [ OK ]
Starting NFS mountd: [ OK ] - Залогиниться на клиент NFS (в нашем случае 192.168.2.96).
- Необходимо подмонтировать данный ресурс в директорию:
где 192.168.2.95 - адрес сервера;$ mount 192.168.2.95:/u02/data /share
/u02/data - расшаренная директория на сервере;
/share - директория на клиенте. - Если нужно чтобы сетевая папка монтировалась автоматически при старте системы, тогда добавляем в файл /etc/fstab:
192.168.2.95:/u02/data /share nfs timeo=50,hard,intr
- В случае невозможности подмонтирования сетевого ресурса необходимо разрешить доступ к портам (111, 2049) настройкой firewall (лучше) или выполнить следующую команду (хуже) на сервере:
Или отключить полность:$ service iptables stop
$ chkconfig iptables off



Категория «Телевидение»
Взлеты Топ 5
![]() | ||
+127 |
129 |
Simple_Blogger |
+104 |
122 |
Фрагменты |
+28 |
126 |
Снимаем видео на фото и DSLR камеры |
+5 |
6 |
Борис Немцов |
+2 |
47 |
Доска объявлений |
Падения Топ 5
![]() | ||
-3 |
2 |
dmitrydibrov |
-7 |
5 |
Любер |
-13 |
24 |
Программа Грядка с Андреем Тумановым |
-17 |
3 |
Я В БЛОГЕ |
-36 |
4 |
Форум satwarez |

Популярные за сутки
Загрузка...

BlogRider.ru не имеет отношения к публикуемым в записях блогов материалам. Все записи
взяты из открытых общедоступных источников и являются собственностью их авторов.
взяты из открытых общедоступных источников и являются собственностью их авторов.