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à.
Step Functions Local non è supportato
Step Functions Local non fornisce parità di funzionalità e non è supportato.
Potresti prendere in considerazione soluzioni di terze parti che emulano Step Functions a scopo di test.
Con AWS Step Functions Local, una versione scaricabile di Step Functions, puoi testare applicazioni con Step Functions in esecuzione nel tuo ambiente di sviluppo.
Quando si esegue Step Functions Local, è possibile utilizzare uno dei seguenti modi per richiamare le integrazioni dei servizi:
-
Configurazione degli endpoint locali per AWS Lambda e altri servizi.
-
Effettuare chiamate direttamente a un AWS servizio da Step Functions Local.
-
Prendere in giro la risposta delle integrazioni di servizi.
AWS Step Functions Local è disponibile come pacchetto JAR o immagine Docker autonoma che può essere eseguita su Microsoft Windows, Linux, macOS e altre piattaforme che supportano Java o Docker.
avvertimento
È necessario utilizzare Step Functions Local solo per i test e mai per elaborare informazioni sensibili.
Argomenti
Configurazione locale di Step Functions (versione scaricabile) in Docker
L'immagine Docker locale di Step Functions consente di iniziare rapidamente con Step Functions Local utilizzando un'immagine Docker con tutte le dipendenze necessarie. L'immagine Docker consente di includere Step Functions Local nelle build containerizzate e come parte dei test di integrazione continua.
Per ottenere l'immagine Docker per Step Functions Local, vedi https://hub.docker.com/r/amazon/ aws-stepfunctions-localpull
docker pull amazon/aws-stepfunctions-local
Per avviare la versione scaricabile di Step Functions on Docker, esegui il seguente comando Docker run
docker run -p 8083:8083 amazon/aws-stepfunctions-local
Per interagire con AWS Lambda o con altri servizi supportati, devi prima configurare le tue credenziali e altre opzioni di configurazione. Per ulteriori informazioni, consulta i seguenti argomenti:
Configurazione locale di Step Functions (versione scaricabile) - Versione Java
La versione scaricabile di AWS Step Functions viene fornita come file JAR eseguibile e come immagine Docker. L'applicazione Java è eseguibile su Windows, Linux, macOS e altre piattaforme compatibili con Java. Oltre a Java, è necessario installare il AWS Command Line Interface file ().AWS CLI Per informazioni sull'installazione e la configurazione di AWS CLI, consultate la Guida per l'AWS Command Line Interface utente.
Per configurare ed eseguire Step Functions sul tuo computer
-
Scaricate Step Functions utilizzando i seguenti link.
Collegamenti per il download Checksum .tar.gz .tar.gz.md5 .zip .zip.md5 -
Estrarre il file
.zip
. -
Test del download e visualizzazione delle informazioni sulla versione.
$ java -jar StepFunctionsLocal.jar -v Step Function Local Version: 2.0.0 Build: 2024-05-18
-
(Facoltativo) Visualizzare un elenco dei comandi disponibili.
$ java -jar StepFunctionsLocal.jar -h
-
Per avviare Step Functions sul tuo computer, apri un prompt dei comandi, vai alla directory in cui hai estratto
StepFunctionsLocal.jar
e immetti il comando seguente.java -jar StepFunctionsLocal.jar
-
Per accedere a Step Functions in esecuzione localmente, utilizzare il
--endpoint-url
parametro. Ad esempio, utilizzando AWS CLI, è possibile specificare i comandi Step Functions come segue:aws stepfunctions --endpoint-url http://localhost:8083
command
Nota
Per impostazione predefinita, Step Functions Local utilizza un account di test e credenziali locali e la AWS regione è impostata su Stati Uniti orientali (Virginia settentrionale). Per utilizzare Step Functions Local con AWS Lambda o altri servizi supportati, è necessario configurare le credenziali e la regione.
Se si utilizzano flussi di lavoro Express con Step Functions Local, la cronologia di esecuzione verrà archiviata in un file di registro. Non viene registrata in Logs. CloudWatch Il percorso del file di registro sarà basato sull'ARN del gruppo di log CloudWatch Logs fornito quando si crea la macchina a stati locale. Il file di registro verrà memorizzato in /aws/states/log-group-name/
relazione alla posizione in cui è in esecuzione Step Functions Local. Ad esempio, se l'ARN di esecuzione è:${execution_arn}
.log
arn:aws:states:us-east-1:123456789012:express:test:example-ExpressLogGroup-wJalrXUtnFEMI
il file di registro sarà:
aws/states/log-group-name/arn:aws:states:us-east-1:123456789012:express:test:example-ExpressLogGroup-wJalrXUtnFEMI.log
Impostazione delle opzioni di configurazione per Step Functions Local
Quando avviate AWS Step Functions Local utilizzando il file JAR, potete impostare le opzioni di configurazione utilizzando AWS Command Line Interface (AWS CLI) o includendole nell'ambiente di sistema. Per Docker, è necessario specificare queste opzioni in un file a cui si fa riferimento all'avvio di Step Functions Local.
Opzioni di configurazione
Quando configuri il contenitore Step Functions Local per utilizzare un endpoint di override come Lambda Endpoint e Batch Endpoint ed effettui chiamate a tale endpoint, Step Functions Local non utilizza le credenziali specificate. L'impostazione di queste sostituzioni degli endpoint è facoltativa.
Opzione | Riga di comando | Ambiente |
---|---|---|
Account | -account, --aws-account | AWS_ACCOUNT_ID |
Regione | -regione, --aws-region | AWS_DEFAULT_REGIONE |
Wait Time Scale | -waitTimeScale, --wait-time-scale | WAIT_TIME_SCALE |
Endpoint Lambda | -LambdaEndpoint, --lambda-endpoint | LAMBDA_ENDPOINT |
Endpoint Batch | -batchEndpoint, --batch-endpoint | BATCH_ENDPOINT |
Endpoint DynamoDB | -dinamoDBEndpoint, --dynamodb-endpoint | DYNAMODB_ENDPOINT |
Endpoint ECS | -ecsEndpoint, --ecs-endpoint | ECS_ENDPOINT |
Endpoint Glue | -glueEndpoint, --glue-endpoint | GLUE_ENDPOINT |
SageMaker Punto finale | -sageMakerEndpoint, --sagemaker-endpoint | SAGE_MAKER_ENDPOINT |
Endpoint SQS | -sqsEndpoint, --sqs-endpoint | SQS_ENDPOINT |
Endpoint SNS | -snsEndpoint, --sns-endpoint | SNS_ENDPOINT |
Endpoint Step Functions | -stepFunctionsEndpoint, --step-functions-endpoint | STEP_FUNCTIONS_ENDPOINT |
Credenziali e configurazione per Docker
Per configurare Step Functions Local for Docker, crea il seguente file:aws-stepfunctions-local-credentials.txt
.
Questo file contiene le tue credenziali e altre opzioni di configurazione. Quanto segue può essere usato come modello durante la creazione del aws-stepfunctions-local-credentials.txt
file.
AWS_DEFAULT_REGION
=AWS_REGION_OF_YOUR_AWS_RESOURCES
AWS_ACCESS_KEY_ID=YOUR_AWS_ACCESS_KEY
AWS_SECRET_ACCESS_KEY=YOUR_AWS_SECRET_KEY
WAIT_TIME_SCALE=VALUE
LAMBDA_ENDPOINT=VALUE
BATCH_ENDPOINT=VALUE
DYNAMODB_ENDPOINT=VALUE
ECS_ENDPOINT=VALUE
GLUE_ENDPOINT=VALUE
SAGE_MAKER_ENDPOINT=VALUE
SQS_ENDPOINT=VALUE
SNS_ENDPOINT=VALUE
STEP_FUNCTIONS_ENDPOINT=VALUE
Dopo aver configurato le credenziali e le opzioni di configurazione inaws-stepfunctions-local-credentials.txt
, avvia Step Functions con il seguente comando.
docker run -p 8083:8083 --env-file aws-stepfunctions-local-credentials.txt amazon/aws-stepfunctions-local
Nota
Si consiglia di utilizzare il nome DNS specialehost.docker.internal
, che si risolve nell'indirizzo IP interno utilizzato dall'host, ad esempio. http://host.docker.internal:8000
Per ulteriori informazioni, consulta la documentazione Docker per Mac e Windows rispettivamente alle funzionalità di rete in Docker Desktop per Mac e alle funzionalità
Esecuzione di Step Functions Local sul computer
Usa la versione locale di Step Functions per configurare, sviluppare e testare macchine a stati sul tuo computer.
Esegui una macchina a HelloWorld stati localmente
Dopo aver eseguito Step Functions localmente con AWS Command Line Interface (AWS CLI), è possibile avviare l'esecuzione di una macchina a stati.
-
Crea una macchina a stati da AWS CLI escludendo la definizione della macchina a stati.
aws stepfunctions --endpoint-url http://localhost:8083 create-state-machine --definition "{\ \"Comment\": \"A Hello World example of the Amazon States Language using a Pass state\",\ \"StartAt\": \"HelloWorld\",\ \"States\": {\ \"HelloWorld\": {\ \"Type\": \"Pass\",\ \"End\": true\ }\ }}" --name "HelloWorld" --role-arn "arn:aws:iam::012345678901:role/DummyRole"
Nota
Non
role-arn
viene utilizzato per Step Functions Local, ma è necessario includerlo con la sintassi corretta. È possibile utilizzare l'Amazon Resource Name (ARN) dall'esempio precedente.Se la macchina a stati è stata creata correttamente, Step Functions risponde con la data di creazione e l'ARN della macchina a stati.
{ "creationDate": 1548454198.202, "stateMachineArn": "arn:aws:states:us-east-1:123456789012:stateMachine:HelloWorld" }
-
Avvia un'esecuzione utilizzando l'ARN della macchina a stati creata.
aws stepfunctions --endpoint-url http://localhost:8083 start-execution --state-machine-arn arn:aws:states:us-east-1:123456789012:stateMachine:HelloWorld
Step Functions Local con AWS SAM CLI Local
È possibile utilizzare la versione locale di Step Functions con una versione locale di AWS Lambda. Per la configurazione, è necessario installare e configurare AWS SAM.
Per informazioni sulla configurazione e l'esecuzione AWS SAM, consulta quanto segue:
Quando Lambda è in esecuzione sul tuo sistema locale, puoi avviare Step Functions Local. Dalla directory in cui hai estratto i file JAR locali di Step Functions, avvia Step Functions Local e usa il --lambda-endpoint
parametro per configurare l'endpoint Lambda locale.
java -jar StepFunctionsLocal.jar --lambda-endpoint http://127.0.0.1:3001 command
Per ulteriori informazioni sull'esecuzione di Step Functions Local con AWS Lambda, vedereTutorial: test dei flussi di lavoro utilizzando Step Functions e AWS SAM CLI Local.