Em cada servidor Siebel existe uma pasta especial chamada "sistema de arquivos Siebel", um repositório de conteúdo não estruturado usado pelos aplicativos da Siebel que contém principalmente anexos, preferências do usuário e do sistema . Dentro do sistema de arquivos, existe uma pasta chamada att
, que armazena os dados binários em um formato compactado. Por exemplo, se meu servidor Siebel receber um email, os dados serão armazenados no banco de dados, mas os anexos de arquivo serão colocados dentro de att
.
Em nosso ambiente de produção Siebel 7.8, temos quase 2 milhões de arquivos dentro da pasta att
. Nosso sistema operacional (Solaris) pode gerenciar essa quantidade de arquivos, mas está começando a afetar o desempenho do servidor, por isso decidimos dividir att
em att_1
, att_2
, att_3
... O problema que estamos enfrentando é a falta de qualquer documentação da Siebel que cubra esse processo partição . Existe uma ferramenta para o Siebel 8.x, mas nada para o 7.x. Sabemos que há uma solução alternativa porque encontramos algumas fontes on-line discutindo isso:
Performance of Siebel file system
I have successfully implemented using a multiple filesystem approach: create multiple directories e.g. siebfile/att, siebfile/att1, etc. Then modify the DSFileSystem param on the ServerDataSrc profile to point to this new path with multiple filesystems, and set you OM to use enterprise filesystem parameter. FSM will not be used anymore. The first directory you specify in the parameter is read/write and all new attachments will be stored here, the others are read only and will contain the old archive files.
For example: DSFileSystem = \seblserver\filesystem\att,\seblserver\att2,\seblserver\att3
How to change directory structure of a Siebel Filesystem (Oracle support contract required to open the link)
This pre-8.1 multiple folder structure refers to a setup where first filesystem folder adds new files, and all subsequent folders contain older files in read-only mode. This workaround has been used in 7.8 deployments when there was a need to split the filesystem into different folders.
Enterprise parameter Filesystem: /write0/fs
Named subsystem parameter DSFilesystem: *FSM*,/read1/fs/att,/read2/fs/att,/read3/fs/att
In this setup, new files will be written only into the folder "/write0/fs/att". When retrieving a file, FSMsrvr is searching in all 4 folders /write0/fs/att, /read1/fs/att, /read2/fs/att and /read3/fs/att
Isso é exatamente o que fizemos, mas não está funcionando. O arquivo siebns.dat
é atualizado corretamente, o servidor é iniciado sem nenhum problema, e podemos acessar os arquivos dentro de att
e criar novos arquivos lá. Mas, se tentarmos abrir qualquer arquivo dentro de att_2
, att_3
..., receberemos uma mensagem de erro: O arquivo algo.txt não pode ser encontrado em nenhum sistema de arquivos especificado (SBL-UIF-00230) .
Então, esperamos que alguém que tenha feito o mesmo processo possa nos dizer qual etapa esquecemos.
Estes são os passos que seguimos até agora:
Crie as novas pastas att_1
, att_2
, etc, no mesmo local em que att
é. Eles são de propriedade do usuário siebel
e foram chmoded para 770
, assim como att
.
Divida os arquivos dentro de att
entre as novas pastas.
Crie um backup do nosso arquivo /opt/siebel/gtwysrvr/sys/siebns.dat
.
Execute o utilitário srvrmgr
e execute a próxima frase: change param DSFileSystem="*FSM*,/opt/siebel/fs/att_1,/opt/siebel/fs/att_2,/opt/siebel/fs/att_3,/opt/siebel/fs/att_4,/opt/siebel/fs/att_5" for named subsystem ServerDataSrc
Acesse o aplicativo Siebel e navegue até Configuração corporativa > Administrador de componentes em lotes > Sincronização. Selecione todos os componentes existentes e clique no botão Sincronizar.
Quando o processo de sincronização estiver concluído, reinicie tudo: servidor Siebel, servidor de gateway ... e, apenas no caso, o servidor da Web também.
Outras opções que tentamos, não fizeram diferença:
/opt/siebel/fs/att
em vez de *FSM*
(etapa 4). /opt/siebel/fs_1/att
, opt/siebel/fs_2/att
... em vez de um monte de att_N
dentro de /opt/siebel/fs
. FileSystem
na seção [ServerDataSrc]
do arquivo server publicsector.cfg. Alguma ideia? O que estamos perdendo?
Tags server-setup crm