Instalando o utilitário pip com o INZA Python

Este documento descreve o processo de instalação do utilitário pip para a linguagem INZA Python 2.7 de 64 bits, fornecida como parte do pacote IBM Netezza Analytics.

Antes de iniciar

Certifique-se de que os seguintes produtos estejam instalados no sistema.

  • Pacote IBM Netezza Analytics da 11.0.x.
  • OpenSSL versão 1.0.2x
Nota:

Os defeitos para qualquer biblioteca de terceiros Python não são abordados.

As vulnerabilidades só podem ser corrigidas pelo terceiro Python.

Esse procedimento fornece apenas uma maneira de instalar bibliotecas de terceiros e não é suportado pela IBM.

Procedimento

  1. Instalação do pip:

    O utilitário pip não é fornecido por padrão com o Python 2.7. Ele deve ser instalado no lado do host e da SPU. Use os comandos para realizar a instalação no host e na SPU, respectivamente.

    • Host: /nz/export/ae/languages/python/2.7/host64/bin/python -m ensurepip --default-pip
    • SPU: ' /nz/export/ae/languages/python/2.7/spu64/bin/python -m ensurepip --default-pip

    Isso instala os utilitários pip e pip2 em ' /nz/export/ae/languages/python/2.7/host64/bin/ e ' /nz/export/ae/languages/python/2.7/spu64/bin/, respectivamente.

    Observação: o utilitário precisa ser instalado na linguagem python do host e da SPU. O utilitário pip requer uma biblioteca SSL para funcionar corretamente, que não é fornecida com a linguagem Python 2.7 host64 e spu64.
  2. Solução alternativa de SSL:

    O pip requer o SSL para instalar bibliotecas de terceiros. A biblioteca SSL não é fornecida atualmente com a linguagem Python 2.7 spu64 e host. Esta etapa fornece uma solução alternativa para acessar a biblioteca SSL a partir de executáveis python.

    1. Copie a biblioteca anexada _ssl.so_host64 como _ssl.so no local " /nz/export/ae/languages/python/2.7/host64/lib/python-link/lib-dynload/ e _ssl.so_spu64 como _ssl.so no local " /nz/export/ae/languages/python/2.7/spu64/lib/python-link/lib-dynload/, respectivamente.
      Observação: as bibliotecas SSL fornecidas dependem do sistema OpenSSL, cuja versão deve ser no mínimo 1.0.2. Qualquer versão inferior a essa não será suportada.
    2. Confirme se o SSL é compatível tentando importar a biblioteca SSL como " import ssl dos executáveis " /nz/export/ae/languages/python/2.7/host64/bin/python e " /nz/export/ae/languages/python/2.7/spu64/bin/python.
    • /nz/export/ae/languages/python/2.7/host64/bin/python -c import ssl
    • /nz/export/ae/languages/python/2.7/spu64/bin/python -c import ssl

    Se ocorrer um erro em relação à compatibilidade de versão, os pacotes OpenSSL deverão ser atualizados para a versão 1.0.2.

  3. Instale bibliotecas de terceiros:

    A solução alternativa na etapa 2 fornece a biblioteca SSL necessária para o pip. Agora, use o seguinte comando para instalar qualquer biblioteca de terceiros usando o pip:

    • Host: /nz/export/ae/languages/python/2.7/host64/bin/pip install <library_name>
    • SPU: ' /nz/export/ae/languages/python/2.7/spu64/bin/pip install <library_name>
      • Observe que todas as bibliotecas precisam ser instaladas tanto no host quanto na SPU. Todas essas bibliotecas são baixadas e instaladas em ' /nz/export/ae/languages/python/2.7/host64/lib/python-link/site-packages e ' /nz/export/ae/languages/python/2.7/spu64/lib/python-link/site-packages para o host e a SPU, respectivamente. Além disso, assegure-se de que a biblioteca SSL seja renomeada para _ssl.so depois de copiá-la no local mencionado.

    O Python 3.6 vem com o pip padrão, que pode ser encontrado no local a seguir:

    • Host: /nz/export/ae/languages/python/3.6/host64/bin/pip3
    • SPU: ' /nz/export/ae/languages/python/3.6/spu64/bin/pip3

Exemplo

A seguir está um exemplo de execução de pip.


/nz/export/ae/languages/python/2.7/spu64/bin/pip install camelcase
Collecting camelcase
  Using cached https://files.pythonhosted.org/packages/24/54/6bc20bf371c1c78193e2e4179097a7b779e56f420d0da41222a3b7d87890/camelcase-0.2.tar.gz
Installing collected packages: camelcase
  Running setup.py install for camelcase ... done
Successfully installed camelcase-0.2
You are using pip version 9.0.1, however version 20.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
/nz/export/ae/languages/python/3.6/spu64/bin/pip3 install camelcase
pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.
Collecting camelcase
  Using cached https://files.pythonhosted.org/packages/24/54/6bc20bf371c1c78193e2e4179097a7b779e56f420d0da41222a3b7d87890/camelcase-0.2.tar.gz
Installing collected packages: camelcase
  Running setup.py install for camelcase ... done
Successfully installed camelcase-0.2
You are using pip version 9.0.1, however version 20.0.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.

O que fazer em seguida

Encontre a seguinte biblioteca SSL para python 2.7:

Para a versão 3.x, o arquivo a seguir deve ser copiado em:
  • Host: /nz/export/ae/languages/python/3.6/host64/lib/python3.6/lib-dynload/
  • SPU: ' /nz/export/ae/languages/python/3.6/spu64/lib/python3.6/lib-dynload/
Mantenha o nome do arquivo no estado em que se encontra, não mude-o. Depois disso, execute os seguintes comandos:
  • Executar ' /nz/export/ae/languages/python/3.6/host64/bin/python3.6 -c ' import ssl
  • Executar ' /nz/export/ae/languages/python/3.6/spu64/bin/python3.6 -c ' import ssl