A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Desafios práticos do Plone Interligação ao Oracle

Apresentações semelhantes


Apresentação em tema: "Desafios práticos do Plone Interligação ao Oracle"— Transcrição da apresentação:

1 Desafios práticos do Plone Interligação ao Oracle
1

2 COMEÇANDO PELO FIM... OS AGRADECIMENTOS
COMUNIDADE PARTICIPANTES DO EVENTO ORGANIZADORES DO EVENTO CLIENTES PARCEIROS TÉCNICOS

3 QUEM SOMOS? HISTÓRICO 1998 - Fundação
Consultoria para novas tecnologias 2001 – PPM e EPM 2003 – Portais e BI 2005 – ALM Case nacional de FSW 2009 – EAD 2011 – CPLS 2012 – Segurança biométrica e telemetria veicular ESTRUTURA e CERTIFICAÇÕES Centro de treinamento Nuvem privada Dezenas de técnicos especializados Mais de 70 certificações e especializações técnicas ITIL PMP Especialistas e Mestres A+ Microsoft CA TECNOLOGIAS E PARCEIROS Parceiros Urban Turtle CrossMatch Tecnologias e Produtos Plone CA Clarity Project TFS Moodle PHP Java .NET SERVIÇOS Integração Consultoria EPM e PPM Portais BI ALM Suporte Remoto e presencial EAD Elaboração e transcrição de treinamentos Treinamentos In Company Sob medida Alocação de especialistas 3

4 ACESSANDO DADOS A PARTIR DE UM PORTAL
NATIVO OU PRÉ-CONFIGURADO OUTROS MÉTODOS

5 ACESSO À BASE DE DADOS Acesso via ZOPE Plugins “nativos”: Gadfly
Nativo para: ZODB Plugins “nativos”: Gadfly Plugins “livres”: PostGree, SQLlite, MySQL... Bases proprietárias: Não tem conexão “out-of-the-box”. 5 5

6 PROBLEMAS PARA CONECTAR COM BD PROPRIETÁRIO
Poucos conectores Livres e Gratuitos Qualidade e Confiabilidade = $$$$ ZMySQLDA – MySQL Database Adapter for Zope Psycopg2 – PostgreSQL database adapter for the Python RelStorage – Solução que integra Mysql, PostgreSQL (via psycopg2), MySQL (via MySQLdb) e Oracle 10g, 11g (via cx_Oracle) 6

7 OPÇÕES PARA CONEXÃO COM BASES PROPRIETÁRIAS
eGenix mxODBC Zope DA - ODBC Database Adapter for Zope and Plone Preço unitário a partir de R$ , caindo de acordo com a quantidade de usuários Pagar pela conexão aumenta o TCO – Total Cost Ownership de uma solução, podendo inviabilizar a tecnologia. 7

8 Caso de uso de uma conexão de um portal plone com oracle
8

9 CENÁRIO PLONE 4.2 Banco de Dados: Oracle 11g Bases: 10 Sistemas: 54
Tabelas: 260 acessos simultâneos

10 CLIENTE STM - Superior Tribunal Militar O Que faz?
É o órgão da Justiça Militar do Brasil, composto por 15 Ministros. O Que faz? É o órgão especializado a aplicação da lei a militares federais - Marinha, Exército e Aeronáutica, julgando apenas e tão somente os crimes militares definidos em lei. Implantação do Plone Em 2009 foi implantado o Plone para dinamizar e facilitar a gerência de conteúdo do STM 10 10

11 CONTEXTO DO PLONE NO STM
Planejamento Estratégico O Planejamento Estratégico foi a consolidação do Plone dentro do STM. A estrutura da informação, facilidade para o acompanhamento de processos e evoluções no âmbito dos servidores e da organização pode-se perceber o potencial que a ferramenta poderia trazer também para o portal e a intranet do STM. Destacou-se através da facilidade no gerenciamento das informações. Durante o planejamento estratégico ficou mais fácil encontrar notícias constantemente atualizadas, assim como imagens de todos os eventos das auditorias militares de todo o Brasil, assim como acesso a áudio e vídeo. 11 11

12 REORGANIZANDO A CASA COMITÊ GESTOR
Foi criado graças ao Plone um comitê gestor, retirando a responsabilidade da equipe de informática sobre a gerência de conteúdo, onde os usuários da área de comunicação foram treinados e passaram a alimentar a ferramenta desafogando a equipe de informática. RE-ORGANIZAÇÃO DOS PORTAIS Após o planejamento, foi iniciado a reformulação dos portais juntamente com o comitê gestor do STM, o projeto esta caminhando para a segunda fase, onde todos os iframes estão sendo substituídos por page templates (integrado a base Oracle). 12 12

13 INTEGRAÇÃO AO ORACLE Uma das maiores surpresas das equipes técnicas foi constatar a rápida integração do Plone ao Banco de Dados Oracle. Há uma percepção de isolamento entre ferramentas livres e proprietárias. Esta integração trouxe facilmente novos adeptos ao Plone, ao portal e ao projeto. Os projetos que trabalham com apenas uma tecnologia, sem integrações, estão limitados em sua abrangência. Integrar ou não crescer! Um Pouco Sobre o processo de Integração ao Oracle Para a integração com o Oracle utilizamos : Products.SQLAlchemy cx_Oracle 13 13

14 PONTOS CHAVE PARA O SUCESSO DO PROJETO
Alinhamento técnico Capacitação e nivelamento do time envolvido Uso de melhores práticas para configuração do ambiente Correta análise de requisitos 14

15 PROCEDIMENTO INSTALANDO O CLIENT DO ORACLE NO LINUX 1. Download - instantClient para Linux Para realizar o download no site da oracle é necessário efetuar um cadastro gratuito html 15 15

16 DOWNLOAD 16 16

17 PACOTES 2. Os pacotes necessários para instalação do InstanteClient são: Instant Client Package - Basic: All files required to run OCI, OCCI, and JDBC-OCI applications Instant Client Package - JDBC Supplement: Additional support for XA, Internationalization, and RowSet operations under JDBC Instant Client Package - SQL*Plus: Additional libraries and executable for running SQL*Plus with Instant Client Instant Client Package - SDK: Additional header files and an example makefile for developing Oracle applications with Instant Client Instant Client Package - ODBC: Additional libraries for enabling ODBC applications 3. Crie o diretório /opt/oracle 17 17

18 ARQUIVOS 4. Após o Download dos arquivos, descompacte-os no diretório /opt/oracle unzip instantclient-basic-linux.x zip instantclient-odbc-linux.x zip unzip instantclient-jdbc-linux.x zip unzip instantclient-sdk-linux.x zip unzip instantclient-sqlplus-linux.x zip 5. Após a descompactação será necessário criar um link simbólico da lib principal, isto fará posteriormente com que o python compile o plugin de conxão ao Oracle. ln -s libclntsh.so.11.1 libclntsh.so 18 18

19 VARIÁVEIS DE AMBIENTE 6. Será necessário exportar algumas variáveis de ambiente export ORACLE_HOME=/opt/oracle/instantclient_11_2 TNS_ADMIN=$ORACLE_HOME/network/admin NLS_LANG="American_America.UTF8“ LD_LIBRARY_PATH==/opt/oracle/instantclient_11_2:$PATH: $ORACLE_HOME:$ORACLE_HOME/lib PATH=$ORACLE_HOME/bin:$PATH:$LD_LIBRARY_PATH 19 19

20 TNSNAMES.ORA 7. Crie o arquivo TNSNAMES.ORA - responsável pelas configurações de conexão ao Oracle no diretório: /opt/oracle/instantclient_11_2/admin 20 20

21 TNSNAMES.ORA (conteúdo)
DESENV.SEUSITE.COM = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = desenv.seusite.com)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = svc01) PROD.SEUSITE.COM = (ADDRESS = (PROTOCOL = TCP)(HOST = prod.seusite.com)(PORT = 1521)) (SERVICE_NAME = svc02)

22 TESTANDO 8. Teste a conexão ao oracle utilizando o componente sqlplus:
$ ./sqlplus 9.Se tudo ocorrer bem ao executar uma query de teste teremos o seguinte SQL> desc posts Name Null? Type ID NOT NULL NUMBER(38) TITLE VARCHAR2(50) BODY VARCHAR2(4000) CREATED DATE MODIFIED 22 22

23 INSTALANDO O PLUGIN 1. Entre no diretório onde esta instalado o Plone
cd /dir-da-instancia/zeoserver 2. Altere o arquivo buildout.cfg adicionando o plugin a diretiva Eggs: eggs = ... Products.SQLAlchemyDA 23 23

24 3. Execute o buildout ./bin/buildout -v
*************** PICKED VERSIONS **************** [versions] Products.SQLAlchemyDA = 0.5.1 SQLAlchemy = 0.7.7 zope.sqlalchemy = 0.7.1 z3c.sqlalchemy = 1.4.0 cx_Oracle = 5.1.1 *************** /PICKED VERSIONS *************** 24 24

25 4. O buildout irá retornar as versões dos componentes instalados, no final do arquivo buildout.cfg adicione as linhas de retorno na diretiva [version] com as respectivas versões como no exemplo abaixo: [versions] ... Products.SQLAlchemyDA = 0.5.1 SQLAlchemy = 0.7.7 zope.sqlalchemy = 0.7.1 z3c.sqlalchemy = 1.4.0 cx_Oracle = 5.1.1 25 25

26 CONTORNOS COMUNS 5. Caso ocorra erro ao baixar os pacotes via buildout, tente setar as variáveis do proxy de rede caso exista export http_proxy=proxy.seusite.com export http_proxy=proxy.seusite.com Caso ocorra o erro no buildout com o cx_oracle, vá no diretorio do python e instala-lo via easy_install. cd /usr/local/Plone/Python2.6/bin easy_install –U cx-oracle 26 26

27 CONTORNOS COMUNS 7. Caso continue dando erro tente fazer o download direto do pacote pypi.python.org/simple/cx_Oracle/ descompacte na pasta do python entre na pasta onde consta o arquivo setup.py e rode o comando. ../python setup.py install 8. Se tudo ocorrer bem ao subir a instância do plone como no exemplo abaixo. Reinicie a instância. 27 27

28 ZMI 1. Entre no Plone Site vá ao menu superior direito e adicione SQLAlchemyDA 28 28

29 CONFIGURAÇÃO DA CONEXÃO
2. Adicione as configurações de conexão 29 29

30 TESTE DA CONEXÃO 3. Faça o teste de consulta na base de dados 30 30

31 OUTROS DESAFIOS PARA O SUCESSO DAS SOLUÇÕES COM plone
31

32 PLONE – DOIS MUNDOS Benefit Rating: Moderate
Market Penetration: 5% to 20% of target audience Maturity: Adolescent Sample Vendors: Alfresco; Bricolage; Drupal; eZ Systems; KnowledgeTree; Magnolia; Nuxeo; OpenCms; Plone Foundation; Squiz; Typo3; Xaray Karen M. Shegda; Mick MacComascaigh

33 PLONE E OUTROS CMSs IDEALWARE: comparing_open_source_cms

34 EQUIPES Forte dependência de mão-de-obra especializada
COMO IDENTIFICAR PROFISSIONAIS CAPACITADOS? Não há um acessível, amplamente divulgado e crível programa de formação e avaliação de profissionais em PLONE. 34

35 PEQUENA SUGESTÃO... 35

36 MODELOS AMPLAMENTE ADOTADOS QUE DERAM CERTO
Outras comunidades também passaram por problemas similares PMI – PMP ITIL – Certificação ITIL BPMN – CBPP

37 SEGUINDO OS PASSOS DE SUCESSO DE OUTRAS COMUNIDADES
Mobilização da comunidade (comitê?) para a criação de um sistema de acreditação com dois eixos: Centros de formação Treinamentos certificados/validados Certificações 2 certificações – Infra e desenvolvedor

38 Obrigado! Herson Rodrigues Agradecimento especial ao
responsável técnico do projeto STM 38

39 Consultoria que respira inovação 39


Carregar ppt "Desafios práticos do Plone Interligação ao Oracle"

Apresentações semelhantes


Anúncios Google