Inicial > weblogic, wlst > WLST Criar Servidores

WLST Criar Servidores

Criando servidores no Weblogic via script wlst no nodo online.

O Script é composto de dois arquivos um script.py e um arquivo.properties, esse arquivo properties é usado para definir as configurações de cada servidor.

  1. servidores.properties
  2. No Exemplo já temos um domínio weblogic (domain1) em cluster com as machines já criadas e configuradas:

    • 2 Machines ( Machine-Linux e Machine-Solaris)
    • 2 Clusters ( cluster-linux e cluster-solaris)
      
    #==========================================================
    # @author
    # Herivelto Gabriel 
    #==========================================================
    
    #Variáveis globais 
    USUARIO_ADMIN=weblogic
    SENHA_ADMIN=weblogic10
    ADMIN_SERVER=t3://localhost:7001
    DIRETORIO_DOMINIO=/opt/Oracle/Middlewar/domains/domain1
    DIRETORIO_LOG=/var/log
    JAVA_HOME=/Library/Java/Home
    
    #Java Arguments 
    JAVA_ARGUMENTS= -Xms2g -Xmx2g 
    
    #somente true ou false
    PORTA_HTTPS_HABILITADA=true
    
    #Para cada servidor a ser criado repete esses parâmetros
    SERVIDOR_1=server-1
    IP_SERVIDORES_1=localhost
    PORTA_HTTP_SERVIDOR_1=7010
    PORTA_HTTPS_SERVIDOR_1=8010
    MACHINE_SERVIDOR_1=Machine-Linux
    CLUSTER_SERVIDOR_1=cluster-linux
    
    SERVIDOR_2=server-2
    IP_SERVIDORES_2=localhost
    PORTA_HTTP_SERVIDOR_2=7020
    PORTA_HTTPS_SERVIDOR_2=8020
    MACHINE_SERVIDOR_2=Machine-Solaris
    CLUSTER_SERVIDOR_2=cluster-solaris
     
    
  3. criarServidores.py
  4. O Script vai criar os servidores definidos no arquivo de properties e configurar:



    • Ip Servidor
    • Portas http e https
    • Cluster
    • Machine
    • Java Options
    • Caminho de log
      
    #==========================================================
    # @author
    # Herivelto Gabriel 
    #==========================================================
    from java.util   import Properties
    from java.io     import FileInputStream
    from java.io     import File
    from java.util   import Enumeration
    from string      import split
    
    #==========CARREGA DADOS ARQUIVO PROPRIEDADES=================
    #arquivo de propriedades a ser carregado (com o mesmo nome )
    localizacaoArquivoPropriedadesConfiguracao = 'servidores.properties'
    
    myProps = Properties()
    
    #carrega arquivo de propriedades
    myProps.load(FileInputStream(File(localizacaoArquivoPropriedadesConfiguracao)))
    
    readDomain(myProps.get('DIRETORIO_DOMINIO'))
    
    #=====SEPARA ELEMENTOS SERVIDOR DA LISTA DE PROPRIEDADES=====
    #array para add os servidores do arquivo de propriedades.
    servidores = []
    
    propertyNames = myProps.propertyNames()
    
    while propertyNames.hasMoreElements():
        #carrega os nomes do arquivo de propriedades
        chave = propertyNames.nextElement()
        #Se e um servidor adiciona no array de servidores.
        elemento = split(chave, '_')
        if elemento[0] == 'SERVIDOR':
            servidores.append(chave)
            
    print 'Os seguinte servidores serão criados, aguarde....'
    for a in servidores:
        print 'Nome do servidor == ' + myProps.get(a)
    
    #==========CRIACAO E CONFIGURACAO DE INSTANCIAS=============
    print 'Iniciando configuracao dos servidores........'
    
    #Pega as variáveis do aquivo de Properties
    portaHttpsHabilitada = myProps.get('PORTA_HTTPS_HABILITADA') 
    dirLogs=myProps.get('DIRETORIO_LOG')
    adminUser = myProps.get('USUARIO_ADMIN')
    adminPassword = myProps.get('SENHA_ADMIN')
    adminServerURL = myProps.get('ADMIN_SERVER')
    java_home = myProps.get('JAVA_HOME')
    
    #Conecta com o AdminServer que vai ser configurado.
    connect(adminUser,adminPassword,adminServerURL);
    
    #Inicia a criação
    edit()
    startEdit()
    cd('/')
    
    for servidor in servidores:
        #Pega os valores de cada server.
        nomeServidor = myProps.get(servidor)
        ipServidor = myProps.get('IP_'+servidor)
        portaHttp = myProps.get('PORTA_HTTP_'+servidor)
        nomeMachine = myProps.get('MACHINE_'+servidor)
        nomeCluster = myProps.get('CLUSTER_'+servidor)
        javaArguments = myProps.get('JAVA_ARGUMENTS') 
        cd('/')    
        
        #Criar o Server
        cmo.createServer(nomeServidor)
        cd('/Servers/' + nomeServidor)
        cmo.setListenAddress(ipServidor)
        cmo.setListenPortEnabled(True)
        cmo.setListenPort(int(portaHttp))
        print 'Servidor Criado == ' + nomeServidor 
    
        #Seta o Cluster
        cmo.setCluster(getMBean('/Clusters/' + nomeCluster))
        print 'Cluster Selecionado == ' + nomeCluster 
    
        #Seta a Machine
        cmo.setMachine(getMBean('/Machines/' + nomeMachine))
        print 'Node Manager Selecionado == ' + nomeMachine
        
        #Seta os Arguments
        cmo.getServerStart().setArguments(javaArguments)
        cmo.getServerStart().setJavaHome(java_home)
        cmo.getServerStart().setJavaVendor("Oracle")
        cmo.getServerStart().setUsername(adminUser)
        cmo.getServerStart().setPassword(adminPassword)
        print 'JAVA_HOME / Arguments Setado '
        
        #Se Existir porta HTTPS Hablita e seta o IP
        if portaHttpsHabilitada == 'true':
            portaHttps = myProps.get('PORTA_HTTPS_'+servidor)
            cd('SSL/'+nomeServidor)
            cmo.setEnabled(True)
            cmo.setListenPort(int(portaHttps))
            print 'HTTPS Configurado '
            
        #configrar LOG
        cd('/')
        cd('Servers/' + nomeServidor +'/Log/'+ nomeServidor)
        cmo.setFileName(dirLogs +'/'+ nomeServidor +'/server.log')
        cmo.setRotationType('byTime')
        cmo.setFileTimeSpan(6)
        cd('/')
        cd('Servers/' + nomeServidor + '/WebServer/' + nomeServidor +'/WebServerLog/' +nomeServidor)
        cmo.setFileName(dirLogs +'/'+ nomeServidor +'/access.log')
        cmo.setRotationType('byTime')
        cmo.setFileTimeSpan(6)
        print 'Server.log e access.log  CONFIGURADO == '+ dirLogs
        print 'SERVIDOR CRIADO E CONFIGURADO Com Sucesso !! \n\n'
        
    
    # Atualiza dominio e sai
    
    activate()
    
    #===============================  FIM ======================
    
  5. Executando o Script com wlst.sh
  6. Os dois arquivos (servidores.properties e criarServidores.py) devem está no mesmo diretório para a execução, chama-se o script do weblogic wlst.sh e passa o nome
    do script python com parâmetro. EX:

      
      ../Oracle/Middleware/wlserver_10.3/common/bin/wlst.sh criarServidores.py
    
Anúncios
Categorias:weblogic, wlst Tags:,
  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

w

Conectando a %s

%d blogueiros gostam disto: