Skip To Content

Estender um tempo de execução do notebook

O ArcGIS Notebook Server inclui dois tempos de execução do notebook (coleções de módulos de Python). Estes tempos de execução estão disponíveis para usuários do notebook através de imagens do contêiner, que são aplicadas a cada contêiner que é executado no site do servidor.

Os tempos de execução Padrão e Avançado do notebook incluem ArcGIS API for Python e vários módulos de Python que podem ser utilizados para ciência de dados, análise espacial, gerenciamento de conteúdo e administração. O tempo de execução avançado também inclui o ArcPy.

Consulte a lista de bibliotecas de Python disponíveis

Em alguns casos, os autores do seu notebook podem precisar de módulos ou versões específicas de módulos que não estão incluídas nestes dois tempos de execução. Você pode acessar módulos de Python adicionais no ArcGIS Notebook Server nas seguintes maneiras:

  • Instale o módulo de Python durante uma sessão do notebook. Isto torna o módulo disponível para uso neste notebook.
  • Estenda uma imagem de contêiner da Esri para incluir bibliotecas de Python adicionais em um tempo de execução personalizado. A imagem de contêiner criada por você disponibilizará o tempo de execução estendido para todos os autores do notebook em seu site.

Instalar módulos durante uma sessão

Os autores do notebook podem criar módulos de Python ou versões de módulos, que não estão incluídas no tempo de execução disponível para uso durante uma sessão de notebook utilizando conda ou pip . É recomendado que você utilize conda, pois o ArcGIS Notebook Server utiliza ele para gerenciar módulos; módulos de Python estão disponíveis somente no pip.

Esta abordagem instala o módulo desejado pela duração da sessão do notebook. Após o notebook ser fechado ou o contêiner que pertence ao usuário ser finalizado, o módulo não estará mais disponível. Para instalar módulos utilizando este método, os usuários devem ter conectividade com a Internet para os canais conda ou pip .

Anotação:

conda e pip estão incluídos nos dois tempos de execução do notebook. Você não precisa instalá-los.

Para instalar o pacote scrapy durante uma sessão, por exemplo, execute uma célula do notebook com um dos seguintes comandos, dependendo do sistema de gerenciamento do pacote que você está utilizando:

Utilizando o sistema de gerenciamento de pacote do conda

!conda install --yes scrapy

Utilizando o sistema de gerenciamento de pacote do pip

!pip install scrapy

Para utilizar uma versão diferente de um módulo de Python no tempo de execução do notebook no qual você está trabalhando, especifique o número da versão no comando.

Você deve reiniciar o kernel depois de executar um comando conda ou pip para que seu novo pacote esteja disponível.

Por exemplo, um determinado pacote está disponível em ambos os tempos de execução do notebook na versão 1.5, mas você deseja utilizar uma ferramenta introduzida no 1.6. Para disponibilizar a versão 1.6 do pacote durante uma sessão, execute uma célula do notebook com um dos seguintes comandos, dependendo do sistema de gerenciamento do pacote que você está utilizando:

Utilizando o sistema de gerenciamento de pacote do conda

!conda install --yes <package name>==1.6

Utilizando o sistema de gerenciamento de pacote do pip

!pip install <package name>==1.6

Construir uma imagem de contêiner personalizada

Para fazer alterações persistentes em um tempo de execução do notebook, você pode criar uma imagem de contêiner personalizada em um site. O seguinte fluxo de trabalho, que exige privilégios administrativos, cria uma imagem personalizada e configura o ArcGIS Notebook Server para utilizá-lo.

Utilize um dos dois tempos de execução do notebook (Padrão ou Avançado) como ponto de partida. Após criar seu tempo de execução personalizado, você poderá registrá-lo como um novo tempo de execução em seu site.

  1. Instale e configure o ArcGIS Notebook Server.
  2. Entre no Diretório de Administrador do ArcGIS Notebook Server como um administrador.

    A URL está formatada como https://notebookserver.domain.com:11443/arcgis/admin/.

  3. Clique em notebooks > tempos de execução e selecione o tempo de execução do notebook que você deseja estender para sua imagem personalizada.

    Na página de recursos do tempo de execução, note o valor de imagem deste tempo de execução. Você incluirá este valor na próxima etapa.

  4. Crie um Dockerfile que adiciona seus módulos de Python desejados na imagem personalizada.

    Um Dockerfile é um arquivo de texto simples de instruções para construir uma imagem de contêiner do Docker . Siga a documentação do Dockerfile para informações e melhores práticas.

    Neste exemplo, você adicionará na visualização de dados do Python o pacote graphviz no tempo de execução Avançado do notebook. O seguinte bloco de código no seu Dockerfile informa ao Docker para acessar o tempo de execução avançado utilizando seu valor imageId , e para instalar o graphviz no tempo de execução. O comando conda clean é uma prática recomendada para reduzir o tamanho do arquivo.

    # Specify the existing notebook runtime imageId as FROM
    FROM aa7a1a346e5b
    # Use RUN to issue a command to install, then clean
    RUN conda install graphviz \
      && conda clean -y -a
  5. Salve seu Dockerfile na máquina, em uma nova pasta que somente contenha o Dockerfile.
  6. Crie sua nova imagem de contêiner personalizada utilizando um comando Docker . Esta imagem conterá um novo tempo de execução como especificado em seu Dockerfile. Abra um terminal e execute um comando com a seguinte sintaxe:

    docker build -t <name of my new runtime>:v1.0 -f <path to my Dockerfile> .
    Anotação:

    Certifique-se de incluir o ponto no final do comando.

    Quando o comando for executado, o Dockerconstruirá a nova imagem de contêiner. A última linha na saída do comando será Successfully built <imageId> com o valor de ID abreviado da nova imagem. Você precisará fornecer seu site do ArcGIS Notebook Server com seu valor imageId completo.

  7. Execute o seguinte comando no seu terminal para obter o valor de ID da imagem:

    docker inspect <imageId>

Sua imagem personalizada é agora construída e você tem seu valor completo imageId , que você utilizará para registrá-lo com o site ArcGIS Notebook Server na próxima seção.

Registre um novo tempo de execução no Manager

Com início na versão 10.8, você pode utilizar ArcGIS Notebook Server Manager para registrar um tempo de execução personalizado que você criou.

  1. Entre em seu portal do ArcGIS Enterprise como um administrador e abra o ArcGIS Notebook Server Manager.
  2. Abra a página Configurações e clique em Tempos de execução.
  3. Clique em Registrar Tempo de Execução para abrir o diálogo de registro.
  4. Especifique os valores apropriados para concluir o registro.

    ParâmetroDetalhes
    Name

    Uma string para representar o novo tempo de execução, tais como, “Tempo de Execução Personalizado do Notebook Python 3."

    Version

    A versão do tempo de execução fornecido pela Esri eu você utilizou como a imagem de base do Docker.

    Image ID

    ID completo (não truncado) da nova imagem do Docker, fornecido quando você construiu a imagem.

    Container Type

    (Opcional) O único valor válido é "Docker."

    Image pull string

    (Opcional) Não aplicável.

    Advanced privileges required?

    Marque esta caixa se o novo tempo de execução do notebook foi estendido a partir do tempo de execução ArcGIS Notebook Python 3 Avançado e requer o privilégio Notebooks Avançados para utilizar.

    Max CPU

    O número máximo de unidades de CPU para ser utilizado para cada contêiner.

    Max memory

    A quantidade máxima de memória a ser utilizada para cada contêiner.

    Max memory unit

    A unidade especificada pelo parâmetro Memória máx .

    Max swap memory

    (Opcional) A quantidade máxima de memória swap disponível para cada contêiner se ela alcançar o limite Máx memória .

    Max swap memory unit

    (Opcional) A unidade especificada pelo parâmetro Memória swap máx .

    Shared memory

    (Opcional) A quantidade de memória compartilhada disponível de cada contêiner.

    Shared memory unit

    (Opcional) A unidade especificada pelo parâmetro Memória compartilhada .

    Docker runtime

    (Opcional) Somente se aplica em tempos de execução de GPU. Mais informações

    Library manifest

    (Opcional) Transferir um arquivo em formato de JSON contendo uma lista de bibliotecas Python incluído com este tempo de execução.

    Format

    O formato de resposta padrão. O formato de resposta padrão é html.

    Valor: html | json | pjson

  5. Quando você estiver pronto, clique em Salvar para registrar o novo tempo de execução.
  6. Abra um novo notebook para testar esta atualização. Verifique se os módulos ou versões dos módulos adicionados à sua imagem personalizada estão disponíveis no notebook.

Para retornar os tempos de execução em seu site do ArcGIS Notebook Server para as configurações originais, utilize a operação Restaurar Tempos de Execução de Fábrica no Diretório do Administrador. Isto está disponível em https://notebookserver.domain.com:11443/arcgis/admin/notebooks/runtimes/restore e restaurará somente os tempos de execução de fábrica para a versão atual do seu site.