

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Gestisci le pianificazioni utilizzando Infrastructure as Code (IaC)
<a name="manage-schedules-using-infrastructure-as-code-iac"></a>

**Importante**  
Implementa le pianificazioni utilizzando un modello separato al termine della distribuzione dello stack di hub.

Instance Scheduler on AWS fornisce una risorsa personalizzata (`ServiceInstanceSchedule`) che puoi usare per configurare e gestire le pianificazioni tramite AWS. CloudFormation La risorsa personalizzata utilizza PascalCase le chiavi per gli stessi dati della tabella di configurazione di Instance Scheduler in Amazon DynamoDB (consulta il modello qui sotto per alcuni esempi). Per ulteriori informazioni sui campi per le pianificazioni, consulta Schedule Definitions. [Definizioni di pianificazione](schedule-reference.md#schedule-definitions) Per ulteriori informazioni sui campi relativi ai periodi, fare riferimento a Definizioni dei [ periodi](period-reference.md#period-definitions).

Quando si utilizza la risorsa personalizzata per creare una pianificazione, il nome di tale pianificazione è il nome logico della risorsa personalizzata per impostazione predefinita. Per specificare un nome diverso, utilizzare la proprietà Name della risorsa personalizzata. Per impostazione predefinita, la soluzione aggiunge anche il nome dello stack al nome della pianificazione come prefisso. Se non vuoi aggiungere il nome dello stack come prefisso, usa la `NoStackPrefix` proprietà.

Quando utilizzi il nome e `NoStackPrefix` le proprietà, assicurati di scegliere nomi di pianificazione univoci. Se esiste già una pianificazione con lo stesso nome, la risorsa non verrà creata o aggiornata.

Per iniziare a gestire le pianificazioni utilizzando IaC, copia e incolla il seguente modello di esempio e personalizza quante o poche pianificazioni desideri. Salva il file come file .template (ad esempio:`my-schedules.template`), quindi distribuisci il nuovo modello utilizzando AWS. CloudFormation Per esempi di modelli di pianificazione completati, consulta [ Sample Schedules. ](period-reference.md#period-definitions)

```
AWSTemplateFormatVersion: 2010-09-09
Parameters:
  ServiceInstanceScheduleServiceTokenARN:
    Type: String
    Description: (Required) service token arn taken from InstanceScheduler outputs
Metadata:
  'AWS::CloudFormation::Designer': {}
Resources:
  SampleSchedule1:
    Type: 'Custom::ServiceInstanceSchedule'
    Properties:
      ServiceToken: !Ref ServiceInstanceScheduleServiceTokenARN #do not edit this line
      NoStackPrefix: 'False'
      Name: my-renamed-sample-schedule
      Description: a full sample template for creating cfn schedules showing all possible values
      Timezone: America/New_York
      Enforced: 'True'
      Hibernate: 'True'
      RetainRunning: 'True'
      StopNewInstances: 'True'
      UseMaintenanceWindow: 'True'
      SsmMaintenanceWindow: 'my_window_name'
      Periods:
      - Description: run from 9-5 on the first 3 days of March
        BeginTime: '9:00'
        EndTime: '17:00'
        InstanceType: 't2.micro'
        MonthDays: '1-3'
        Months: '3'
      - Description: run from 2pm-5pm on the weekends
        BeginTime: '14:00'
        EndTime: '17:00'
        InstanceType: 't2.micro'
        WeekDays: 'Sat-Sun'

  SampleSchedule2:
    Type: 'Custom::ServiceInstanceSchedule'
    Properties:
      ServiceToken: !Ref ServiceInstanceScheduleServiceTokenARN #do not edit this line
      NoStackPrefix: 'True'
      Description: a sample template for creating simple cfn schedules
      Timezone: Europe/Amsterdam
      Periods:
      - Description: stop at 5pm every day
        EndTime: '17:00'
```

Quando si distribuisce il modello, è necessario fornire l' ServiceTokenARN per la distribuzione di Instance Scheduler su AWS. Questo ARN può essere trovato all'interno CloudFormation accedendo allo stack Instance Scheduler distribuito, selezionando Outputs e cercando ** ** `ServiceInstanceScheduleServiceToken.` 

**Importante**  
Non utilizzare la console DynamoDB o l'interfaccia a riga di comando dello scheduler per eliminare o modificare pianificazioni e periodi configurati utilizzando la risorsa personalizzata. Se lo fai, creerai un conflitto tra i parametri memorizzati nello stack e i valori nella tabella. Inoltre, non utilizzare i periodi configurati utilizzando la risorsa personalizzata nelle pianificazioni create utilizzando la console DynamoDB o l'interfaccia a riga di comando dello scheduler.

Prima di eliminare lo stack principale di Instance Scheduler, devi eliminare tutti gli stack aggiuntivi che contengono pianificazioni e periodi creati utilizzando la risorsa personalizzata perché gli stack di risorse personalizzate contengono dipendenze dalla tabella DynamoDB dello stack principale.

Nella tabella di configurazione DynamoDB, le pianificazioni e i periodi configurati con la risorsa personalizzata possono essere identificati dall'attributo configured\_in\_stack. ** ** L'attributo contiene il nome della risorsa Amazon dello stack utilizzato per creare l'articolo.