segunda-feira, 11 de agosto de 2008

Usando o Domino LDAP com Websphere Portal 6.1 (Parte I - Instalando o Lotus Domino)

Em continuação ao post sobre a instalação do Websphere Portal V6.1, este irá tratar sobre a integração do Lotus Domino com o Websphere Portal, tanto no que diz respeito a utilização do LDAP, quanto a integração do correio.

Nesta primeira parte estarei fazendo a instalação do Lotus Domino na mesma VM (máquina virtual) que montei para o Webphere Portal. É importante lembrar que esse ambiente que montei não serve para produção, somente para testes e demonstrações.

Utilização do Domino como LDAP

Muitas empresas não gostam de utilizar o Lotus Domino como serviço de diretório para outros produtos, pois tem a percepção que irão "bagunçar" o diretório de correio, o que irá complicar quando um usuário de correio for mandar um e-mail. Isso realmente pode acontecer se não for criada uma estratégia de diretório, mas isso pode acontecer para qualquer diretório. Não adianta utilizar um IBM Director Server ou um MS-AD se não existir uma política definida de diretório.

A utilização do Lotus Domino como LDAP traz algumas facilidades, como o fácil gerenciamento dos usuários e a possibilidade de customizações rápidas no ambiente, como a criação de campos adicionais. Para facilitar a adoção do domino como LDAP, uma sugestão é separar os servidores de correio do servidor de diretório, ou seja, criar um novo servidor Lotus Domino que será utilizado como servidor de LDAP.

Um das principais reclamações, que geralmente escuto, é a criação de novos grupos necessários para outros sistemas. A minha ideia é: "após a criação deste novo servidor, desabilitar a replicação dos grupos entre os servidores, assim o servidor de diretório fica livre para alterações que não irão influenciar o ambiente de correio".

Abaixo eu coloquei um desenho que pode ser adotado para uma arquitetura de diretório utilizando o Lotus Domino:

arquitetura_Domino

Figura 01 - Separando o LDAP do Cluster de Correio

É importante lembrar que as regras de replicação do Lotus Domino são bastante flexíveis e você pode cancelar a replicação de outros tipos de documentos, como configurações do Web Server.

Neste ambiente de DEMO que estou montando, escolhi o Lotus Domino como diretório por alguns motivos:

  1. Terei um servidor único com correio e diretório;
  2. Posso criar aplicações para integração com Websphere Portal; e
  3. A administração do ambiente fica muito simplificada, visto que posso administrar o Lotus Domino via Browser.

Instalação do Lotus Domino no Linux

A instalação do Lotus Domino no Linux pode ser feita através do modo console (sem interface gráfica) ou através de interface gráfica. Aqui estou utilizando a interface gráfica e vocês poderão notar que os passos de instalação são muito parecidos aos do MS Windows.

SNAG-0013 Após iniciar o programa de instalação, será apresentada a tela de abertura, clique em NEXT para continuar.
SNAG-0014 Aceite o contrato do software e clique em NEXT.
SNAG-0015 Se você já tem um Lotus Domino instalado no sistema, nessa tela você poderá selecionar somente a opção de instalação de um novo diretório data, ou seja, você poderá ter vários servidores Lotus Domino rodando em um único sistema. No meu caso é uma instalação inicial, tanto do programa quanto do diretório de dados, então não selecionei essa opção. Clique em NEXT para continuar.
SNAG-0016 Informe qual será o diretório de instalação dos binários do Lotus Domino. Nesta tela também existe a opção da instalação particionada. Se você selecionar essa opção, poderá instalar várias partições do Lotus Domino. Como estarei utilizando o servidor para correio e diretório, não selecionei essa opção. Clique em NEXT para continuar.
SNAG-0017 Informe a localização do diretório data. É importante lembrar que a instalação do Lotus Domino em sistemas UNIX requer a criação de um usuário e um grupo específico e o diretório home deste usuário deverá ser o mesmo diretório que você está selecionando como data. Clique em NEXT.
SNAG-0018 Informe o nome do usuário e grupo que foram criados para o Lotus Domino. Clique em NEXT para continuar.
SNAG-0019 Uma diferença entre a instalação em sistema UNIX e Windows é o modo de configuração. Enquanto no Windows quando é feita a configuração no primeiro start do Lotus Domino, em ambiente UNIX devemos fazer isso remotamente. Essa tela é justamente para selecionar se você deseja que o programa de instalação execute o serviço de configuração remota automaticamente ou não. Para facilitar deixe a opção REMOTE selecionado, assim o programa de instalação executará a tarefa de configuração automaticamente. Clique em NEXT.
SNAG-0020 Selecione o tipo de instalação e clique em NEXT.
SNAG-0021 Após isso será apresentado um resumo das opções selecionadas, clique em NEXT para iniciar a instalação.

Se a instalação terminar com sucesso, será apresentada uma tela (que esqueci de capturar) com essa informação e se você selecionou a opção REMOTE no modo de configuração, quando clicar em FINISH o programa de instalação irá executar o configurador do Lotus Domino em modo remoto.

Configurando o Lotus Domino no Linux

Com a tarefa de configuração ativa no servidor, você poderá utilizar o REMOTE SERVER SETUP, que é instalado junto com o Lotus Notes. Esse programa tem a função de configurar o servidor Lotus Domino via acesso remoto. Veja os passos abaixo:

SNAG-0092 Informa o IP ou Hostname do servidor onde foi instalado o Lotus Domino e clique em OK.
SNAG-0022 A próxima tela é mais informativa, onde você poderá também escolher a fonte do programa de configuração caso a configuração padrão não esteja muito boa. Clique em NEXT para continuar.
SNAG-0023

Como estamos montando um único servidor, estou selecionando a primeira opção "stand-alone server". A segunda opção é utilizada caso você queira adicionar um novo servidor Lotus Domino ao seu ambiente, lembre que nesse caso esse servidor adicional deverá estar registrado no Lotus Domino principal. Clique em NEXT.

SNAG-0024 Em "server name" informe qual será o nome do servidor Lotus Domino. No meu caso, coloquei como nome "domino". No próximo campo você pode colocar uma descrição para esse servidor. Clique em NEXT.
SNAG-0025 Quando você está configurando um servidor Lotus Domino é necessário informar qual é o nome da organização. Geralmente usamos o nome da empresa, mas também pode ser usado qualquer outro nome. Abaixo você irá informar uma senha, pois o programa de configuração irá criar um arquivo de ID para essa organização e esse será utilizado em várias tarefas, como por exemplo o registro de usuários. Clique em NEXT.
SNAG-0026 Como estamos criando um servidor "stand alone" é necessário informar qual será o nome do domínio Domino. Geralmente usamos o mesmo nome colocado em organization name. Clique em NEXT.
SNAG-0027 Essa tela é para informar o nome e senha do administrador do seu servidor Lotus Domino. Após preencher as informações clique em NEXT.
SNAG-0028 Nessa tela você poderá escolher quais são os serviços que irão ser executados quando o Lotus Domino for inicializado. Você pode selecionar os grandes grupos apresentado na tela ao lado ou utilizar o botão "Customize..." para selecionar cada um dos serviço. Na minha instalação eu utilizei a opção de customização e selecionei o LDAP, HTTP e DIOP que são necessários para a integração com o Websphere Portal. Clique em NEXT para continuar
SNAG-0029 Nessa tela é onde você irá selecionar quais são as portas de rede que serão utilizadas pelo Lotus Domino para comunicação e qual é o Host name. Novamente escolhi a opção de "Customize...". Para a porta selecionei somente a TCP/IP e o nome do hostaname no meu caso é "portal.lotus.com.br". Clique em NEXT para continuar.
SNAG-0030 Para uma maior segurança de seus dados do servidor Lotus Domino, deixa as opções default e clique em NEXT.
SNAG-0031 Nesta tela você poderá selecionar a opção para gravar um cópia do server.id e cert.id na sua máquina. Se você não fizer isso, esses ids serão criado e gravados somente no servidor. Clique em NEXT para continuar.
SNAG-0032 Esta tela apresenta um resumo das opções selecionadas. Clique em Setup para que o programa de configuração configure o Lotus Domino.
SNAG-0033

Se não ocorrer nenhum erro você verá a mensagem ao lado. Clique em Finish para encerrar o programa de configuração.

Script de Inicialização do Lotus Domino

Um diferença do Windows para ambientes UNIX é que você deverá criar um script para inicialização do Lotus Domino, isso não é obrigatório, mas facilita a tarefa de iniciar e parar o servidor. Aqui estou colocando o script que utilizo e você poderá ver que é muito simples.

#!/bin/sh
#
# start/stop/restart the Lotus Domino server
#
# Usage: /etc/init.d/domino start|stop|restart

DOMINO_USER="notes"
DOMINO_DATA_DIR="/local/data"
DOMINO_BIN_DIR="/opt/ibm/lotus/bin"
DOMINO_ENABLE_LOG="true"
DOMINO_LOG_FILE="/var/log/domino"
ULIMIT_VAL="20000"

# Are we root?

if [ `id -u` != 0 ] ; then
    echo "This script must be run as root"
    exit 1
fi

case $1 in

  start)
    echo -n "Starting Domino server "
    ulimit -n $ULIMIT_VAL

    if [ "$DOMINO_ENABLE_LOG" == "true" ] ; then
        # Version with logfile
        echo "(using $DOMINO_LOG_FILE as logfile)... "
        su - ${DOMINO_USER} -c "cd $DOMINO_DATA_DIR;\
        ${DOMINO_BIN_DIR}/server" >> $DOMINO_LOG_FILE 2>&1 &
    else
        # Version without logfile
        echo "(log is disabled)... "
        su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR};\
        ${DOMINO_BIN_DIR}/server" > /dev/null 2>&1 &
    fi
    #For RedHat
    touch /var/lock/subsys/domino
    exit 0
    ;;

  stop)
    if [ "$DOMINO_ENABLE_LOG" == "true" ] ; then
        echo -n "Stopping Domino server. "
        su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR}; ${DOMINO_BIN_DIR}/server -q" >> $DOMINO_LOG_FILE 2>&1
    else
        echo -n "Stopping Domino server. "
        su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR}; ${DOMINO_BIN_DIR}/server -q" > /dev/null 2>&1
    fi
    echo "Exit Code is: $?. "
    #For RedHat
    rm -f /var/lock/subsys/domino
    exit 0
    ;;

  restart)
    if [ "$DOMINO_ENABLE_LOG" == "true" ] ; then
        echo "Restarting Domino server. "
        su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR};\
                   ${DOMINO_BIN_DIR}/server -c \"restart server\""  >> $DOMINO_LOG_FILE 2>&1 &
    else
        echo "Restarting Domino server. "
        su - ${DOMINO_USER} -c "cd ${DOMINO_DATA_DIR};\
                   ${DOMINO_BIN_DIR}/server -c \"restart server\""  > /dev/null 2>&1 &
    fi
    exit 0
      ;;

  *)
    echo "Usage: `basename $0` {start|stop|restart}"
    exit 1
    ;;

esac

exit 0

Neste script os valores em vermelho devem ser alterados de acordo com seu ambiente. Ele deverá ser executado pelo usuário root ou por um usuário com poderes administrativos.

Para facilitar eu criei na área de trabalho do meu ambiente atalhos que executam esse script. Veja abaixo:

Função Comando
dominoICON Iniciar o Lotus Domino /opt/ibm/lotus/dominoLINUX start
dominoSTOP Parar o Lotus Domino /opt/ibm/lotus/dominoLINUX stop
news-blog Ver o log do Lotus Domino tail -f /var/log/domino

Esses são os passos para a instalação e configuração do Lotus Domino em ambiente UNIX. O próximo passo para esse ambiente é a configuração do Lotus Domino para trabalhar com o Websphere Portal.

O modelo desta instalação é genérico, e poderá ser utilizado para a criação de um ambiente Lotus Domino em sistema UNIX.

9 comentários:

Andre Rodrigues disse...

Edson

Não tem nada a ver com o artigo atual que você escreveu,mas você já viu alguma funcionalidade de compartilhar address book no notes igual é feito no outlook a partir da versão 7 para cima ? Você pode recomendar algum artigo ?

Dei umas pesquisada na net e não achei nada ainda.

Edson Oliveira disse...

André, se você diz em compartilhamento do Address Book pessoal, isso pode ser feito colocando uma réplica dele em um servidor Domino.

Se não for isso que você está procurando, avise-me.

Até +,

Andre Rodrigues disse...

Edson,

Primeiro , obrigado pelo retorno.Eu contornei a situação dando acesso na database do gerente para a secretária e ela acessando via webmail para realizar a manutenção dos contatos.

Pelo que percebi na versão 8 existe a possibilidade de compartilhar o address book sem necessidade de se criar address books no servidor.Não sei sua opnião, mas seria mais fácil a administração ao invés de se criar diversos shared address books.

Quando conseguir fazer os testes compartilho com você.

Muito Obrigado pela atenção !

Anônimo disse...

Edson muito bom artigo. Já configurei alguns portais com com Domino e uma situação que ocorre muito é que muitas empresas utilizam somente o LastName como nome do usuário.Outro "problema" que já tive de contornar foi a Organization ou certificado do cliente tendo espaço no nome tipo "Nome da Empresa". Antes de usar Domino como LDAP vale pena observar estas questões também.
Como sugestão, você poderia escrever aqui como fazer SSO com Domino quando o Portal usa um LDAP diferente tipo o ITDS ou MSAD. Isto influencia em produtos como o Sametime e o Quickr quando integramos estes produtos no Portal.

Edson Oliveira disse...

Obrigado pelo comentário Kenio, pode deixar que vou pensar em fazer o post que você sugeriu.

Unknown disse...

Bom dia Edson.

Meu chefe me pediu para fazer um manual de instalação/desenvolvimento de aplicações domino no websphere portal 6.1.
Pesquisei na web mas não achei. vc sabe me dizer se existe algo do tipo ou, vc teria algo assim para me arrumar?

Obrigado pela força e parabéns pelo blog.

Valdenir

Edson Oliveira disse...

Valdenir,

tudo bom?

Não existe o conceito de instalar uma aplicação no Websphere Portal e sim o de integrar. Aqui vai o link de um Wiki da Lotus que mostra como fazer essas integrações, existem outras maneiras como a utilização do Websphere Application Integrator Portlet.

http://www-10.lotus.com/ldd/pfwiki.nsf/dx/search.htm?opendocument&q=domino

Qualquer dúvida avise-me.

Até +,

Unknown disse...

Ola

Você já fez a integração entre Inotes e Active Directory?

marcio@iberianet.com.br

Marcio

Edson Oliveira disse...

Não Marcio, mas você pode estar olhando o AD Sync. Essa é uma tarefa do servidor domino.

Até +,