

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á.

# Adicionar um script de instalação da compilação
<a name="gamelift-build-cli-uploading-install"></a>

Crie um script de instalação para o OS (sistema operacional) da compilação do seu jogo:
+ Windows: crie um arquivo em lote chamado `install.bat`.
+ Linux: crie um arquivo de script de shell chamado `install.sh`.

Ao criar um script de instalação, lembre-se do seguinte:
+ O script não pode receber nenhuma entrada do usuário.
+ O Amazon GameLift Servers instala a compilação e recria os diretórios de arquivos no pacote de compilação em um servidor de hospedagem nos seguintes locais:
  + Frotas do Windows: `C:\game`
  + Frotas do Linux: `/local/game`
+ Durante o processo de instalação de frotas do Linux, o usuário de execução tem acesso limitado à estrutura de arquivos da instância. Este usuário tem direitos totais para o diretório em que seus arquivos de compilação estão instalados. Se seu script de instalação realizar ações que exijam permissões de administrador, especifique o acesso de administrador usando **sudo**. O usuário de execução para frotas do Windows tem permissões de administrador por padrão. As falhas de permissão relacionadas ao script de instalação geram uma mensagem de evento que indica um problema com o script.
+ No Linux, o Amazon GameLift Servers oferece suporte a linguagens comuns de interpretadores de shell, como o bash. Adicione um shebang (como `#!/bin/bash`) à parte superior do seu script de instalação. Para verificar o suporte para os seus comandos shell preferidos, acesse remotamente uma instância ativa do Linux e abra um prompt de shell. Para obter mais informações, consulte [Conecte-se às instâncias da frota](fleets-remote-access.md).
+ O script de instalação não pode depender de uma conexão de emparelhamento da VPC. Uma conexão de emparelhamento da VPC não está disponível até que o Amazon GameLift Servers instale a compilação em instâncias de frota.

**Example Arquivo bash de instalação em Windows**  
Este exemplo de arquivo `install.bat` instala os componentes de tempo de execução do Visual C \$1\$1 necessários para que o servidor do jogo e grave os resultados em um arquivo de log. O script inclui o arquivo do componente no pacote de compilação na raiz.  

```
vcredist_x64.exe /install /quiet /norestart /log c:\game\vcredist_2013_x64.log
```

**Example Script de shell de instalação do Linux**  
Esse arquivo `install.sh` de exemplo usa bash no script de instalação e grava os resultados em um arquivo de log.  

```
#!/bin/bash
echo 'Hello World' > install.log
```
Este `install.sh` arquivo de exemplo mostra como você pode usar o CloudWatch agente da Amazon para coletar métricas personalizadas e em nível de sistema e lidar com a rotação de registros. Como o Amazon GameLift Servers é executado em um serviço de VPC, conceda permissões ao Amazon GameLift Servers para assumir um perfil do (IAM) do AWS Identity and Access Management em seu nome. Amazon GameLift ServersPara permitir que você assuma uma função, crie uma função que inclua a política AWS `CloudWatchAgentAdminPolicy` gerenciada e use essa função ao criar uma frota.  

```
sudo yum install -y amazon-cloudwatch-agent
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum install -y collectd
cat <<'EOF' > /tmp/config.json
{
    "agent": {
        "metrics_collection_interval": 60,
        "run_as_user": "root",
        "credentials": {
            "role_arn": "arn:aws:iam::account#:role/rolename"
        }
    },
    "logs": {
        "logs_collected": {
            "files": {
                "collect_list": [
                    {
                        "file_path": "/tmp/log",
                        "log_group_name": "gllog",
                        "log_stream_name": "{instance_id}"
                    }
                ]
            }
        }
    },
    "metrics": {
       "namespace": "GL_Metric",
        "append_dimensions": {
            "ImageId": "${aws:ImageId}",
            "InstanceId": "${aws:InstanceId}",
            "InstanceType": "${aws:InstanceType}"
        },
        "metrics_collected": {
            // Configure metrics you want to collect.
            // For more information, see [Manually create or edit the CloudWatch agent configuration file](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/CloudWatch-Agent-Configuration-File-Details.html).
        }
    }
}
EOF
sudo mv /tmp/config.json /opt/aws/amazon-cloudwatch-agent/bin/config.json
sudo /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent-ctl -a fetch-config -m ec2 -s -c file:/opt/aws/amazon-cloudwatch-agent/bin/config.json
sudo systemctl enable amazon-cloudwatch-agent.service
```