LPS:Portal6

Z HelpDesk


ZČU Portal V2

Odkazy na dokumentaci



Obecne informace a architektura

  • Pro dosažení maximální dostupnosti mohou být data distribuována do více databází a sdílena mezi více produkčními liniemi. Vaše data jsou rozdělena do čtyř kategorií. Musíte se rozhodnout, jak mají být jednotlivé kategorie rozděleny do různých databází:
  • V určitých situacích je možné, že si budete přát nainstalovat prázdný portál, kde WebSphere Portal je nainstalován normálně, ale nejsou nainstalovány nebo implementovány žádné portlety a nejsou vytvořeny ani žádné stránky. To může být užitečné, pokud si přejete přenést celou konfiguraci portálu z jednoho portálu na jiný. Můžete například chtít přenést portál ze svého testovacího prostředí do produkčního prostředí.
UNIX: ./install.sh -W emptyPortal.active="True"

A co na to Jan Tleskač?

  • zapnout site analyzer $WPS/shared/app/config/services/SiteAnalyzer.....
  • vymazat hesla zkonfiguraku a zapamatovat si je
  • vymyslet jak to bude s adminama: superuser vs. cn=wpsadmins,ou=groups
  • nainstalovat certifikaty ZCU CA
  • vyklonovat portal i s DB
  • nastavit zalohovani
  • postelovat porty || presmerovani || predrazeny server
  • zamyslet se nad 3rd party auth pomoci webauthu (apache2 vs. javawebauth)
  • webove statistiky
  • zkonfigurovat login pouze pres ssl
  • vymyslet nejakou vhodnou metodu pro uchovavani zaznamu o konfiguracnich zmenach

postup instalace

Instalace WAS a WPS

  • U všech operačních systémů Linux je před instalací portálu WebSphere Portal potřeba knihovna sdílených objektů libstdc++-3.3.3-41
  • WebSphere Portal Verze 6.0 vyžaduje povolení XA pro všechny komponentové zdroje dat a ovladače JDBC. << hmm tomu nerozumim
  • v systemu nastavit:
    • ulimit na pocet otevrenych souboru (FAI.DEV)
    • exportovat promenou LD_ASSUME_KERNEL kvuli imitaci SUSE; a zrejme kuli spravnemu vyberu ABI libc6 (FAI.DEV)
    • imitovat SUSE
cat << __EOF__ >> /etc/profile
ulimit -n 20240
alias was='cd /opt/WebSphere/AppServer'
alias waslog='cd /opt/WebSphere/AppServer/logs'
alias wps='cd /opt/WebSphere/PortalServer'
alias wpslog='cd /opt/WebSphere/PortalServer/log'
export LD_ASSUME_KERNEL=2.4.19
__EOF__
cat << __EOF__ >> /etc/bodik-release
SUSE
VERSION = 9
__EOF__
  • priponastavit certifikat CA pro radkoveho klienta ldapsearch (pro kontrolni ucely)
echo "TLS_CACERT /etc/ldap/ZCUrootCA.pem" >> /etc/ldap/ldap.conf
  • pridat iptables java hack, nedokazu presvedcit javu aby si nic neposilala sama sobe po verejnem rozhrani
iptables -A INPUT -s 147.228.52.49 -d 147.228.52.49 -j ACCEPT
  • pridat init.d/portal (TODOFAI.DEV)
  • porozbalovat CDcka a spustit ./install.sh; proslo celkem bez problemu, nakonci ceka nainstalovany WAS, WPS v podobe server1 a WebSphere_Portal

Migrace databazovych dat

portal6 pouziva nekolik datovych ulozist

  1. DB - release, customization, community, FeedBack(analyticka data o vyuziti portalu), Likemins(??), WMM(autorizacni data), jcr(db obsahu?;icm)
  2. LDAP/adresar - autentizacni a identity
  3. konfiguracni - soubory na disku

konfiguruji se v $WPS/config/wpconfig.props a $WPS/config/wpconfig_dbdomain.props, ...

  • zapnout FEEDBACK, resp vytvorit jeji databazi, aby byla prenesena tez a nemusela se inicializovat az bude nekdy treba (asi zbytecne ;)
$ EDIT $WPS/config/wpconfig.properties a dodat hesla pro konfiguracni ulohy
$ ./WPSconfig.sh (feedback-database|setup-feedback)
$ EDIT $WPS/shared/app/config/FeedBack.properties
  • vytvorit databazi a potrebna schemata v oracle, a pridelit potrebna opravneni
# db_block_size = 8192
# !!!!!db_cache_size = 300M # v devitce nefunguje, zrejme obsolete
# db_files = 1024
# log_buffer = 65536
# open_cursors = 1500
# pga_aggregate_target = 200M # maximalni velikost pameti pro jeden uzivatelsky proces
# pre_page_sga = true # shared global area ... jakasi spolecna sdilena pamet ;))
# processes = 300
# shared_pool_size = 200M
#
######uzivatele pro data portalu
create user releaseusr identified by aaaaaa default tablespace USR_DATA temporary tablespace TMP; 
create user commusr identified by aaaaaa default tablespace USR_DATA temporary tablespace TMP;
create user custusr identified by aaaaaa default tablespace USR_DATA temporary tablespace TMP;
create user wmmdbusr identified by aaaaaa default tablespace USR_DATA temporary tablespace  TMP;
create user feedback identified by aaaaaa default tablespace USR_DATA temporary tablespace TMP;
create user lmdbusr identified by aaaaaa default tablespace USR_DATA temporary tablespace TMP;
#
######uzivatel pro data obsahu JCR (no dobra icmadmin je trosku schyza :)
create user icmadmin identified by aaaaaa default tablespace USR_DATA temporary tablespace TMP;
###jako SYSDBA provest vytvoreni specialnich tablespacu
cat << __EOF__ >> /tmp/jcr_tablespaces.sql
define jcrdb = WPS6;
define logfile = /tmp/icmjcr.log;
define dbpath = /home/oracle/data;
spool &logfile;
whenever sqlerror exit sql.sqlcode rollback;
--CONNECT &&dbadmin/&&password;
create tablespace ICMLFQ32 datafile '&dbpath./&jcrdb./&jcrdb._ICMLFQ32_01.dbf' size 300M reuse \
 autoextend on next 10M maxsize UNLIMITED extent management local autoallocate;
create tablespace ICMLNF32 datafile '&dbpath./&jcrdb./&jcrdb._ICMLNF32_01.dbf' size 25M reuse \
 autoextend on next 10M maxsize UNLIMITED extent management local autoallocate;
create tablespace ICMVFQ04 datafile '&dbpath./&jcrdb./&jcrdb._ICMVFQ04_01.dbf' size 25M reuse \
 autoextend on next 10M maxsize UNLIMITED extent management local autoallocate;
create tablespace ICMSFQ04 datafile '&dbpath./&jcrdb./&jcrdb._ICMSFQ04_01.dbf' size 150M reuse \
 autoextend on next 10M maxsize UNLIMITED extent management local autoallocate;
create tablespace ICMLSNDX datafile '&dbpath./&jcrdb./&jcrdb._ICMLSNDX_01.dbf' size 10M reuse \ 
 autoextend on next 10M maxsize UNLIMITED extent management local autoallocate;
spool off;
exit;
__EOF__
grant select on dba_pending_transactions to releaseusr;
grant connect, resource to releaseusr;
grant select on dba_pending_transactions to commusr;
grant connect, resource to commusr;
grant select on dba_pending_transactions to custusr;
grant connect, resource to custusr;
grant select on dba_pending_transactions to wmmdbusr;
grant connect, resource to wmmdbusr;
grant create session, alter session, create table,create view,create procedure, create trigger, \
  create library,create tablespace, alter tablespace, drop tablespace, execute any procedure, \
  unlimited tablespace, create public synonym,drop public synonym, create sequence to icmadmin;  
grant select on dba_pending_transactions to icmadmin;
grant connect, resource to icmadmin;
grant insert any table to icmadmin;
grant select on dba_pending_transactions to feedback;
grant connect, resource, create session to feedback;
grant select on dba_pending_transactions to lmdbusr;
grant connect, resource, create session to lmdbusr;
grant insert any table to lmdbusr;
  • databazove ruznosti a uzitecnosti
select tablespace_name from dba_tablespaces;
alter user hehe identified by hesloveslo;
  • sehnat JDBC ovladace pro oracle, bud na strankach http://www.oracle.com, nebo ukradnout z nejakeho databazoveho stroje (budiz mi technologickou nekazni ze jsem pouzil 10tkove ovladace pro 9tkovou databazi)
/opt/jdbc/10gR2
/opt/jdbc/9.2
  • nastavit nove parametr datovych ulozist, zvalidovat konfiguraci a prenest data
$ EDIT wpconfig.properties; EDIT wpconfig_dbdomain.properties, EDIT wpconfig_dbtype.properties
$ ./WPSconfig.sh validate-database-connection-(wps|jcr|feedback|likeminds|wmm,?...?)
$ ./WPSconfig.sh validate-database-driver
$ ./WPSconfig.sh database-transfer
  • udelat otisk/zalohu databaze a portalu >> WPS6.oracleinit.tgz


Konfigurace zabezpeceni

  • portal podporuje 4 typy autentizace: form-based, certifikatem, 3ti stranou (nicmene trosku programovaci zbesilost; TODO), pomoci specialniho URL
  • umoznuje slozit identitu v portale z dat z nekolika zdroju. typicky LDAP + LookAside DB, to v pripade ze nechceme mit nastaveni uzivatelskych profilu v adresari
  • poskytovani sluzeb v domene identit provadi WebSphere Member Manager. dokaze namapovat atributy pro portalovou identitu z ruznych zdroju. Konfiguruje se ve $WAS/wmm/wmm.xml, $WAS/wmm/wmm_LDAP_LA.xml. Zbytek jsou prevazne predlohy (aspon myslim).
  • adresar musi obsahovat minimalne PortalAdminId a PortalAdminGroupID (nejlepe PAGID e (PAID, ..)), pro content mgmnt jeste wpsContentAdministrators a wpsDocReviewer; taky se hodi wpsBindUser, uzivatel pod kterym se budou provadet vyhledavaci operace nad adresarem
  • v pripade portal6 to budou specialne identity dodane primo ldapem, a konta zalozena v KRB kvuli zmenam hesel:
uid=wpsadmin6,ou=users,ou=portal,ou=services,dc=zcu,dc=cz
uid=wasadmin6,ou=users,ou=portal,ou=services,dc=zcu,dc=cz
uid=wpsbind6,ou=users,ou=portal,ou=services,dc=zcu,dc=cz
cn=wpsadmins6,ou=groups,ou=portal,ou=services,dc=zcu,dc=cz
---cut SystemOut.log---
[3/1/07 21:54:12:826 CET] 0000000a WSMM Message  E 
 com.ibm.ws.wmm.MemberRepositoryManager API:   
 getMember(MemberIdentifier memberId, StringSet attributeNames, String context)
 The profile  repository did not return a external identifier.

[3/1/07 21:54:12:918 CET] 0000000a Servlet       E 
 com.ibm.wps.engine.Servlet init EJPFD0016E: Initialization of service failed.
 com.ibm.wps.ac.DomainAdministratorNotFoundException: EJPSB0107E: 
  Exception occurred while retrieving the identity of the domain adminuser/admingroup  
  uid=wpsadmin6,ou=users,ou=portal,ou=services,dc=zcu,dc=cz. at ...
---cut SystemOut.log---
  • zkonfigurovat: zastavit servery, vypnout zabezpeceni, zapsat nove identity do konfiguracnich souboru, importovat certifikaty do ulozist (zde kolekce DefaultSSLSetting; a nejlepe vsude protoze instalacni manual je trosku nepresny rekl bych), zvalidovat nastaveni adresare
$ stopServer.sh WebSphere_Portal
$ stopServer.sh server1
$ $WAS/bin/ikeyman.sh $WAS/profiles/wp_profile/etc/DummyServerTrustStore.jks << ZCUrootCA
$ $WAS/bin/ikeyman.sh $WAS/profiles/wp_profile/etc/DummyClientTrustStore.jks << ZCUrootCA
$ $WAS/bin/ikeyman.sh $WAS/java/jre/lib/security/cacerts << ZCUrootCA
$ ./WPSconfig.sh disable-security
$ EDIT wpconfig.properties
$ echo "LDAPsslEnabled=true" >> wpconfig.properties # navic ale jdeme rovnou na SSL Ldap
$ EDIT $WAS/wmm/wmm_LDAP_LA_SO.xml # oprava sslTrustStore, a ssl
$ EDIT $WAS/wmm/wmmLDAPAttributes_SO.xml # oprava atributu pluginAtTributeName
$ # mimodek nainstalovat FixPack1 ;)
$ # a zapnout si docasne wmmApp trace
  com.ibm.websphere.wmm.*=all=enabled:com.ibm.ws.wmm.*=all=enabled:WSMM=all=enabled
$ ./WPSconfig.sh enable-security-ldap
$ restartServer.sh (WebSphere_Portal|server1)
  • udelat otisk/zalohu databaze >> WPS6001.ldapinit.tgz
  • a ziskali sme portal ve verzi:
Name              IBM WebSphere Portal MultiPlatform
Version           6.0.0.1
ID                MP
Build Level       wp6001_072_02
Build Date        11/20/2006