Vytvoření vlastního kanálu Conda pro správu balíčků
Při instalaci balíčků Pythonu používá správce balíčků Conda k vyhledávání balíčků kanály. Možná budete muset vytvořit vlastní kanál Conda z různých důvodů. Můžete například zjistit, že:
- váš pracovní prostor je chráněný exfiltrací dat a odchozí připojení jsou blokovaná.
- máte balíčky, které nechcete nahrát do veřejných úložišť.
- chcete nastavit alternativní úložiště pro uživatele v rámci vašeho pracovního prostoru.
V tomto článku vám poskytneme podrobného průvodce, který vám pomůže vytvořit vlastní kanál Conda v rámci účtu Azure Data Lake Storage.
Nastavení místního počítače
Nainstalujte conda na místní počítač. K identifikaci verze Conda, která se používá ve stejném modulu runtime, můžete použít modul runtime Azure Synapse Spark.
Pokud chcete vytvořit vlastní kanál, nainstalujte conda-build.
conda install conda-build
- Uspořádejte všechny balíčky pro platformu, kterou chcete obsluhovat. V tomto příkladu nainstalujeme archiv Anaconda na váš místní počítač.
sudo wget https://repo.continuum.io/archive/Anaconda3-4.4.0-Linux-x86_64.sh
sudo chmod +x Anaconda3-4.4.0-Linux-x86_64.sh
sudo bash Anaconda3-4.4.0-Linux-x86_64.sh -b -p /usr/lib/anaconda3
export PATH="/usr/lib/anaconda3/bin:$PATH"
sudo chmod 777 -R /usr/lib/anaconda3
- Chcete-li vytvořit prostředí podobné prostředí, které je k dispozici v modulu runtime Azure Synapse, můžete si stáhnout tuto šablonu. Mezi šablonou a skutečným prostředím Azure Synapse mohou být drobné rozdíly. Po stažení můžete spustit následující příkaz:
apt-get -yq install gcc g++
conda env update --prune -f base_environment.yml
Připojení účtu úložiště k počítači
V dalším kroku připojíme účet Azure Data Lake Storage Gen2 k vašemu místnímu počítači. Tento proces lze provést také s účtem WASB; projdeme si ale příklad pro účet ADLSg2.
Další informace o připojení účtu úložiště k místnímu počítači najdete na této stránce.
- Blobfuse můžete nainstalovat z linuxového úložiště softwaru pro produkty Microsoftu.
wget https://packages.microsoft.com/config/ubuntu/16.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install blobfuse fuse
export AZURE_STORAGE_ACCOUNT=<storage-account-name>
export AZURE_STORAGE_SAS_TOKEN="<SAS>"
export AZURE_STORAGE_BLOB_ENDPOINT=*.dfs.core.windows.net
- Vytvořte přípojný bod (
mkdir /path/to/mount
) a připojte kontejner objektů blob pomocí blobfuse. V tomto příkladu použijeme hodnotu privatechannel pro proměnnou mycontainer .
sudo mkdir /home/trusted-service-user/privatechannel
sudo mkdir -p /mnt/blobfusetmp
blobfuse /home/trusted-service-user/privatechannel --container-name=privatechannel --tmp-path=/mnt/blobfusetmp --use-adls=true --log-level=LOG_DEBUG
sudo chown trusted-service-user /mnt/blobfusetmp
Vytvoření kanálu
V další sadě kroků vytvoříme vlastní kanál Conda.
- Na místním počítači vytvořte adresář pro uspořádání všech balíčků pro váš vlastní kanál. Uspořádejte
tar.bz2
všechny balíčky z do https://repo.anaconda.com/pkgs/main/linux-64/ podadresáře. Nezapomeňte také zahrnout všechny závislé balíčky tar.bz2.
cd ~/privatechannel/
mkdir -p channel/linux64
<Add all .tar.bz2 from https://repo.anaconda.com/pkgs/main/linux-64/>
// Note: Add all dependent .tar.bz2 as well
cd channel
mkdir noarch
echo '{}' > noarch/repodata.json
bzip2 -k noarch/repodata.json
// Create channel
conda index channel/noarch
conda index channel/linux-64
conda index channel
- Teď můžete zkontrolovat účet úložiště, ve kterém by se váš
privatechannel/channel
adresář vytvořil.
Poznámka
Conda neresituje token SAS přidružený ke kontejneru. Proto musíte kontejner privatechannel označit jako veřejný přístup.
Další informace najdete také v uživatelské příručce k vytváření vlastních kanálů Conda.
Oprávnění účtu úložiště
Teď budeme muset ověřit oprávnění k účtu úložiště. Pokud chcete tato oprávnění nastavit, přejděte na cestu, kde se vytvoří vlastní kanál. Pak vytvořte token SAS, který má oprávnění ke privatechannel
čtení, výpisu a spuštění.
Název kanálu teď bude adresa URL SAS objektu blob, která se vygeneruje z tohoto procesu.
Vytvoření ukázkového konfiguračního souboru prostředí Conda
Nakonec ověřte proces instalace vytvořením ukázkového souboru Conda environment.yml
. Pokud máte v pracovním prostoru povolenou ochranu před exfiltrací dat, musíte zadat nodefaults
kanál v souboru prostředí.
Tady je příklad konfiguračního souboru Conda:
name: sample
channels:
- https://<<storage account name>>.blob.core.windows.net/privatechannel/channel?<<SAS Token>
- nodefaults
dependencies:
- openssl
- ncurses
Po vytvoření ukázkového souboru Conda můžete vytvořit virtuální prostředí Conda. Můžete to ověřit místně spuštěním následujících příkazů:
conda env create --file sample.yml
source activate env
conda list
Teď, když jste ověřili vlastní kanál, můžete pomocí procesu správy fondu Pythonu aktualizovat knihovny ve fondu Apache Spark.
Další kroky
- Zobrazení výchozích knihoven: Podpora verzí Apache Sparku
- Správa balíčků Pythonu na úrovni relace: Správa balíčků Pythonu v relaci poznámkového bloku