

AWS O Mainframe Modernization Service (experiência em Managed Runtime Environment) não está mais aberto a novos clientes. Para recursos semelhantes ao AWS Mainframe Modernization Service (experiência em Managed Runtime Environment), explore o AWS Mainframe Modernization Service (experiência autogerenciada). Os clientes atuais podem continuar usando o serviço normalmente. Para obter mais informações, consulte Alteração na [disponibilidade AWS da modernização do mainframe](https://docs.aws.amazon.com/m2/latest/userguide/mainframe-modernization-availability-change.html).

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Definir a configuração do AWS Transform for mainframe Runtime
<a name="ba-runtime-config"></a>

O AWS Transform for mainframe Runtime e o código do cliente são aplicativos da web que usam a [estrutura Spring Boot](https://docs.spring.io/spring-boot/docs/2.5.14/reference/html/). Ele aproveita os recursos do Spring para fornecer configuração, com vários locais possíveis e regras de precedência. Também existem regras de precedência semelhantes para fornecer muitos outros arquivos, como scripts groovy, sql etc.

O AWS Transform for mainframe Runtime também contém aplicativos web opcionais adicionais, que podem ser ativados se necessário.

**Topics**
+ [Noções básicas de configuração de aplicações](#ba-runtime-config-app-basics)
+ [Precedência da aplicação](#ba-runtime-config-app-precedence)
+ [JNDI para bancos de dados](#ba-runtime-config-app-jndi)
+ [AWS Transforme os segredos do Runtime para mainframe](ba-runtime-config-app-secrets.md)
+ [Outros arquivos (groovy, sql, etc.)](#ba-runtime-config-app-files)
+ [Aplicação web adicional](#ba-runtime-config-app-webapp)
+ [Ativar propriedades do AWS Transform for mainframe Runtime](ba-runtime-key-value.md)
+ [Propriedades de cache do Redis disponíveis no AWS Transform for mainframe Runtime](ba-runtime-redis-configuration.md)
+ [Configurar segurança para aplicações Gapwalk](ba-runtime-security.md)

## Noções básicas de configuração de aplicações
<a name="ba-runtime-config-app-basics"></a>

A forma padrão de lidar com a configuração da aplicação é por meio do uso de arquivos YAML dedicados a serem fornecidos na pasta `config` do servidor da aplicação. Há dois arquivos principais de configuração do YAML:
+ `application-main.yaml`
+ `application-profile.yaml` (em que o valor `profile` é configurado durante a geração da aplicação).

O primeiro arquivo configura a estrutura, ou seja `Gapwalk-application.war`, enquanto o segundo é para opções adicionais específicas para a aplicação cliente. Isso funciona com o uso de perfis de primavera: a aplicação Gapwalk usa o perfil `main`, enquanto a aplicação cliente usa o perfil `profile`.

O exemplo a seguir mostra um arquivo YAML principal típico.

![\[Trecho de um arquivo YAML “principal”.\]](http://docs.aws.amazon.com/pt_br/m2/latest/userguide/images/main-yaml.png)


O exemplo a seguir mostra um arquivo YAML típico do cliente.

![\[Exemplo de YAML do cliente\]](http://docs.aws.amazon.com/pt_br/m2/latest/userguide/images/client-yaml.png)


Para obter informações sobre o conteúdo dos arquivos YAML, consulte [Ativar propriedades do AWS Transform for mainframe Runtime](ba-runtime-key-value.md).

## Precedência da aplicação
<a name="ba-runtime-config-app-precedence"></a>

Para esses arquivos de configuração, as regras de precedência do Spring se aplicam. Notavelmente:
+ O arquivo YAML principal `application-main` no arquivo war principal do Gapwalk com valores padrão, e o da pasta `config` o substitui.
+ O mesmo deve ser feito para a configuração da aplicação cliente.
+ Parâmetros adicionais podem ser transmitidos na linha de comando no momento da inicialização do servidor. Eles substituiriam os YAML.

Para obter mais informações, consulte a [documentação oficial do Spring Boot](https://docs.spring.io/spring-boot/docs/2.5.14/reference/html/features.html#features.external-config).

## JNDI para bancos de dados
<a name="ba-runtime-config-app-jndi"></a>

A configuração do banco de dados pode ser fornecida com JNDI no arquivo context.xml no Tomcat. Qualquer configuração desse tipo substituiria a do YAML. Mas preste atenção, pois usar isso não permitirá agrupar suas credenciais em um gerenciador secreto (veja abaixo).

O exemplo a seguir mostra exemplos de configurações para JICS e Blusam bancos de dados.

```
<Resource auth="Container" driverClassName="org.postgresql.Driver" initialSize="0" maxIdle="5" 
   maxOpenPreparedStatements="-1" maxTotal="10" maxWaitMillis="-1" name="jdbc/jics"
   poolPreparedStatements="true" testOnBorrow="false" type="javax.sql.DataSource" 		
   url="jdbc:postgresql://XXXX.rds.amazonaws.com:5432/XXXX" username="XXXX" password="XXXX" />
```

jdbc/jics  
Seria `jdbc/jics` para o banco de dados JICS e `jdbc/bluesam` (preste atenção ao 'e') para o Blusam banco de dados.

url="jdbc:postgresql://XXXX.rds.amazonaws.com:5432/XXXX" username="XXXX" password="XXXX"  
O URL, nome de usuário e senha do banco de dados.

## Outros arquivos (groovy, sql, etc.)
<a name="ba-runtime-config-app-files"></a>

Os outros arquivos usados pelo projeto do cliente usam regras de precedência semelhantes às da configuração do Spring. Exemplos:
+ Os scripts do Groovy são arquivos `.groovy` na pasta ou subpastas `scripts`. 
+ Os scripts SQL são arquivos `.sql` na pasta ou subpastas `sql`.
+ Os scripts Daemon são arquivos `.groovy` na pasta ou subpastas `daemons`. 
+ Consultas O arquivo de mapeamento do banco de dados são arquivos nomeados `queries-database.mapping` nas subpastas da pasta `sql`.
+ Os modelos do Jasper são arquivos `.jrxml` na pasta ou subpastas `templates`. 
+ Os catálogos de conjuntos de dados são arquivos `.json` na pasta `catalog`.
+ Os arquivos Lnk são arquivos `.json` na pasta `lnk`.

Todos esses locais podem ser substituídos por meio de uma propriedade do sistema ou uma propriedade YAML do cliente.
+ Para scripts do Groovy: `configuration.scripts`
+ Para scripts SQL: `configuration.sql`
+ Para scripts Daemon: `configuration.daemons`
+ Para o arquivo de mapeamento do banco de dados de consultas: `configuration.databaseMapping`
+ Para modelos Jasper: `configuration.templates`
+ Para catálogos de conjuntos de dados: `configuration.catalog`
+ Para arquivos Lnk: `configuration.lnk`

Se a propriedade não for encontrada, os arquivos serão retirados do local padrão mencionado acima. A pesquisa será feita primeiro com o diretório de trabalho do tomcat como raiz e, por último, no arquivo war da aplicação.

## Aplicação web adicional
<a name="ba-runtime-config-app-webapp"></a>

O AWS Transform for mainframe Runtime contém aplicativos web adicionais em sua `webapps-extra` pasta. Essas aplicações não são atendidas por padrão pelo servidor tomcat.

A adesão a essas aplicações web depende do projeto de modernização e é feita movendo o arquivo war desejado da pasta `webapps-extra` para a pasta `webapps`. Depois disso, a guerra será atendida pelo servidor tomcat na próxima inicialização.

Algumas configurações adicionais específicas do projeto também podem ser adicionadas em um arquivo de configuração YAML para cada war adicional, conforme feito no arquivo `application-main.yml` e explicado acima. As guerras adicionais são:
+ `gapwalk-utility-pgm.war`: contém suporte para programas utilitários do ZOS e usa `application-utility-pgm.yaml` como configuração.
+ `gapwalk-cl-command.war`: contém suporte para programas utilitários AS/400 e usa `application-cl-command.yaml` como configuração.
+ `gapwalk-hierarchical-support.war`: contém suporte a IMS/MFS transações e usa `application-jhdb.yaml` como configuração