Outras Maneiras de Executar Jobs
Você pode usar jobs de várias maneiras, como usar ambientes conda e arquivos zip.
Usando Arquivos zip ou tar compactados
Você pode usar jobs para executar um projeto Python inteiro que você compacta em um único arquivo.
os arquivos zip ou tar compactados executados como job podem utilizar os ambientes conda do serviço Data Science e os ambientes conda personalizados.
Para a execução do job, você aponta para o arquivo de entrada principal usando a variável de ambiente JOB_RUN_ENTRYPOINT
. Essa variável só é usada com jobs que usam artefatos de job zip ou tar compactados.
Usando um Ambiente Conda do Serviço Data Science
Você pode usar um dos ambientes conda do serviço Data Science que estão incluídos no serviço.
Um ambiente conda encapsula todas as dependências Python de terceiros (como Numpy, Dask ou XGBoost) exigidas pela execução de job. Os ambientes conda do serviço Data Science são incluídos e mantidos no serviço. Se você não especificar um ambiente conda como parte das configurações de job e execução de job, um ambiente conda não será usado porque não há padrão.
O código de job está incorporado em um ambiente conda do serviço Data Science:

Usando um Ambiente Conda Personalizado
Você pode usar jobs de um arquivo zip e tar compactados com ambientes conda personalizados ou ambientes conda do serviço Data Science.
Um ambiente conda encapsula todas as dependências Python de terceiros (como Numpy, Dask ou XGBoost) exigidas pela execução de job. Você cria, publica e mantém ambientes conda personalizados. Se você não especificar um ambiente conda como parte das configurações de job e execução de job, um ambiente conda não será usado porque não há padrão
O código de job está incorporado em um ambiente conda personalizado como este:

Usando um Arquivo YAML de Runtime
Você pode usar um arquivo YAML de runtime para configurar variáveis de ambiente de job em vez de usar a Console ou o SDK.
Antes de começar:
Faça download, descompacte e revise os arquivos de amostra jobruntime.yaml e conda_pack_test.py para criar e testar seu projeto de job.
O uso de um arquivo jobruntime.yaml
facilita a definição de variáveis de ambiente personalizadas no projeto.
Usando um Vault
Você pode integrar o serviço Vault do OCI aos jobs do serviço Data Science usando controladores de recursos.
Antes de começar:
-
Para que o controlador de recursos no job tenha acesso a um vault, certifique-se de ter um grupo dinâmico no compartimento que especifique a instância ou o controlador de recursos. Por exemplo, você pode usar o controlador de recursos e um grupo dinâmico com esta regra:
all {resource.type='datasciencejobrun',resource.compartment.id='<compartment_ocid>'}
-
Para que o job seja executado, você deve garantir que possa, pelo menos, gerenciar a família de segredos no grupo dinâmico. Por exemplo:
Allow dynamic-group <dynamic_group_name> to manage secret-family in compartment <compartment_name>
O post no blog Usando os Controladores de Instância e o Vault do OCI com Python para recuperar um Segredo fornece detalhes úteis.
-
Faça download, descompacte e revise o arquivo de amostra
zipped_python_job.zip
que mostra o seguinte:- Inicializando o cliente vault no job usando o Python SDK
- Lê um segredo usando o OCID do segredo.
- Decodifica o pacote de segredos e mostra o conteúdo do segredo real.
Como os jobs têm acesso ao controlador de recursos, você pode inicializar todos os clientes do Vault disponíveis no Python SDK.
-
Crie um vault que tenha uma chave principal, um segredo e adicione a instrução de política a todos os controladores de recursos do job para
manage secret-family
.
- Na Console, crie um novo job.
- Execute o job para ver se ele funciona.
- Monitore a execução do job para obter uma conclusão bem-sucedida.
- (Opcional) Se você usou o registro em log, poderá revisá-lo para ver os valores de execução de job.