Megosztás a következőn keresztül:


Egyéni Conda-csatorna létrehozása csomagkezeléshez

Python-csomagok telepítésekor a Conda csomagkezelő csatornákat használ a csomagok kereséséhez. Előfordulhat, hogy több okból is létre kell hoznia egy egyéni Conda-csatornát. Előfordulhat például, hogy:

  • a munkaterület adatkiszivárgás védett, és a kimenő kapcsolatok le vannak tiltva.
  • olyan csomagokkal rendelkezik, amelyeket nem szeretne nyilvános adattárakba feltölteni.
  • alternatív adattárat szeretne beállítani a munkaterületen belüli felhasználók számára.

Ebben a cikkben lépésről lépésre bemutatjuk, hogyan hozhatja létre egyéni Conda-csatornáját Azure Data Lake Storage fiókjában.

A helyi gép beállítása

  1. Telepítse a Condát a helyi gépen. Az ugyanazon futtatókörnyezetben használt Conda-verzió azonosításához tekintse meg a Azure Synapse Spark-futtatókörnyezetet.

  2. Egyéni csatorna létrehozásához telepítse a conda-buildet.

conda install conda-build
  1. Rendszerezze az összes csomagot a kiszolgálni kívánt platformhoz. Ebben a példában az Anaconda archívumot telepítjük a helyi gépére.
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  
  1. Ha a Azure Synapse futtatókörnyezetben létrehozott környezethez hasonló környezetet szeretne létrehozni, letöltheti ezt a sablont. A sablon és a tényleges Azure Synapse környezet között kis eltérések lehetnek. A letöltés után futtathatja a következő parancsot:
apt-get -yq install gcc g++
conda env update --prune -f base_environment.yml

A tárfiók csatlakoztatása a géphez

Ezután csatlakoztatjuk a Azure Data Lake Storage Gen2 fiókot a helyi gépére. Ez a folyamat WASB-fiókkal is elvégezhető; azonban egy példát mutatunk be az ADLSg2-fiókra

A tárfiók helyi gépen való csatlakoztatásával kapcsolatos további információkért látogasson el erre a lapra.

  1. A blobfuse-t a Microsoft-termékek linuxos szoftvertárából telepítheti.
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
  1. Hozza létre a csatlakoztatási pontot (mkdir /path/to/mount), és csatlakoztassa a blobtárolót a blobfuse használatával. Ebben a példában a privatechannel értéket használjuk a mycontainer változóhoz.
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 

A csatorna létrehozása

A következő lépésben létrehozunk egy egyéni Conda-csatornát.

  1. A helyi gépen hozzon létre egy könyvtárat az egyéni csatorna összes csomagjának rendszerezéséhez. Rendezze az tar.bz2 összes csomagot https://repo.anaconda.com/pkgs/main/linux-64/ az alkönyvtárba. Ügyeljen arra, hogy az összes függő tar.bz2 csomagot is tartalmazza.

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
  1. Most ellenőrizheti azt a tárfiókot, ahol a privatechannel/channel címtár létre lett volna hozva.

Megjegyzés

A Conda nem tartja tiszteletben a tárolóhoz társított SAS-jogkivonatot. Ezért a "privatechannel" tárolót nyilvános hozzáférésként kell megjelölnie.

További információért látogasson el a Conda egyéni csatornák létrehozására vonatkozó felhasználói útmutatójára is.

Tárfiók engedélyei

Most ellenőriznünk kell a tárfiók engedélyeit. Az engedélyek beállításához lépjen arra az elérési útra, ahol az egyéni csatorna létrejön. Ezután hozzon létre egy SAS-jogkivonatot, amely olvasási privatechannel , listázási és végrehajtási engedélyekkel rendelkezik.

A csatorna neve mostantól a folyamatból létrehozott blob SAS URL-címe lesz.

Minta Conda-környezet konfigurációs fájljának létrehozása

Végül ellenőrizze a telepítési folyamatot egy Conda-mintafájl environment.yml létrehozásával. Ha egy adatkiszivárgás elleni védelemmel rendelkező munkaterületen van, meg kell adnia a csatornát a nodefaults környezeti fájlban.

Íme egy példa a Conda konfigurációs fájlra:

name: sample 
channels: 
  - https://<<storage account name>>.blob.core.windows.net/privatechannel/channel?<<SAS Token>
  - nodefaults 
dependencies: 
  - openssl 
  - ncurses 

Miután létrehozta a Conda-mintafájlt, létrehozhat egy virtuális Conda-környezetet. Ezt helyileg az alábbi parancsok futtatásával ellenőrizheti:

conda env create --file sample.yml  
source activate env 
conda list 

Most, hogy ellenőrizte az egyéni csatornát, a Python-készlet felügyeleti folyamatával frissítheti az Apache Spark-készlet kódtárait.

Következő lépések