пятница, 1 июля 2011 г.

Старт Admin и Managed-серверов с использованием Node Manager и WLST

Допущение: Node Manager сконфигурирован. Конфигурирование Node Manager описана здесь
  1. Запускаем Node Manager:
     $  nohup $MIDDLEWARE_HOME/wlserver_10.3/server/bin/startNodeManager.sh &  
    
  2. Открыть консоль и выполнить:
     $  $MIDDLEWARE_HOME/wlserver_10.3/common/bin/wlst.sh  
    
  3. Приконнектиться к Node Manager с помощью nmConnect(). Например:
     wls:/offline> nmConnect('weblogic','welcome1','localhost','5556','soa_domain')
    
    где weblogic - имя администратора WebLogic Server;
        welcome1 - пароль администратора WebLogic Server;
        localhost - имя хоста на котором запущен NodeManager;
        5556 - порт хоста на котором запущен NodeManager;
        soa_domain - имя домена.
  4. Стартовать AdminServer с помощью nmStart(). Например:
     wls:/nm/soa_domain> nmStart('AdminServer')  
    
  5. Стартовать ManagedServer с помощью nmStart(). Например SOA Server:
     wls:/nm/soa_domain> nmStart('soa_server1')  
    
  6. Выйти из консоли.
     wls:/nm/soa_domain> exit()  
    

четверг, 30 июня 2011 г.

Расшифровка пароля пользователя Apps в Oracle e-Business Suite R12.1.1

Допущения:
1. Пароль пользователя apps не известен.
2. Есть доступ к dbTier пользователем с привилегиями SYSDBA или DBA.


Последовательность шагов:
1. Сменить пароль пользователя apps на любой другой.
2. Залогиниться пользователем apps и выполнить следующее:
 CREATE OR REPLACE PACKAGE get_pwd AS   
 FUNCTION decrypt ( KEY IN VARCHAR2,VALUE IN VARCHAR2  
 )  
 RETURN VARCHAR2;  
 END get_pwd;  
 /  
 CREATE OR REPLACE PACKAGE BODY get_pwd AS  
 FUNCTION decrypt (KEY IN VARCHAR2,VALUE IN VARCHAR2  
 )  
 RETURN VARCHAR2  
 AS LANGUAGE JAVA  
 NAME 'oracle.apps.fnd.security.WebSessionManagerProc.decrypt  
 (java.lang.String,java.lang.String) return java.lang.String';  
 END get_pwd;  
 /  
3. Далее выполнить(пользователем apps):
 SELECT (SELECT get_pwd.decrypt(FND_WEB_SEC.GET_GUEST_USERNAME_PWD,   
 usertable.encrypted_foundation_password)FROM DUAL) AS apps_password  
 FROM fnd_user usertable  
 WHERE usertable.user_name = 
   (SELECT substr(FND_WEB_SEC.GET_GUEST_USERNAME_PWD,  
     1,instr(FND_WEB_SEC.GET_GUEST_USERNAME_PWD,'/')-1) from dual)  
4. Сменить пароль пользователя apps на результат выполнения запроса ш.3.

Ошибка "javax.net.ssl.SSLKeyException: BAD_CERTIFICATE alert was receive" и вариант её решения

  1. Проинициализировать переменные:
     $ $MIDDLEWARE_HOME/server/bin/setWLSEnv.sh 
    
  2. Выполнить следующую команду (изменить значение имени сервера - выделено красным):
     $ java utils.CertGen -cn server.domain.ru -keyfilepass DemoIdentityPassPhrase 
                          -certfile mycert -keyfile mykey
  3. Выполнить следующую команду:
     $ java utils.ImportPrivateKey -keystore DemoIdentity.jks 
                         -storepass DemoIdentityKeyStorePassPhrase 
                         -keyfile mykey.pem -keyfilepass DemoIdentityPassPhrase 
                         -certfile mycert.pem -alias demoidentity
    
  4. Сделать резервную копию следующего файла:
     $ cp $MIDDLEWARE_HOME/server/lib/DemoIdentity.jks 
          $MIDDLEWARE_HOME/server/lib/DemoIdentity.jks.bkp
    
  5. Заменить существующий файл на сгенерированный:
     $ cp DemoIdentity.jks $MIDDLEWARE_HOME/server/lib/DemoIdentity.jks
    
  6. Перезапустить все сервера и Node Manager

четверг, 23 июня 2011 г.

Конфигурирование Node Manager

  1. Перейти в директорию:
     $ cd $MIDDLEWARE_HOME/common/nodemanager  
    
  2. Если файл nodemanager не создан, то создать его или запустить Node Manager и файл будет сгенерирован автоматически, а затем изменить/проверить выделенные красным параметры:
    DomainsFile=/u01/ofm/wlserver_10.3/common/nodemanager/nodemanager.domains
    LogLimit=0
    PropertiesVersion=10.3
    DomainsDirRemoteSharingEnabled=false
    javaHome=/u01/jdk1.6.0_30
    AuthenticationEnabled=true
    NodeManagerHome=/u01/ofm/wlserver_10.3/common/nodemanager
    JavaHome=/u01/jdk1.6.0_30/jre
    LogLevel=INFO
    DomainsFileEnabled=true
    StartScriptName=startWebLogic.sh
    ListenAddress=
    NativeVersionEnabled=true
    ListenPort=5777
    LogToStderr=true
    SecureListener=true
    LogCount=1
    DomainRegistrationEnabled=false
    StopScriptEnabled=false
    QuitEnabled=false
    LogAppend=true
    StateCheckInterval=500
    CrashRecoveryEnabled=false
    StartScriptEnabled=true
    LogFile=/u01/ofm/wlserver_10.3/common/nodemanager/nodemanager.log
    LogFormatter=weblogic.nodemanager.server.LogFormatter
    ListenBacklog=50 
    
  3. Проверить, что в файле доменов Node Manager (имя файла - nodemanager.domains) прописаны все домены, например:
    soa_domain=/u01/user_projects/domains/soa_domain
    ucm_domain=/u01/user_projects/domains/ucm_domain
    
  4. Запустить Node Manager, например так:
     $ cd $MIDDLEWARE_HOME/server/bin
     $ nohup ./startNodeManager.sh &
    
    Или с помощью утилиты screen:
     $ cd $MIDDLEWARE_HOME/server/bin
     $ screen -S nodeManager -t nodeManager ./startNodeManager.sh
    

Если возникла ошибка вида "javax.net.ssl.SSLKeyException: BAD_CERTIFICATE alert was received", то вариант её решения описан здесь.

пятница, 22 апреля 2011 г.

Изменение настроек JVM для домена Weblogic

Описание: Linux и Weblogic 10.3.4.
  • Старт серверов без использования NodeManager.:
    1. Залогиниться на сервер.
    2. Для смены JVM (JRockit млм HotSpot) выставить значание переменной JAVA_VENDOR:
      $ JAVA_VENDOR=Oracle #Для JRockit  
      $ JAVA_VENDOR=Sun    #Для HotSpot  
      $ export JAVA_VENDOR  
      
    3. Выставить желаемое значение через переменную USER_MEM_ARGS, например:
      $ USER_MEM_ARGS='-Xms1024m -Xmx1024m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m'  
      $ export USER_MEM_ARGS  
      
    4. Стартовать AdminServer или ManagedServer. Если JVM-параметры доменов отличаются, то рекомендую создать отдельные стартовые скрипты для каждого из ManagedServer-ов и AdminServer-а, например startAdminServer.sh:
       #!/bin/sh  
       USER_MEM_ARGS='-Xms1024m -Xmx1024m -XX:CompileThreshold=8000 -XX:PermSize=128m -XX:MaxPermSize=512m'  
       export USER_MEM_ARGS  
       JAVA_VENDOR=Sun  
       export JAVA_VENDOR
       #Start AdminServer    
       ./startWebLogic.sh  
      
  • Старт серверов с использованием NodeManager и через Weblogic Administration Console:
    1. Залогиниться в Weblogic Administration Console.
    2. Перейти в конфигурацию сервера (Имя_домена->Environment->Servers->Имя_сервера).
    3. Перейти во вкладку Configuration->Server Start.
    4. Заполнить поля Arguments и Java Vendor.