Arquivo de Propriedades do Servidor

O arquivo de propriedades do servidor contém várias propriedades que definem configurações diferentes para o servidor, como configurações de rastreio, criação de log e configuração de segurança. O arquivo de propriedades do servidor é usado pelo serviço de catálogo e pelos servidores de contêiner em servidores independentes e também em servidores hospedados no WebSphere Application Server.

Amostra do Arquivo de Propriedades do Servidor

É possível usar o arquivo sampleServer.properties que esteja no diretório wxs_home/properties para criar seu arquivo de propriedades.

Especificando um Arquivo de Propriedades do Servidor

Especificar uma configuração ao usar um dos itens recentes na lista substitui a configuração anterior. Por exemplo, se você especificar um valor de propriedade de sistema para o arquivo de propriedades do servidor, as propriedades nesse arquivo substituirão os valores no arquivo objectGridServer.properties que estiver no caminho de classe.

Propriedades do Servidor

Propriedades Gerais
enableMBeans
Ativa os beans gerenciados (MBeans) do contêiner ObjectGrid. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo.

Padrão: true

haManagerPort
Especifica o número da porta que o gerenciador de alta disponibilidade usa. Se essa propriedade não for configurada, uma porta livre não será escolhida. Essa propriedade é ignorada nos ambientes WebSphere Application Server.
JMXConnectorPort
Define a porta Secure Sockets Layer (SSL) à qual o serviço Java Management Extensions (JMX) se conecta.
JMXServicePort
Especifica o número da porta na qual o servidor MBean recebe a comunicação com Java Management Extensions (JMX). A propriedade JMXServicePort especifica a porta não SSL para o JMX. Você deve usar um número da porta diferente para cada JVM na configuração. Se desejar usar JMX/RMI, especifique explicitamente JMXServicePort e o número da porta, mesmo se desejar usar o valor de porta padrão. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo. (Necessário somente para ambientes independentes.)

Padrão: 1099 para servidores de catálogos

jvmStatsFileName
Especifica o nome do arquivo de estatísticas CSV para a JVM.

Padrão: jvmstats

jvmStatsLoggingEnabled
Quando configurado para true, permite que os dados de log da JVM sejam gravados em um arquivo CSV.

Padrão: true

jvmStatsWriteRate
Especifica a taxa de gravação dos arquivos de estatísticas CSV para a JVM em gravações por segundo.

Padrão: 10

listenerHost

Especifica o nome do host ao qual o Object Request Broker (ORB) se conecta para comunicação com o Internet Inter-ORB Protocol (IIOP). O valor deve ser um nome de domínio ou endereço IP completo. Se sua configuração envolver diversas placas de rede, configure o host e a porta do listener para permitir que o Object Request Broker na JVM conheça o endereço IP para o qual se ligar. Se você não especificar qual endereço IP usar, sintomas tais como tempos limites de conexão, falhas de API incomuns e clientes que parecem ser interrompidos podem ocorrer.

listenerPort
Especifica o número da porta ao qual o Object Request Broker (ORB) se conecta. Esta configuração define que contêineres e clientes se comunicam com o serviço de catálogo por meio do ORB. No WebSphere Application Server, a listenerPort é herdada pela configuração de porta BOOTSTRAP_ADDRESS. Esta propriedade se aplica ao servidor de contêiner e ao serviço de catálogo.

Padrão: 2809

mapStatsFileName
Especifica o nome do arquivo de estatísticas CSV para o mapa.

Padrão: mapstats

mapStatsLoggingEnabled
Quando configurado para true, permite que os dados de log dos mapas no servidor sejam gravados em um arquivo CSV.

Padrão: true

mapStatsWriteRate
Especifica a taxa de gravação dos arquivos de estatísticas CSV para o mapa em gravações por segundo.

Padrão: 10

maxJVMStatsFiles
Indica o número máximo de arquivos de estatísticas CSV que são gerados para a JVM.

Padrão: 5

maxJVMStatsFileSize
Indica o tamanho máximo do arquivo, em megabytes, dos arquivos de estatísticas CSV para a JVM.

Padrão: 100

maxMapStatsFileSize
Indica o tamanho máximo do arquivo, em megabytes, dos arquivos de estatísticas CSV para o mapa.

Padrão: 100

maxOGStatsFiles
Indica o número máximo de arquivos de estatísticas CSV que são gerados para a instância do ObjectGrid.

Padrão: 5

maxOGStatsFileSize
Indica o tamanho máximo do arquivo, em megabytes, dos arquivos de estatísticas CSV para a instância do ObjectGrid.

Padrão: 100

maxMapStatsFiles
Indica o número máximo de arquivos de estatísticas CSV que são gerados para o mapa.

Padrão: 5

maxThreads
Especifica o número máximo de encadeamentos utilizados pelo conjunto de encadeamentos interno no tempo de execução para evictores integrados e operações de DataGrid.

Padrão: 50

minThreads
Especifica o número mínimo de encadeamentos utilizados pelo conjunto de encadeamentos interno no tempo de execução para evictores integrados e operações de DataGrid.

Padrão: 10

ogStatsFileName
Especifica o nome do arquivo de estatísticas CSV para a instância do ObjectGrid.

Padrão: ogstats

ogStatsLoggingEnabled
Quando configurado para true, permite que os dados de log da instância do ObjectGrid no servidor sejam gravados em um arquivo CSV.

Padrão: false

ogStatsWriteRate
Especifica a taxa de gravação dos arquivos de estatísticas CSV para a instância do ObjectGrid em gravações por segundo.

Padrão: 10

serverName
Configura o nome do servidor que é usado para identificar o servidor. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo.
systemStreamToFileEnabled
Permite que o contêiner grave SystemOut, SystemErr e a saída de rastreio em um arquivo. Se a propriedade for configurada para false, a saída não será gravada em um arquivo e será gravada no console.

Padrão: true

traceFile

Especifica um nome de arquivo para gravar informações de rastreio. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo. Exemplo: ../logs/c4Trace.log

traceSpec
Ativa o rastreio e a cadeia de especificação de rastreio para o servidor de contêiner. O rastreio é desativado por padrão. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo. Exemplos:
  • ObjectGrid=all=enabled
  • ObjectGrid*=all=enabled
workingDirectory
Especifica o local para onde a saída do servidor de contêiner é gravada. Quando esse valor não é especificado, a saída será gravada em um diretório log dentro do diretório atual. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo.

Padrão: Nenhum valor

zoneName
Configura o nome da zona à qual o servidor pertence. Essa propriedade se aplica ao servidor de contêiner e ao serviço de catálogo.
Propriedades do Servidor de Contêiner
catalogServiceEndPoints
Especifica os pontos de extremidade para conectar ao domínio do serviço de catálogo. Este valor deve estar no formato host:port,host:port. Este valor do host é o valor listenerHost e o valor da porta é o valor listenerPort do servidor de catálogos. Esta propriedade se aplica apenas a um servidor de contêiner.
enableXM
Quando configurado para true, ativa o IBM® eXtremeMemory no servidor e configura o servidor para usar o IBM eXtremeIO para replicação síncrona e assíncrona. As entradas de cache são armazenadas na memória nativa em vez de serem armazenadas no heap Java. Todos os servidores de contêiner na grade de dados devem usar o mesmo valor para a propriedade enableXM.

Padrão: false

maxXIONetworkThreads
Configura o número máximo de encadeamentos para alocar no conjunto de encadeamentos de rede de transporte eXtremeIO.

Padrão: 50

maxXIOWorkerThreads
Configura o número máximo de encadeamentos para alocar no conjunto de encadeamentos de processamento de solicitação de transporte eXtremeIO.

Padrão: 128

maxXMSize
Define a quantia máxima de memória, em megabytes, usada pelo servidor para armazenamento do eXtremeMemory.

Padrão: 25% do total de memória no sistema

memoryThresholdPercentage
Configura o limite de memória para despejo baseado em memória. A porcentagem especifica o heap máximo a ser usado no Java Virtual Machine (JVM) antes de ocorrer o despejo. O valor-padrão é -1, que indica que o limite de memória não está configurado. Se a propriedade memoryThresholdPercentage não for configurada, o valor MemoryPoolMXBean será configurado com o valor fornecido. Consulte Interface MemoryPoolMXBean na especificação de API Java para obter mais informações. Porém, a liberação ocorre apenas se ela for ativada em um evictor. Para ativar o despejo baseado em memória, consulte Plug-ins para Despejar Objetos de Cache. Esta propriedade se aplica apenas a um servidor de contêiner.

Padrão: -1

minXIONetworkThreads
Configura o número mínimo de encadeamentos para alocar no conjunto de encadeamentos de rede de transporte eXtremeIO.

Padrão: 50

minXIOWorkerThreads
Configura o número mínimo de encadeamentos para alocar no conjunto de encadeamentos de processamento de solicitação de transporte eXtremeIO.

Padrão: 128

statsSpec
Define a especificação de estatísticas para o servidor de contêiner.

Exemplo:

all=disabled

xioChannel.xioContainerTCPNonSecure.Port
Especifica o número de porta listener não segura do eXtremeIO no servidor. Se esse valor não for configurado, uma porta temporária será usada. Esta propriedade é usada somente quando a propriedade transportType é configurada como TCP/IP.
xioChannel.xioContainerTCPSecure.Port
Especifica o número de porta SSL do eXtremeIO no servidor. Esta propriedade é usada somente quando a propriedade transportType é configurada como SSL-Supported ou SSL-Required.
Propriedades do Serviço de Catálogo
catalogClusterEndPoints
Especifica os pontos de extremidade do domínio do serviço de catálogo para o serviço de catálogo. Esta propriedade especifica os terminais do serviço de catálogo para iniciar o domínio do serviço de catálogo. Utilize o seguinte formato:
serverName:hostName:clientPort:peerPort<serverName:hostName:clientPort:peerPort>
Esta propriedade se aplica apenas ao serviço de catálogo.
domainName
Especifica o nome de domínio usado para identificar exclusivamente este domínio do serviço de catálogo para clientes ao rotear para vários domínios. Esta propriedade se aplica apenas ao serviço de catálogo.
enableQuorum

Ativa o quorum para o serviço de catálogo. O quorum é usado para assegurar que a maioria do domínio de serviço de catálogo esteja disponível antes de mover as partições nos servidores de contêiner disponíveis. Para ativar o quorum, configure o valor para true ou ativado. O valor padrão é disabled. Esta propriedade se aplica apenas ao serviço de catálogo. Consulte o Quorums de Servidores de Catálogo para obter informações adicionais.

<foreignDomain>.endpoints
Especifica as informações de conexão para os servidores de catálogos dos domínios externos, como domínio B:
Por exemplo:
B.endPoints=hostB1:2809, hostB2:2809
Se um domínio externo tiver diversos servidores de catálogo, especifique todos eles.
foreignDomains
Especifica os nomes de domínios de serviço de catálogo ao qual você deseja vincular em uma topologia de replicação multimestre. Esta propriedade se aplica apenas ao serviço de catálogo.
heartBeatFrequencyLevel
Especifica com que frequência um failover de servidor é detectado. Um intervalo de pulsação agressivo pode ser útil quando os processos e a rede estão estáveis. Se a rede ou os processos não são configurados de maneira ideal, as pulsações podem ser perdidas, o que pode resultar em uma falsa detecção de falhas. O nível de frequência de pulsação é uma troca entre o uso dos recursos e a hora da descoberta de falha. Quanto maior for a frequência das pulsações, mais recursos serão usados e as falhas serão descobertas mais rapidamente. Esta propriedade se aplica apenas ao serviço de catálogo.
Tabela 1. Valores de Pulsação Válidos
Valor Ação Descrição
0 Típica (padrão) Especifica um nível de pulsação em uma taxa normal. Com esse valor, a detecção de failover ocorrerá a uma taxa razoável sem usar excessivamente os recursos. Failovers são tipicamente detectados em 30 segundos.
-1 Agressiva Especifica um nível de pulsação agressiva. Com esse valor, as falhas serão detectadas mais rapidamente, mas também são usados um processador e recursos de rede adicionais. Esse nível pode ter pulsações ausentes quando o servidor estiver ocupado. Failovers são tipicamente detectados em 5 segundos.
1 Moderada Especifica um nível de pulsação relaxada. Com esse valor, uma frequência de pulsação diminuída aumenta o tempo para detectar falhas, mas também diminui o uso do processador e de rede. Failovers são tipicamente detectado em 180 segundos.
isCatalog
Quando configurado para true, o processo do servidor inicia automaticamente um serviço de catálogo.
Padrão: false
placementDeferralInterval
Especifica o intervalo em milissegundos para adiar o balanceamento e o posicionamento dos itens de trabalho nos servidores de contêiner. Aumentar o intervalo de adiamento reduz a utilização do processador, porém os itens de trabalho são posicionados ao longo do tempo. Diminuir o intervalo de adiamento aumenta a utilização do processador por pouco tempo, porém os itens de trabalho são posicionados com mais rapidez e agilidade.

Padrão: 15000 ms

Propriedades do Servidor de Segurança

O arquivo de propriedades do servidor também é usado para configurar a segurança do servidor eXtreme Scale. Use um arquivo de propriedades de servidor único para especificar as propriedades básicas e as propriedades de segurança.
Propriedades gerais de segurança
credentialAuthentication
Indica se este servidor suporta a autenticação de credencial. Escolha um dos seguintes valores:
  • Nunca: O servidor não suporta a autenticação de credencial.
  • Suportado: O servidor suporta a autenticação de credencial se o cliente também suportar a autenticação de credencial.
  • Necessário: O cliente requer autenticação de credencial.
Consulte o Autenticação de Cliente do Aplicativo para obter detalhes sobre a autenticação de credencial.
securityEnabled
Ativa a segurança do servidor de contêiner ao configurar para true. O valor padrão é false. Esta propriedade deve corresponder à propriedade securityEnabled que é especificada no arquivo objectGridSecurity.xml fornecido para o servidor de catálogos.
Configurações de segurança da camada de transporte
transportType
Especifica o tipo de transporte do servidor. Utilize um dos seguintes valores:
  • TCP/IP: Indica que o servidor suporta apenas conexões TCP/IP.
  • SSL-Suportado: Indica que o servidor suporta ambas as conexões TCP/IP e Secure Sockets Layer (SSL). (Default)
  • SSL-Necessário: Indica que o servidor requer as conexões SSL.
Propriedades de Configuração SSL
alias
Especifica o nome do alias no keystore. Esta propriedade será usada se o keystore tiver diversos certificados de pares de chaves e você desejar selecionar um dos certificados.

Padrão: Nenhum valor

clientAuthentication
Se a propriedade for configurada para true, o cliente SSL deverá ser autenticado. A autenticação do cliente SSL é diferente da autenticação do certificado cliente. A autenticação do certificado cliente significa autenticar um cliente para um registro de usuário de acordo com a cadeia de certificados. Essa propriedade garante que o servidor se conecte ao cliente correto.
contextProvider
Especifica o nome do provedor de contexto para o serviço de confiança. Se você indicar um valor inválido, ocorrerá uma exceção de segurança que indica que o tipo de provedor de contexto está incorreto.

Valores válidos: IBMJSSE2, IBMJSSE, IBMJSSEFIPS, etc.

customSecureTokenManagerProps
Especifica as propriedades de classe de implementação SecureTokenManager customizada. Essa propriedade é usada apenas se o valor secureTokenManagerType for customizado. O valor é configurado para o objeto SecureTokenManager com o método setProperties(String).
customTokenManagerClass
Especifica o nome da sua classe de implementação SecureTokenManager, se você tiver especificado o valor de propriedade SecureTokenManagerType como customizado. A classe de implementação deve ter um construtor padrão a ser instanciado.
keyStore
Especifica um caminho completo para o arquivo keystore.

Exemplo: etc/test/security/client.private

keyStorePassword
Especifica a senha da sequência para o keystore. É possível codificar este valor ou usar o valor real.
keyStoreType
Indica o tipo do keystore. Se você indicar um valor inválido, ocorrerá uma exceção de segurança no tempo de execução.

Valores válidos: JKS, JCEK, PKCS12, etc.

protocol
Indica o tipo de protocolo de segurança a ser usado para o cliente. Configure esse valor de protocolo baseado no provedor Java Secure Socket Extension (JSSE) que será usado. Se você indicar um valor inválido, ocorrerá uma exceção de segurança que indica que o valor de protocolo está incorreto.

Valores válidos: SSL, SSLv2, SSLv3, TLS, TLSv1, etc.

SecureTokenManager
A configuração SecureTokenManager é usada para proteger a cadeia secreta para autenticações mútuas do servidor e para proteger o token de conexão única.
secureTokenManagerType
Especifica o tipo de configuração SecureTokenManager. É possível usar uma das seguintes configurações:
  • nenhum: Indica que nenhum gerenciador de token seguro é usado.
  • padrão: Indica que o gerenciador de token que é fornecido com o produto WebSphere eXtreme Scale é usado. Você deve fornecer uma configuração de keystore SecureToken.
  • custom: Indica que você tem seu próprio gerenciador de token que você especificou com a classe de implementação do SecureTokenManager.
trustStore
Especifica um caminho completo para o arquivo de armazenamento confiável.

Exemplo: etc/test/security/server.public

trustStorePassword
Especifica uma senha de sequência para o armazenamento confiável. É possível codificar este valor ou usar o valor real.
trustStoreType
Indica o tipo do armazenamento confiável. Se você indicar um valor inválido, ocorrerá uma exceção de segurança no tempo de execução.

Valores válidos: JKS, JCEK, PKCS12, etc.

Configuração do keystore de token seguro
secureTokenKeyStore
Especifica o nome do caminho de arquivo para o armazenamento de chaves que armazena o par de chaves público-privado e a chave secreta.
secureTokenKeyStoreType
Especifica o tipo de armazenamento de chaves, por exemplo, JCKES. É possível configurar esse valor baseado no provedor Java Secure Socket Extension (JSSE) usado. No entanto, esse armazenamento de chaves deve suportar chaves secretas.
secureTokenKeyPairAlias
Especifica o alias do par de chaves público-privado que é usado para assinatura e verificação.
secureTokenKeyPairPassword
Especifica a senha para proteger o alias de par de chaves que é usado para assinatura e verificação.
secureTokenSecretKeyAlias
Especifica o alias de chave secreta que é usado para codificação.
secureTokenSecretKeyPassword
Especifica a senha para proteger a chave secreta.
secureTokenCipherAlgorithm
Especifica o algoritmo que é usado para fornecer uma codificação. É possível configurar esse valor baseado no provedor Java Secure Socket Extension (JSSE) usado.
secureTokenSignAlgorithm
Especifica o algoritmo que é usado para assinar o objeto. Você pode configurar esse valor com base no provedor JSSE utilizado.
Cadeia de autenticação
authenticationSecret
Especifica a cadeia secreta para fazer o pedido ao servidor. Quando um servidor for inicializado, ele deverá apresentar essa cadeia ao servidor principal ou ao servidor de catálogos. Se a cadeia secreta corresponder com o que está no servidor principal, esse servidor poderá fazer a união.