Ubuntu 12.04 LTS: Configurando Pentaho na inicialização

Posted on março 27, 2013. Filed under: Linux, Pentaho, Ubuntu | Tags:, , , , |

Introdução

O objetivo deste artigo é disponibilizar scripts de inicialização para os serviços do Pentaho BI Server e Pentaho Administration Console. Os scripts foram feitos para uso no Ubuntu Server 12.04 LTS.

Instalação do Pentaho

Recomendo o link abaixo para instalação do Pentaho BI Server no Ubuntu 12.04 LTS. Apesar do link estar se referindo ao Ubuntu Desktop, realizei a instalação normalmente em um Ubuntu Server.

http://akbarahmed.com/2012/05/24/install-pentaho-bi-server-4-5-on-ubuntu-12-04-lts-desktop/

Script init para o Pentaho BI Server

Criar o script de init abaixo em /etc/init.d/pentaho:
(PS: Configurar as variáveis de ambiente JAVA_HOME, JRE_HOME e PENTAHO_HOME de acordo com sua instalação)

#!/bin/bash
### BEGIN INIT INFO
# Provides: start-pentaho stop-pentaho
# Required-Start: networking
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Pentaho BI Platform
### END INIT INFO

export JAVA_HOME="/usr/lib/jvm/jdk1.6.0_31"
export JRE_HOME="/usr/lib/jvm/jdk1.6.0_31/jre"
export PENTAHO_HOME="/opt/pentaho"

start(){
        echo "Iniciando aplicacao biserver"
        $PENTAHO_HOME/biserver-ce/start-pentaho.sh > /tmp/pentaho.out 2>&1
        echo "ok"
}

stop(){
        echo "recebi: $1"
        echo "Finalizando aplicacao biserver"
        $PENTAHO_HOME/biserver-ce/stop-pentaho.sh
        echo "ok"
}

case "$1" in
start)
        start $2
        ;;
stop)
        stop $2
        ;;
*)
        printf "\nUsage: $0 \n
                start | stop            : Inicia ou finaliza a aplicacao biserver\n"
        ;;
esac
exit 0

Instalando os links de init:

# update-rc.d pentaho defaults
 Adding system startup for /etc/init.d/pentaho ...
   /etc/rc0.d/K20pentaho -> ../init.d/pentaho
   /etc/rc1.d/K20pentaho -> ../init.d/pentaho
   /etc/rc6.d/K20pentaho -> ../init.d/pentaho
   /etc/rc2.d/S20pentaho -> ../init.d/pentaho
   /etc/rc3.d/S20pentaho -> ../init.d/pentaho
   /etc/rc4.d/S20pentaho -> ../init.d/pentaho
   /etc/rc5.d/S20pentaho -> ../init.d/pentaho

Script init para o Pentaho Administration Console

Criar o script de init abaixo em /etc/init.d/pentaho-adm:
(PS: Configurar as variáveis de ambiente JAVA_HOME, JRE_HOME e PENTAHO_HOME de acordo com sua instalação)

#!/bin/bash
### BEGIN INIT INFO
# Provides: start-pentaho-adm stop-pentaho-adm
# Required-Start: networking
# Required-Stop:
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Description: Pentaho BI Platform Administration Console
### END INIT INFO


export JAVA_HOME="/usr/lib/jvm/jdk1.6.0_31"
export JRE_HOME="/usr/lib/jvm/jdk1.6.0_31/jre"

export PENTAHO_HOME="/opt/pentaho"

start(){
        echo "Iniciando aplicacao administration-console"
        cd $PENTAHO_HOME/administration-console && ./start-pac.sh > /tmp/pentaho_console.out 2>&1 &
        echo "ok"
}

stop(){
        echo "recebi: $1"
        echo "Finalizando aplicacao administration-console"
        cd $PENTAHO_HOME/administration-console && ./stop-pac.sh
        echo "ok"
}

case "$1" in
start)
        start $2
        ;;
stop)
        stop $2
        ;;
*)
        printf "\nUsage: $0 \n
                start | stop : Inicia ou finaliza o administration console\n\n"
        ;;
esac
exit 0

Instalando os links de init:

# update-rc.d pentaho-adm defaults
 Adding system startup for /etc/init.d/pentaho-adm ...
   /etc/rc0.d/K20pentaho-adm -> ../init.d/pentaho-adm
   /etc/rc1.d/K20pentaho-adm -> ../init.d/pentaho-adm
   /etc/rc6.d/K20pentaho-adm -> ../init.d/pentaho-adm
   /etc/rc2.d/S20pentaho-adm -> ../init.d/pentaho-adm
   /etc/rc3.d/S20pentaho-adm -> ../init.d/pentaho-adm
   /etc/rc4.d/S20pentaho-adm -> ../init.d/pentaho-adm
   /etc/rc5.d/S20pentaho-adm -> ../init.d/pentaho-adm
Ler Post Completo | Make a Comment ( None so far )

Upgrade do Ubuntu Server para 12.04 LTS

Posted on julho 18, 2012. Filed under: Linux, Ubuntu | Tags:, , |

Introdução

Neste artigo vamos explicar o processo à ser realizado para fazer o upgrade no Ubuntu server, para à última versão, 12.04 LTS (Precise). Precisei fazer o upgrade do ubuntu server, da versão 10.10 (Maverick) para a útlima, 12.04 LTS (Precise). No caso, fiz o upgrade primeiramente para a versão 11.04 (Natty), depois para a versão 11.10 (Oneiric) e finalmente para 12.04. Pelo que andei pesquisando, pude observar que alguns textos dizem que é possível fazer o upgrade diretamente de qualquer versão para à última LTS. Porém não quis arriscar em servidores de produção. Portanto, fiz a atualização de forma gradual.

Além do processo de upgrade, procurei passar para vocês, como resolvi alguns erros que apareceram durante o procedimento. Vale salientar, que este artigo se refere somente à versão server do Ubuntu. A versão desktop pode ser feita através de um procedimento diferente.

Procedimento

  • Logar no Ubuntu server como root
  • update no apt-get
  • # apt-get update

  • Instalação/Atualização do update-manager-core
  • # apt-get install update-manager-core

  • Editar o arquivo /etc/update-manager/release-upgrades e alterar Prompt=lts para Prompt=normal:


    [DEFAULT]
    # Default prompting behavior, valid options:
    #
    # never - Never check for a new release.
    # normal - Check to see if a new release is available. If more than one new
    # release is found, the release upgrader will attempt to upgrade to
    # the release that immediately succeeds the currently-running
    # release.
    # lts - Check to see if a new LTS release is available. The upgrader
    # will attempt to upgrade to the first LTS release available after
    # the currently-running one. Note that this option should not be
    # used if the currently-running release is not itself an LTS
    # release, since in that case the upgrader won't be able to
    # determine if a newer release is available.
    Prompt=normal

  • Iniciar o processo de upgrade
  • # do-release-upgrade

    Observações:

    • Caso esteja atualizando via ssh, será alertado sobre o risco de ocorrer algum problema durante o upgrade e você perder a conexão. De qualquer forma, um ssh alternativo é aberto na porta 1022. Sempre que possível, executar o upgrade diretamente no terminal físico do servidor.
    • Durante o upgrade, você será alertado sobre alguns processos que precisam ser re-inciados devido à atualização de pacotes. Pode autorizar tranquilamente a re-inicializaçao desses processos.
    • Alguns pacotes, ao serem atualizados para novas versões (apache, php, samba, etc.), terão novos arquivos de configuração. O mecanismo de upgrade do Ubuntu irá perguntar o que deseja fazer com os novos arquivos. (Manter o atual, sobrescrever com o novo, fazer um diff, etc.) Eu aconselho a sempre instalar o arquivo de configuração da nova versão do pacote. E depois do upgrade ajustar os parâmetros de acordo com sua necessidade. Portanto, antes do upgrade, faça um backup dos seus principais arquivos de configuração. Exemplo: /etc/php5/apache/php.ini, /etc/apache2/apache2.conf, /etc/samba/smb.conf
    • Durante o upgrade, normalmente para a versão 11.10 (Oneiric), o grub acusa que precisa ser instalado novamente e te mostra as opções dos possíveis locais onde pode ser instalado. Aconselho a instalar no MBR do seu disco (ex: /dev/sda).
    • Durante o upgrade, passando pela versão 11.10 (Oneiric), existe um bug que faz o comando fuser usar 100% de CPU, fazendo fork de forma incontrolada. Percebi esse problema, pois o sistema acusa direto que não conseguia alocar memória. O fuser é disparado por um processo do php que roda no crontab. Antes de continuar com o upgrade para à versão 12.04, para não ter imprevistos, faça a devida mudança no arquivo /etc/cron.d/php5:

      Trocar a linha:
      09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) ! -execdir fuser -s {} 2>/dev/null \; -delete

      Para:
      09,39 * * * * root [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -depth -mindepth 1 -maxdepth 1 -type f -cmin +$(/usr/lib/php5/maxlifetime) -delete

    • Em um dos servidores que fiz o upgrade, tive um problema no terminal físico dele. A tela ficava em preto e não conseguia visualizar nada nela. Fiz diversas mudanças em arquivos de configuração do grub e do console. As duas configurações abaixos resolveram o meu problema:

      No arquivo /etc/default/grub, trocar a linha:
      GRUB_CMDLINE_LINUX_DEFAULT="quiet"

      Para:
      GRUB_CMDLINE_LINUX_DEFAULT="quiet nomodeset"

      No arquivo /etc/default/console-setup, trocar a linha:
      FONTFACE="VGA"

      Para:
      FONTFACE="Fixed"

Ler Post Completo | Make a Comment ( 2 so far )

Linux, Instalando um novo Kernel através de Livecd

Posted on março 16, 2012. Filed under: Linux, Tips | Tags:, , , , |

Introdução

Existem certas situações que precisamos atualizar o kernel do sistema devido à problemas no boot. No meu caso, após restaurar um sistema de uma máquina antiga para um servidor mais novo, através de uma imagem dd, tive problemas para bootar o sistema no novo servidor devido ao kernel do sistema antigo não identificar o novo hardware.

Para solucionar essa questão, tive que instalar um novo kernel do Linux no servidor novo. Para ajudar utilizei um Livecd do Ubuntu. Segue abaixo o procedimento que usei para instalar o novo kernel.

Procedimento

  • Bootar o Livecd do Ubuntu.
  • Instalação de um novo kernel no livecd.
  • $ sudo apt-get update
    $ sudo apt-get install linux-image

    Somente com o boot do livecd não temos todos os arquivos do kernel disponíveis em /boot. Para isso instalamos um novo kernel dentro do livecd. Após a instalação acima, o importante é verificar que o arquivo vmlinuz-<versao kernel> existe no diretório /boot e os módulos do kernel dentro de /lib/modules/<versao kernel>.

    Pode ser que ocorra um erro nesse processo de instalação do kernel no livecd. Ignore o erro e continue o processo, pois o que interessa são os arquivos vmlinuz e os módulos do kernel. (Mesmo com o erro eles são instalados corretamente).

  • Montando a partição de boot.
  • $ sudo mkdir /mnt/boot
    $ sudo mount /dev/sda1 /mnt/boot

    No caso acima o /dev/sda1 é a partição onde estão os arquivos de kernel do seu servidor e do gerenciador de boot do grub. É nesse diretório que vamos instalar o novo kernel.
    Lembre-se que o acesso às partições variam de acordo como esta instalado o seu Linux.

  • Montando a partição raiz.
  • $ sudo mkdir /mnt/raiz
    $ sudo mount /dev/sda2 /mnt/raiz

    No caso acima o /dev/sda2 é a partição root do seu sistema. Precisamos montar essa partição para copiar os módulos do novo kernel.
    Lembre-se que o acesso às partições variam de acordo como esta instalado o seu Linux.

  • Copiando os arquivos
  • $ sudo cp /boot/vmlinuz-<versao kernel> /mnt/boot/
    $ sudo cp /boot/System.map-<versao kernel> /mnt/boot/
    $ sudo cp -a /lib/modules/<novo versao kernel> /mnt/raiz/lib/modules/

    Copiando a imagem do kernel, o System.map e os módulos, respectivamente, para os diretórios do seu servidor Linux.

  • Criando o initrd
  • Temos que criar um novo initrd para o novo kernel. Vamos aproveitar o initrd do kernel atual do seu sistema Linux para criar o novo. O initrd vai ajudar o novo kernel montar corretmente a partição root do seu Linux.
    Perceba que removemos os módulos do kernel atual que esta no initrd antes de copiar os módulos do kernel novo.

    $ sudo mkdir ~/initrd
    $ cd ~/initrd
    $ sudo gzip -dc /mnt/boot/initrd.img-<versao kernel atual> | cpio -id
    $ sudo rm -rf lib/modules/<versao kernel atual>
    $ sudo cp -a /lib/modules/<novo versao kernel> lib/modules/
    $ find . | cpio --quiet --dereference -o -H newc | gzip -9 > /mnt/boot/initrd-<novo versao kernel>

  • Criando nova entrada no menu do grub
  • Para concluir nosso processo, vamos criar uma nova entrada no menu.lst do grub para que seja possível bootar o novo kernel. Edite o arquivo /mnt/boot/grub/menu.lst e inclua uma nova opção no menu:

    title Novo Kernel
    root (hd0,0)
    kernel /vmlinuz-<novo versao kernel> root=/dev/sda2 ro quiet
    initrd /initrd.img-<novo versao kernel>

  • Bootando o novo kernel
  • Pronto, você já esta pronto para testar o novo kernel e bootar corretamente o seu sistema Linux. Desmonte as partições e reinicie o sistema, dessa vez, boote sem o livecd. No menu do grub escolha a nova opção e boa sorte!

    $ sudo umount /mnt/boot/
    $ sudo umount /mnt/raiz/
    $ sudo shutdown -r now

  • Referências
  • http://askubuntu.com/questions/94156/installing-with-a-different-kernel
    http://www.indiangnu.org/2009/how-to-create-editextract-initrd-in-ubuntudebian-and-redhatfedora-linux/

Ler Post Completo | Make a Comment ( 2 so far )

Liked it here?
Why not try sites on the blogroll...