Menu

8 Ocak 2013 Salı

Phyton ile NodeManager, Admin Server ve Managed Serverleri baslatma

        Merhaba, cok uzun bir baslik oldu sanirim :), evet konu basligindanda anlasildigi gibi, phyton scripti kullanarak, NodeManager`imizi start edip, daha sonra NodeManager baglanip, Admin ve Managed Servlerimizi start edecegiz.

Bu islem icin bize iki tane dosya gerekmektedir. 

  • domain.properties
  • ve scriptimizin oldugu NodeManager_AdminServer_Start.py diger dosyamiz
domain.properties dosyamizin icerigi
username=weblogic
password=wadmin12
host=localhost
nm.port=5556
domain.name=lab_domain
domain.dir=/u01/app/oracle/Middleware/user_projects/domains/lab_domain
nm.type=ssl
admin.server.name=AdminServer
managed.server.name=j2eeServer

NodeManager_AdminServer_Start.py dosyamizin icerigi

#############################################################################

#
# Bu dosyada python kodlari bulunmaktadir.
# Daha onceki bolumde gordugumu NodeManager`imizi bu seferde
# bu script ile calistiracagiz.
#
#############################################################################
from java.io import FileInputStream
import java.lang
import os
import string
print '.....NodeManager, Admin Server ve Managed Server baslatiliyor....'
propInputStream = FileInputStream("/media/DATA/Programming/domain.properties")
configProps = Properties()
configProps.load(propInputStream)
print '.................... Properties dosyasi yuklendi.................'
kullaniciAdi = configProps.get("username")
parola = configProps.get("password")
host = configProps.get("host")
nmPort = configProps.get("nm.port")
domainAdi = configProps.get("domain.name")
domainDir = configProps.get("domain.dir")
nmType = configProps.get("nm.type")
startNodeManager()
print ''
print '============================================='
print '...NodeManager baslatildi...!!!'
print '============================================='
print ''
nmConnect(kullaniciAdi,parola,host,nmPort,domainAdi,domainDir,nmType)
print ''
print '============================================='
print '...NodeManager ile baglanti kuruldu ...'
print '============================================='
print ''
print '...Admin Server Baslatilacak ...'
adminServerName = configProps.get("admin.server.name")
print '###### serverName = ', adminServerName
nmStart(adminServerName)
adminServerName = configProps.get("admin.server.name")
print ''
print '============================================='
print '===>  ', adminServerName, ' server baslatildi <==='
print '============================================='
print '' 
print '...Managed Server baslatilacak ...'
managedServerName = configProps.get("managed.server.name")
print '###### managedServerName = ', managedServerName
nmStart(managedServerName)
managedServerName = configProps.get("managed.server.name")
print ''
print '============================================='
print '===>  ', managedServerName, ' server baslatildi <==='
print '============================================='
print '' 

Simdi Scriptimizi calistiyoruz..
[ertugrula@easlan ]$./wlst.sh /media/DATA/Programming/NodeManager_AdminServer_Start.py 
CLASSPATH=/u01/app/oracle/Middleware/patch_wls1211/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/u01/app/oracle/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/usr/java/jdk1.7.0_07/lib/tools.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic_sp.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar:/u01/app/oracle/Middleware/modules/features/weblogic.server.modules_12.1.1.0.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/webservices.jar:/u01/app/oracle/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/u01/app/oracle/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar::/u01/app/oracle/Middleware/utils/config/10.3/config-launch.jar::/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbynet.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbyclient.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbytools.jar::

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

.....NodeManager, Admin Server ve Managed Server baslatiliyor....
.................... Properties dosyasi yuklendi.................
Launching NodeManager ... 
 Properties: {} 
 Command: /usr/java/jdk1.7.0_07/jre/bin/java -classpath /usr/java/jdk1.7.0_07/jre/lib/rt.jar:/usr/java/jdk1.7.0_07/jre/lib/i18n.jar:/u01/app/oracle/Middleware/patch_wls1211/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/u01/app/oracle/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/usr/java/jdk1.7.0_07/lib/tools.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic_sp.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar:/u01/app/oracle/Middleware/modules/features/weblogic.server.modules_12.1.1.0.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/webservices.jar:/u01/app/oracle/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/u01/app/oracle/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar:/u01/app/oracle/Middleware/utils/config/10.3/config-launch.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbynet.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbyclient.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbytools.jar weblogic.NodeManager -v
NMProcess:
NMProcess: Jan 08, 2013 8:58:57 PM weblogic.nodemanager.server.NMServerConfig initDomainsMap
NMProcess: INFO: Loading domains file: /u01/app/oracle/Middleware/wlserver_12.1/common/bin/nodemanager.domains
NMProcess:
NMProcess: Jan 08, 2013 8:58:58 PM weblogic.nodemanager.server.SSLConfig loadKeyStoreConfig
NMProcess: INFO: Loading identity key store: FileName=/u01/app/oracle/Middleware/wlserver_12.1/server/lib/DemoIdentity.jks, Type=jks, PassPhraseUsed=true
NMProcess:
NMProcess: Jan 08, 2013 8:58:58 PM weblogic.nodemanager.server.NMServer
NMProcess: INFO: Loaded node manager configuration properties from '/u01/app/oracle/Middleware/wlserver_12.1/common/bin/nodemanager.properties'
NMProcess: Node manager v10.3
NMProcess: 
NMProcess: Configuration settings:
NMProcess: 
NMProcess: NodeManagerHome=/u01/app/oracle/Middleware/wlserver_12.1/common/bin
NMProcess: ListenAddress=
NMProcess: ListenPort=5556
NMProcess: ListenBacklog=50
NMProcess: SecureListener=true
NMProcess: AuthenticationEnabled=true
NMProcess: NativeVersionEnabled=true
NMProcess: CrashRecoveryEnabled=false
NMProcess: JavaHome=/usr/java/jdk1.7.0_07/jre
NMProcess: StartScriptEnabled=true
NMProcess: StopScriptEnabled=false
NMProcess: StartScriptName=startWebLogic.sh
NMProcess: StopScriptName=
NMProcess: LogFile=/u01/app/oracle/Middleware/wlserver_12.1/common/bin/nodemanager.log
NMProcess: LogLevel=INFO
NMProcess: LogLimit=0
NMProcess: LogCount=1
NMProcess: LogAppend=true
NMProcess: LogToStderr=true
NMProcess: LogFormatter=weblogic.nodemanager.server.LogFormatter
NMProcess: DomainsFile=/u01/app/oracle/Middleware/wlserver_12.1/common/bin/nodemanager.domains
NMProcess: DomainsFileEnabled=true
NMProcess: StateCheckInterval=500
NMProcess: QuitEnabled=true
NMProcess: UseMACBroadcast=false
NMProcess: DomainRegistrationEnabled=false
NMProcess: DomainsDirRemoteSharingEnabled=false
NMProcess: 
NMProcess: Domain name mappings:
NMProcess: 
NMProcess: lab_domain -> /u01/app/oracle/Middleware/user_projects/domains/lab_domain
NMProcess: 
NMProcess: configuration properties loaded from "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/portalServer/data/nodemanager/startup.properties">
NMProcess: Jan 08, 2013 8:58:58 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Startup configuration properties loaded from "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/portalServer/data/nodemanager/startup.properties"
NMProcess:
NMProcess: Jan 08, 2013 8:58:58 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Startup configuration properties loaded from "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/j2eeServer/data/nodemanager/startup.properties"
NMProcess:
NMProcess: Jan 08, 2013 8:58:59 PM weblogic.nodemanager.server.SSLListener run
NMProcess: INFO: Secure socket listener started on port 5556
Successfully launched the Node Manager.
The Node Manager process is running independent of the WLST process.
Exiting WLST will not stop the Node Manager process. Please refer 
to the Node Manager logs for more information.
The Node Manager logs will be under /u01/app/oracle/Middleware/wlserver_12.1/common/bin/.
Node Manager starting in the background

=============================================
...NodeManager baslatildi...!!!
=============================================

Connecting to Node Manager ...
 
 
Successfully Connected to Node Manager.
=============================================
...NodeManager ile baglanti kuruldu ...
=============================================
###### serverName =  AdminServer
Starting server AdminServer ...
NMProcess:
NMProcess: Jan 08, 2013 8:59:08 PM weblogic.nodemanager.server.LogFileRotationUtil log
NMProcess: INFO: Rotated server output log to "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/AdminServer/logs/AdminServer.out00006"
NMProcess:
NMProcess: Jan 08, 2013 8:59:08 PM weblogic.nodemanager.server.LogFileRotationUtil log
NMProcess: INFO: Server error log also redirected to server log
NMProcess:
NMProcess: Jan 08, 2013 8:59:08 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Starting WebLogic server with command line: /u01/app/oracle/Middleware/user_projects/domains/lab_domain/bin/startWebLogic.sh 
NMProcess:
NMProcess: Jan 08, 2013 8:59:08 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Working directory is '/u01/app/oracle/Middleware/user_projects/domains/lab_domain'
NMProcess:
NMProcess: Jan 08, 2013 8:59:08 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Server output log file is '/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/AdminServer/logs/AdminServer.out'
Successfully started server AdminServer ...
=============================================
===>   AdminServer  server baslatildi <===
=============================================
###### managedServerName =  j2eeServer
Starting server j2eeServer ...
NMProcess:
NMProcess: Jan 08, 2013 8:59:39 PM weblogic.nodemanager.server.LogFileRotationUtil log
NMProcess: INFO: Rotated server output log to "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/j2eeServer/logs/j2eeServer.out00008"
NMProcess:
NMProcess: Jan 08, 2013 8:59:39 PM weblogic.nodemanager.server.LogFileRotationUtil log
NMProcess: INFO: Server error log also redirected to server log
NMProcess:
NMProcess: Jan 08, 2013 8:59:39 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Starting WebLogic server with command line: /u01/app/oracle/Middleware/user_projects/domains/lab_domain/bin/startWebLogic.sh 
NMProcess:
NMProcess: Jan 08, 2013 8:59:39 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Working directory is '/u01/app/oracle/Middleware/user_projects/domains/lab_domain'
NMProcess:
NMProcess: Jan 08, 2013 8:59:39 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Server output log file is '/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/j2eeServer/logs/j2eeServer.out'
Successfully started server j2eeServer ...
=============================================
===>   j2eeServer  server baslatildi <===
=============================================
[ertugrula@easlan bin]$ 

Bir sonraki makalemizde, managed Serverlarimiza, bir .war dosyasi deploy edip, biri kapandiginda digeri ile nasil baglanacagimizi gorecegiz.

Weblogic Node Manager

    Merhaba, bu makalemizde weblogic yazi dizimizin devami olan Node Manager nedir, nasil kurulur ve nasil kullanilir bunu goruyor olacagiz.
  
1.  Node Manager nedir. 
    Once sunu belirmeliyim ki, Node Manager weblogic serveri urun(production) ortaminda zorunlu degildir. Yani Node manager olmadan,  weblogic server`inizi, admin server, managed server ve cluster`larinizi yonetebilirsiniz. Peki, Node Manager olmadan, biz bunlari yapabiliyorsak Node Manager`a neden ihtiyac duyuyoruz.? diye bir soru akillara gelecektir. 
Bunu ornekle aciklayalim.
  Dusunun ki, Weblogic Serverimiz ve bunun icinde birden fazla domain ve machine`lar var ve bunlarda ayri ayri lokasyonlarda, bu durumda bunlari idare etmemiz, bu domainle iliskili olan Admin Server ve Managed Servleri nasil start, stop ve monitor etmek zor bir durum olacaktir. Iste bu noktada Node Manager aklimiza geliyor. Hatirlayalim, Node Manager, fiziksel makine uzerinde calisan bir processdir. Bize uzakdan Admin server, Managed Server`larimizi start, stop ve monitor etmemize yarar. 
  Node Manager, spesifik bir domain ile iliskili degildir, fiziksel bir makine ile iliskilidir. Ve machine logical bir yapidir.

Yukaridaki sekilde WLST kullanarak Node Manager`a baglandikdan sonra Serverlarin yonetilmesini gosterir

2. Node Manager nasil kurulur.
 Node Manager, iki sekilde kullanilabilir. Java-based ve Script based.
 Guvenlik acisindan Node Manager`i java-based olarak kullanmak script based`dan daha guvenlidir. Bu makalemizde, daha anlasilir olmasi acisindan script tabanli olacaktir.
 a. Oncelikle Admin console acarak, Environmets -> Machines -> bolumunden machine yoksa, yeni bir nachine olusturup, bu machine uzerinde node manager olustururak servlerimizi yonetecez.


 Save diyerek, Node Manager`imizi olusturuyoruz.

3. Nasil Kullanilir.
  Yukarida Node Manager`in ne oldugundan bahsettikden, daha sonra, nasil olusturulacagini gorduk, simdide nasil kullanicagimizi ve Admin ve managed serverlerimizi nasil start, stop ve monitor edecegimizi gorecegiz.
- Ortam degiskenlerimizi set ediyoruz.
    /u01/app/oracle/Middleware/wlserver_12.1/bin/setWLSEnv.cmd    
- WLST baslatiyoruz.
java weblogic.WLST
-   Node Manager`i baslatiyoruz.
startNodeManager(verbose='true', NodeManagerHome='/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/', ListenPort='5556', ListenAddress='localhost')
- Node Manager`a baglaniyoruz.
nmConnect('weblogic','wadmin12','localhost','5556','lab_domain','/u01/app/oracle/Middleware/user_projects/domains/lab_domain/','ssl') 
- Admin server eklenmesi icin, boot.properties dosyasini ekliyoruz.

/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/AdminServer/security/ 
   boot.properties
   
Bu dosyayi, /u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/AdminServer/security/
altindan kopyalayip ekleyebiliriz.

- connect('weblogic','wadmin12','t3://localhost:7001')
- Admin Server`i start etmek icin,
nmStart('AdminServer')
-  Admin Server statusunu ogrenmek icin
nmServerStatus('AdminServer')
- Admin Server`i durdurmak icin
nmKill('AdminServer')
- Managed serverlarida ayni Admin Server gibi start, stop edebiliriz.
 nmStart('j2eeServer')
 nmStart('portalServer')
 nmKill('j2eeServer')
- Node Manager`i start ve stop etmek icin
startNodeManager()
stopNodeManager() 
 - Admin consol uzerinde, machine inactive veya unreachable olarak gorunurse, asagidakini eklememiz gerekmektedir.  
   nmEnroll('/u01/app/oracle/Middleware/user_projects/domains/lab_domain/','/u01/app/oracle/Middleware/wlserver_12.1/common/')

Ornek bir demo yaparsak;


[ertugrula@easlan ~]$ cd /u01/app/oracle/Middleware/wlserver_12.1/common/bin/
[ertugrula@easlan bin]$ ./wlst.sh 
CLASSPATH=/u01/app/oracle/Middleware/patch_wls1211/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/u01/app/oracle/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/usr/java/jdk1.7.0_07/lib/tools.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic_sp.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar:/u01/app/oracle/Middleware/modules/features/weblogic.server.modules_12.1.1.0.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/webservices.jar:/u01/app/oracle/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/u01/app/oracle/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar::/u01/app/oracle/Middleware/utils/config/10.3/config-launch.jar::/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbynet.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbyclient.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbytools.jar::

Initializing WebLogic Scripting Tool (WLST) ...


Welcome to WebLogic Server Administration Scripting Shell


Type help() for help on available commands


wls:/offline> startNodeManager(verbose='true', NodeManagerHome='/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/', ListenPort='5556', ListenAddress='localhost')

Launching NodeManager ... 
 Properties: {ListenAddress=localhost,ListenPort=5556,NodeManagerHome=/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/,} 
 Command: /usr/java/jdk1.7.0_07/jre/bin/java -classpath /usr/java/jdk1.7.0_07/jre/lib/rt.jar:/usr/java/jdk1.7.0_07/jre/lib/i18n.jar:/u01/app/oracle/Middleware/patch_wls1211/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/u01/app/oracle/Middleware/patch_ocp371/profiles/default/sys_manifest_classpath/weblogic_patch.jar:/usr/java/jdk1.7.0_07/lib/tools.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic_sp.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/weblogic.jar:/u01/app/oracle/Middleware/modules/features/weblogic.server.modules_12.1.1.0.jar:/u01/app/oracle/Middleware/wlserver_12.1/server/lib/webservices.jar:/u01/app/oracle/Middleware/modules/org.apache.ant_1.7.1/lib/ant-all.jar:/u01/app/oracle/Middleware/modules/net.sf.antcontrib_1.1.0.0_1-0b2/lib/ant-contrib.jar:/u01/app/oracle/Middleware/utils/config/10.3/config-launch.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbynet.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbyclient.jar:/u01/app/oracle/Middleware/wlserver_12.1/common/derby/lib/derbytools.jar weblogic.NodeManager -v
NMProcess:
NMProcess: Jan 08, 2013 4:18:01 PM weblogic.nodemanager.server.NMServerConfig initDomainsMap
NMProcess: INFO: Loading domains file: /u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/nodemanager.domains
NMProcess:
NMProcess: Jan 08, 2013 4:18:02 PM weblogic.nodemanager.server.SSLConfig loadKeyStoreConfig
NMProcess: INFO: Loading identity key store: FileName=/u01/app/oracle/Middleware/wlserver_12.1/server/lib/DemoIdentity.jks, Type=jks, PassPhraseUsed=true
NMProcess:
NMProcess: Jan 08, 2013 4:18:02 PM weblogic.nodemanager.server.NMServer
NMProcess: INFO: Loaded node manager configuration properties from '/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/nodemanager.properties'
NMProcess: Node manager v10.3
NMProcess: 
NMProcess: Configuration settings:
NMProcess: 
NMProcess: NodeManagerHome=/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/
NMProcess: ListenAddress=localhost
NMProcess: ListenPort=5556
NMProcess: ListenBacklog=50
NMProcess: SecureListener=true
NMProcess: AuthenticationEnabled=true
NMProcess: NativeVersionEnabled=true
NMProcess: CrashRecoveryEnabled=false
NMProcess: JavaHome=/usr/java/jdk1.7.0_07/jre
NMProcess: StartScriptEnabled=true
NMProcess: StopScriptEnabled=false
NMProcess: StartScriptName=startWebLogic.sh
NMProcess: StopScriptName=
NMProcess: LogFile=/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/nodemanager.log
NMProcess: LogLevel=INFO
NMProcess: LogLimit=0
NMProcess: LogCount=1
NMProcess: LogAppend=true
NMProcess: LogToStderr=true
NMProcess: LogFormatter=weblogic.nodemanager.server.LogFormatter
NMProcess: DomainsFile=/u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager/nodemanager.domains
NMProcess: DomainsFileEnabled=true
NMProcess: StateCheckInterval=500
NMProcess: QuitEnabled=true
NMProcess: UseMACBroadcast=false
NMProcess: DomainRegistrationEnabled=false
NMProcess: DomainsDirRemoteSharingEnabled=false
NMProcess: 
NMProcess: Domain name mappings:
NMProcess: 
NMProcess: lab_domain -> /u01/app/oracle/Middleware/user_projects/domains/lab_domain
NMProcess: 
NMProcess:
NMProcess: Jan 08, 2013 4:18:02 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Startup configuration properties loaded from "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/portalServer/data/nodemanager/startup.properties"
NMProcess:
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Resume monitoring of active server process (pid = 23650)
NMProcess: < Initializing ServerMonitor for weblogic.nodemanager.server.ServerManager@4260904e : with config : weblogic.nodemanager.common.StartupConfig@51a212ed>
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO:  Initializing ServerMonitor for weblogic.nodemanager.server.ServerManager@4260904e : with config : weblogic.nodemanager.common.StartupConfig@51a212ed
NMProcess:
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Resume monitoring of active server process (pid = 21293)
NMProcess: < Initializing ServerMonitor for weblogic.nodemanager.server.ServerManager@572c4a12 : with config : weblogic.nodemanager.common.StartupConfig@1cb31074>
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO:  Initializing ServerMonitor for weblogic.nodemanager.server.ServerManager@572c4a12 : with config : weblogic.nodemanager.common.StartupConfig@1cb31074
NMProcess:
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Startup configuration properties loaded from "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/j2eeServer/data/nodemanager/startup.properties"
NMProcess:
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Resume monitoring of active server process (pid = 23510)
NMProcess: < Initializing ServerMonitor for weblogic.nodemanager.server.ServerManager@1b0b2fd9 : with config : weblogic.nodemanager.common.StartupConfig@7b725d6d>
NMProcess: Jan 08, 2013 4:18:03 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO:  Initializing ServerMonitor for weblogic.nodemanager.server.ServerManager@1b0b2fd9 : with config : weblogic.nodemanager.common.StartupConfig@7b725d6d
NMProcess:
NMProcess: Jan 08, 2013 4:18:04 PM weblogic.nodemanager.server.SSLListener run
NMProcess: INFO: Secure socket listener started on port 5556, host localhost/127.0.0.1
Successfully launched the Node Manager.
The Node Manager process is running independent of the WLST process.
Exiting WLST will not stop the Node Manager process. Please refer 
to the Node Manager logs for more information.
The Node Manager logs will be under /u01/app/oracle/Middleware/wlserver_12.1/common/nodemanager
Node Manager starting in the background
wls:/offline> 
wls:/offline> 
wls:/offline> nmConnect('weblogic','wadmin12','localhost','5556','lab_domain','/u01/app/oracle/Middleware/user_projects/domains/lab_domain/','ssl')
Connecting to Node Manager ...
 
 
Successfully Connected to Node Manager.
wls:/nm/lab_domain> 
wls:/nm/lab_domain> 
wls:/nm/lab_domain> connect('weblogic','wadmin12','t3://localhost:7001')
Connecting to t3://localhost:7001 with userid weblogic ...
Successfully connected to Admin Server 'AdminServer' that belongs to domain 'lab_domain'.

Warning: An insecure protocol was used to connect to the 

server. To ensure on-the-wire security, the SSL port or 
Admin port should be used instead.

wls:/lab_domain/serverConfig> 

wls:/lab_domain/serverConfig> 
wls:/lab_domain/serverConfig> nmKill('AdminServer')
Killing server AdminServer ...
WLST lost connection to the WebLogic Server that you were 
connected to, this may happen if the server was shutdown or 
partitioned. You will have to re-connect to the server once the 
server is available.
Disconnected from weblogic server: AdminServer
NMProcess:
NMProcess: Jan 08, 2013 4:19:05 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Server was killed
Successfully killed server AdminServer ...
wls:/nm/lab_domain> nmStart('AdminServer')
Starting server AdminServer ...
NMProcess:
NMProcess: Jan 08, 2013 4:19:13 PM weblogic.nodemanager.server.LogFileRotationUtil log
NMProcess: INFO: Rotated server output log to "/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/AdminServer/logs/AdminServer.out00005"
NMProcess:
NMProcess: Jan 08, 2013 4:19:13 PM weblogic.nodemanager.server.LogFileRotationUtil log
NMProcess: INFO: Server error log also redirected to server log
NMProcess:
NMProcess: Jan 08, 2013 4:19:13 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Starting WebLogic server with command line: /u01/app/oracle/Middleware/user_projects/domains/lab_domain/bin/startWebLogic.sh 
NMProcess:
NMProcess: Jan 08, 2013 4:19:13 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Working directory is '/u01/app/oracle/Middleware/user_projects/domains/lab_domain'
NMProcess:
NMProcess: Jan 08, 2013 4:19:13 PM weblogic.nodemanager.server.AbstractServerManager log
NMProcess: INFO: Server output log file is '/u01/app/oracle/Middleware/user_projects/domains/lab_domain/servers/AdminServer/logs/AdminServer.out'
Successfully started server AdminServer ...
wls:/nm/lab_domain> 
wls:/nm/lab_domain> 
wls:/nm/lab_domain> 
wls:/nm/lab_domain> help()

WLST is a command line scripting tool to configure and administer WebLogic Server. Try:


    help('all')              List all WLST commands available.

    help('browse')           List commands for browsing the hierarchy.
    help('common')           List the most commonly used commands.
    help('control')          List commands for controlling the domain/server.
    help('deployment')       List commands for deploying applications.
    help('diagnostics')      List commands for performing diagnostics.
    help('editing')          List commands for editing the configuration.
    help('information')      List commands for displaying information.
    help('lifecycle')        List commands for managing life cycle.
    help('nodemanager')      List commands for using Node Manager.
    help('offline')          List all offline commands available.
    help('online')           List all online commands available.
    help('storeadmin')       List all store admin commands.
    help('trees')            List commands use to navigate MBean hierarchy.
    help('variables')        List all global variables available.

wls:/nm/lab_domain> help('nodemanager')


Use Node Manager.

    help('nm')                  Determine whether WLST is connected to Node Manager.
    help('nmConnect')           Connect WLST to Node Manager.
    help('nmDisconnect')        Disconnect WLST from a Node Manager session.
    help('nmEnroll')            Enroll the machine with Node Manager.
    help('nmGenBootStartupProps')   Generate boot and startup properties
    help('nmKill')              Kill the specified server instance.
    help('nmLog')               Return the Node Manager log.
    help('nmServerLog')         Return the server output log.
    help('nmServerStatus')      Return the status of the server.
    help('nmStart')             Start a server using Node Manager.
    help('nmVersion')           Return the Node Manager server version.
    help('startNodeManager')    Start Node Manager.
    help('stopNodeManager')     Stop Node Manager.

wls:/nm/lab_domain> exit()

Exiting WebLogic Scripting Tool.
[ertugrula@easlan bin]$ 

3 Ocak 2013 Perşembe

OCFS2 hatasi

Sizde benim gibi asagidaki hatayi aldiysaniz.
[root@cluster1]# /etc/init.d/o2cb unload
Unloading module "ocfs2_dlmfs": /etc/init.d/o2cb: line 514: modprobe: command not found
Unable to unload module "ocfs2_dlmfs"
Failed
yapmaniz gereken,
[root@cluster1]# gedit /etc/init.d/o2cb 
 acarak, line 514: modprobe: command not found  514`uncu satiri asagidaki gibi degistirmelisiniz..
/sbin/modprobe -rs "$FSNAME"

28 Aralık 2012 Cuma

EJB Lite kullanarak Java SE uygulamasi icersinde JPA ornegi

Bu makalemizde, bir java SE uygulamasi icersinde EJB calistiracaz, evet yanlis okumadiniz, herhangi bir uygulama sunucusu kullanmadan ejb`yi nasil kullandigimizi gorecegiz. Aslinda, daha once yaptiysaniz bir EJB module olusturmadan, ejb 3.1 ile birlikte herhangi bir web uygulamasi icerisindede EJB kullanabiliyorduk, bizim burada yapacagmizla web uygulamasi icersinde calisan EJB mantigi ayni ikiside EJB lite kullaniyor. Simdi ornek uygulamamiza gecelim..

    Uygulama gereksinimleri

    The following is a list of hardware and software requirements:
    • JDK 7
    • NetBeans 7.2 Java EE version IDE
    • GlassFish 3.1.1 (jar`i kullanacagimiz icin gerekli)
  1. From the NetBeans Menu bar, click File > New Project
    In the New Project dialog box, select Categories > Java, select Projects: > Java Application and click Next















    8. Product.java entity`imiz.
    @Entity
    
    public class Product implements Serializable {
    
    
    
        private static final long serialVersionUID = 1L;
    
        @Id
    
        @GeneratedValue(strategy = GenerationType.AUTO)
    
        private Long id;
    
        private String code;
    
        private String name;
    
    
    
        public String getCode() {
    
            return code;
    
        }
    
    
    
        public void setCode(String code) {
    
            this.code = code;
    
        }
    
    
    
        public String getName() {
    
            return name;
    
        }
    
    
    
        public void setName(String name) {
    
            this.name = name;
    
        }
    
    
    
        public Long getId() {
    
            return id;
    
        }
    
    
    
        public void setId(Long id) {
    
            this.id = id;
    
        }
    
    }











    arguments




27 Aralık 2012 Perşembe

weblogic ile komut satirindan deploy ve undeploy etmek

Bu makalemizde, weblogic server`imiza bir projemizi nasil deploy edecegimizi gorecegiz.

deploy icin(windows):
C:\Oracle\Middleware\wlserver_10.3\server\lib> java weblogic.Deployer -adminurl http://localhost:7001 -username weblogic -password mypass -name myApp -source 
e:\myapp.war -targets DefaultServer -deploy

Not eger hatayi alirsaniz classpath ile ilgili asagikini yapmamiz gerekiyor,
C:\Oracle\Middleware\wlserver_10.3\server\lib> set CLASSPATH=%CLASSPATH%;C:\Oracle\Middleware\wlserver_10.3\server\lib\weblogic.jar
deploy islemini tekrar yaptiginizda calisacaktir.

redeploy icin :
C:\Oracle\Middleware\wlserver_10.3\server\lib> java weblogic.Deployer -adminurl http://localhost:7001 -username weblogic -password mypass -name myApp -redeploy

undeploy icin :
C:\Oracle\Middleware\wlserver_10.3\server\lib> java weblogic.Deployer -adminurl http://localhost:7001 -username weblogic -password mypass -name myApp -undeploy

butun deploy olmus uygulamalari gormek icin :
C:\Oracle\Middleware\wlserver_10.3\server\lib> java weblogic.Deployer -adminurl http://localhost:7001 -username weblogic -password mypass -name  -listapps

25 Aralık 2012 Salı

weblogic managed server start-stop

Bu makalemizde, weblogic managed server`in nasil start-stop edilecegini gorecegiz.
start icin : 
DOMAIN_NAME/bin/ altinda, 
[oracle@ertgurula/bin]$ ./startManagedWebLogic.sh MmMngdServ http://localhost:7001

stop icin: (WLST kullanarak)

[oracle@ertgurula /]$ java weblogic.WLST

Initializing WebLogic Scripting Tool (WLST) ...
Welcome to WebLogic Server Administration Scripting Shell
Type help() for help on available commands

wls:/offline> connect('weblogic','wpass1','t3://localhost:7020')

Connecting to t3://wls-sysadm.example.com:7020 with userid system ...
Successfully connected to Admin Server 'MedRecAdmSvr' that belongs to domain
'MedRecDomain'.
Warning: An insecure protocol was used to connect to the server. To ensure on-the-wire security, the SSL port or Admin port should be used instead.

wls:/MyDomain/serverConfig> cd('Servers')
wls:/MyDomain/serverConfig/Servers> cd('MmMngdServ')

wls:/MyDomain/serverConfig/Servers> shutdown('MmMngdServ')
wls:/MyDomain/serverConfig/Servers> cd('..')
wls:/MyDomain/serverConfig>exit()

bu kadar :)

13 Aralık 2012 Perşembe

Weblogic JSP/Servlet uygulamasi

Merhaba, bu makalemizde, Weblogic serverimiz uzerinde JSP ve Servlet`i nasil calistiracagimizi ve deploy edecegimizi gorecegiz.
-Oncelikle Netbeans`de bir web app aciyoruz. bunun icin asagidaki adimlari takip ediyoruz.
1.
 2. Oracle Weblogic Server`i secerek Next diyoruz.
 3. HelloServlet.java class`imiz asagida
 4. Uygulamamiza sag tiklayarak Run diyoruz ve Weblogic Server uzerinde deploy ve calistirmis oluyoruz
 5. Weblogic Server`imizin calistigini gosteren log
 6. Ve sonuc :)
 7. Asagidakide Servletimiz
 8. Weblogic Admin Consolumuz aciyoruz ve uygulamamiz deploy edilmis halde goruyoruz.
 9.
Bir sonraki makalede gorusmek uzere

10 Aralık 2012 Pazartesi

weblogic domain silme

       Merhaba, bu makalemde weblogic server uzerinde daha onceden olusturmus oldugumuz bir domain`i nasil silecegimizi paylasacagim.
   
   Weblogic serverden bir domain silmek icin, asagidaki adimlari takip ediyoruz.

1. Weblogic Home klasourunuz altindaki domain-registry.xml dosyasinin icinden domainimizi siliyoruz.
  [ertugrula@localhost middleware]$cd /u01/app/oracle/middleware/
         domain location="/u01/app/oracle/middleware/user_projects/domains/myDomain"

2.  weblogic home altindaki wlserver_12.1/common/nodemanager/ klasorun icindeki nodemanager.domains
     dosyasinin icindeki domain bilgilerimizi siliyoruz.

3.  Ve son olaraka weblogic home altindaki /u01/app/oracle/middleware/user_projects/domains/   domain        klasorumuzu siliyoruz.

9 Aralık 2012 Pazar

weblogic WLST ile Domain olusturma

"WLST" Weblogic Scripting tool  komut satırından sunucuları idare etme,  yeni domain oluşturma veya yonetme ve monitor etmek icin kullanılan Jython uygulamasıdır. Jython, populer phyton dilinin java implementasyonu olan bir dildir. WL_HOME\common\templates\scripts\wlst klasöründe weblogic gelistiricileri tarafindan yazilan örnek scriptler bulabilirsiniz.

     Bu makalemizde, WLST kullanarak bir domain olusturacaz.

WLST'yi kullanmak için öncelikle WL_HOME\common\bin\wlst.bin veya sh dosyanın çalıştırılması gerekiyor. Eğer orjinal template'den oluşturmak için aşağıdaki komut yeterlidir.

    createDomain(domain Template, domain Dir, user, password);


Simdi biz gelelim script ile olusturmaya. Bunun icin once bir create_domain.py isminde bir dosya olusturup icerisine asagidaki kodlari ekliyoruz ve asagidaki sekilde baslatiyoruz. Ben kendi makinemde /home/ertugrula/weblogic_blog/create_domain.py altinda olusturdum.



[ertugrula@localhost bin]$ pwd
/u01/app/oracle/middleware/wlserver_12.1/common/bin

[ertugrula@localhost bin]$ sh wlst.sh /home/ertugrula/weblogic_blog/create_domain.py

create_domain.py dosyasinin icerigi


#=======================================================================# Open a domain template.
#=======================================================================

readTemplate("/u01/app/oracle/middleware/wlserver_12.1/common/templates/domains/wls.jar")
addTemplate("/u01/app/oracle/middleware/wlserver_12.1/common/templates/domains/geo1domain.jar")

cd('Servers/AdminServer')
set('ListenAddress','lcoalhost')
set('ListenPort', 7001)

create('AdminServer','SSL')
cd('SSL/AdminServer')
set('Enabled', 'True')
set('ListenPort', 7002)

#=======================================================================
# Define the user password for weblogic.
#=======================================================================

cd('/')
cd('Security/base_domain/User/weblogic')
cmo.setPassword('wadmin12')

# Please set password here before using this script, e.g. cmo.setPassword('value')
#=======================================================================
# Write the domain and close the domain template.
#=======================================================================

setOption('OverwriteDomain', 'true')
writeDomain('/u01/app/oracle/middleware/user_projects/domains/mydomain')
closeTemplate()

#=======================================================================
# Exit WLST.
#=======================================================================

exit()

8 Aralık 2012 Cumartesi

A Comparison of PL/SQL Block Syntax
ANONYMOUS

[DECLARE
CREATE
FUNCTION
CREATE
PROCEDURE
CREATE
PACKAGE
CREATE
PACKAGE BODY
[parameters] [parameters]
RETURN
declaration
section]
declaration
section
declaration
section
declaration
section
declaration
section
BEGIN BEGIN BEGIN [BEGIN
executable
section
executable
section
executable
section
executable
section]
[EXCEPTION [EXCEPTION [EXCEPTION [EXCEPTION
exception-
handling
section]
exception-
handling
section]
exception-
handling
section]
exception-
handling section]
END; END; END; END; END;
// ///

29 Kasım 2012 Perşembe

Linux Yeni Disk Ekleme

Linux`a yeni bir disk eklendiginde, asagidaki adimlari takip ediyoruz.

$ /sbin/fdisk -l
    Disk /dev/sda: 22.0 GB, 22088384512 bytes
    255 heads, 63 sectors/track, 2685 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
   /dev/sda1   *           1          13      104391   83  Linux
   /dev/sda2              14        2685    21462840   8e  Linux LVM

   Disk /dev/sdb: 6442 MB, 6442450944 bytes
   255 heads, 63 sectors/track, 783 cylinders
   Units = cylinders of 16065 * 512 = 8225280 bytes

   Disk /dev/sdb doesn't contain a valid partition table

$ [root@linux1 /]# pwd
/

$ mkdir data

$ /sbin/fdisk /dev/sdb
    sirasiyla, n,p,1 enter, enter, w

$ /sbin/mkfs.ext3 /dev/sdb1

$ vi /etc/fstab
 ekleyelim      /dev/sdb1               /data           ext3    defaults        1 2

$ /sbin/e2label /dev/sdb1 /data

20 Kasım 2012 Salı

nutch content store

Merhaba, Apache Nutch kullanarak, web sitelerinizi crawl etmek istediginizde, default olarak crawl ederken html icerigini crawl edip indexlemez, bunun icin asagidaki satiri duzeltmemiz isimizi gorecektir.

Mesala ben solr`a indexledigim icin (solr 4.0)

../solr/example/solr/collection1/conf/schema.xml icerisinde asagidaki stored kismini true yapiyoruz
true
field name="content" type="string" stored="true" indexed="true"/

org.apache.solr.common.SolrException: undefined field text

Exception: 
org.apache.solr.common.SolrException: undefined field text 

Solution: 
1. open solrconfig.xml 
2. find
3. under that tag, find  text

4. change "text" to whatever your entity property that you need it to be indexed

For example, if I have an entity called car, it might have a property called brand and I might want to search within that field. So, in that case it would be convenient for me to change "text" to "brand"