Skip To Content

تمديد Notebook Runtime

يتضمن ArcGIS Notebook Server وقتي تشغيل Notebook Runtime (مجموعات من وحدات Python). يتم توفير أوقات التشغيل هذه لمستخدمي دفاتر الملاحظات من خلال صور الحاوية، التي يتم تطبيقها على كل حاوية يتم تشغيلها في موقع الخادم.

يتضمن كل من وقتي تشغيل Standard وAdvanced ArcGIS API for Python ومجموعة متنوعة من وحدات Python التي يمكن استخدامها لعلوم البيانات والتحليل المكاني وإدارة المحتوى والإدارة. يتضمن Advanced Runtime أيضًا ArcPy.

راجع قائمة مكتبات Python المتاحة

في بعض الحالات، قد يحتاج مؤلفو دفاتر الملاحظات إلى وحدات أو إصدارات محددة من الوحدات غير المضمنة في وقتي التشغيل هذين. يمكنك الوصول إلى وحدات Python في ArcGIS Notebook Server بالطرق التالية:

  • قم بتثبيت وحدة Python نمطية أثناء جلسة Notebook. هذا يجعل الوحدة متاحة للاستخدام في Notebook هذا.
  • قم بتمديد صورة حاوية Esri لتضمين مكتبات Python إضافية في وقت تشغيل مخصص. ستوفر صورة الحاوية التي تنشئها وقت التشغيل الممتد لجميع مؤلفي Notebook في موقعك.

تثبيت الوحدات النمطية أثناء جلسة

يمكن لمؤلفي Notebook إجراء وحدات Python أو إصدارات الوحدات، غير المضمنة سواء في وقت التشغيل المتاح للاستخدام خلال جلسة Notebook باستخدام أنظمة إدارة حزمة conda أو pip. يوصى باستخدام conda، لأن ArcGIS Notebook Server يستخدمه لإدارة الوحدات؛ ومع ذلك تتوفر بعض وحدات Python فقط في pip.

يثبت هذا النهج الوحدة المطلوبة لمدة جلسة Notebook. بمجرد إغلاق Notebook أو إنهاء الحاوية التي تنتمي إلى المستخدم، فلن تصبح الوحدة متوفرة. لتثبيت الوحدات باستخدام هذه الطريقة، يجب أن يكون لدى المستخدمين اتصال بالإنترنت إلى قناة conda أو pip.

ملاحظة:‏

يتم تضمين كلاً من conda و pip في وقتي تشغيل Notebook. لا تحتاج إلى تثبيتها.

لتثبيت حزمة scrapy أثناء جلسة، على سبيل المثال، قم بتشغيل خلية Notebook باستخدام أحد الأوامر التالية، على أساس نظام إدارة الحزمة الذي تستخدمه:

استخدام نظام إدارة حزمة conda:

!conda install --yes scrapy

استخدام نظام إدارة حزمة pip:

!pip install scrapy

لاستخدام إصدار مختلف من وحدة Python في Notebook Runtime الذي تعمل عليه، فحدد رقم الإصدار في الأمر.

يجب أن تعيد تشغيل kernel بعد تشغيل أمر conda أو pip لكي تتوفر حزمتك الجديدة.

على سبيل المثال، تتوفر حزمة معينة في كلا Notebook Runtime في الإصدار 1.5، لكنك تريد استخدام أداة مقدمة في الإصدار 1.6. لتوفير الإصدار 1.6 من الحزمة أثناء جلسة دفتر الملاحظات، قم بتشغيل خلية دفتر ملاحظات باستخدام أحد الأوامر التالية، على أساس نظام إدارة الحزمة الذي تستخدمه:

استخدام نظام إدارة حزمة conda:

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

استخدام نظام إدارة حزمة pip:

!pip install <package name>==1.6

بناء صورة حاوية مخصصة

لإجراء تغييرات دائمة على Notebook Runtime، يمكنك إنشاء صورة حاوية مخصصة للاستخدام في موقع. ينشئ سير العمل التالي، الذي يتطلب امتيازات إدارية، صورة مخصصة ويكوِّن ArcGIS Notebook Server لاستخدامه.

استخدم أيًا من Notebook Runtime (Standard أو Advanced) كنقطة بداية. بمجرد إنشاء وقت التشغيل المخصص، يمكنك تسجيله باعتباره وقت تشغيل جديد في موقعك.

  1. تثبيت وتكوين ArcGIS Notebook Server.
  2. سجل الدخول إلى دليل مسؤول ArcGIS Notebook Server كمسؤول.

    يتم تنسيق عنوان URL كـ https://notebookserver.domain.com:11443/arcgis/admin/.

  3. انقر على Notebook > Runtime، ثم حدد Notebook Runtime الذي تريد تمديده لصورتك المخصصة.

    في صفحة مورد وقت التشغيل، لاحظ قيمة imageId لوقت التشغيل هذا. ستقوم بتضمين هذه القيمة في الخطوة التالية.

  4. أنشئ Dockerfile الذي يضيف وحدات Python المطلوبة إلى الصورة المخصصة.

    Dockerfile عبارة عن ملف نصي بسيط من التعليمات لبناء صورة حاوية Docker. اتبع مستندات Dockerfile للحصول على المعلومات وأفضل الممارسات.

    في هذا المثال، ستقوم بإضافة مكتبات عملاء SQL Server إلى بيئة تشغيل Notebook المتقدمة. تعمل كتلة التعليمات البرمجية التالية في Dockerfile على توجيه Docker للوصول إلى Advanced Runtime باستخدام اسم repository الخاص به و tag لتثبيت مكتبات عميل SQL Server في نطاق وقت التشغيل. يمكنك الحصول على اسم repository وtag باستخدام الأمر docker images على جهاز مثبت عليه ArcGIS Notebook Server وقت التشغيل هذا.

    استخدم الأمر docker images للحصول على اسم الصورة (المستودع) وعلامة لوقت تشغيل دفتر ملاحظات موجود.

    
    docker images
    
    REPOSITORY                        TAG                 IMAGE ID            CREATED             SIZE
    arcgis-notebook-python-advanced   10.8.1.14362        e46a81f69ea0        12 months ago       12.4GB
    arcgis-notebook-python-standard   10.8.1.14362        106a660a4d0b        12 months ago       7.51GB

    قم بإنشاء بيئة تشغيل مخصصة عن طريق إضافة مكتبات عملاء SQL Server إلى بيئة تشغيل Notebook المتقدمة.

    في حاويات Linux، نفّذ الأمر التالي:

    FROM arcgis-notebook-python-advanced:11.1.0.42869
            
    USER root
            
    RUN apt-get update -y && \
    	apt-get install vim wget curl unzip gzip ca-certificates odbcinst1debian2 -y --no-install-recommends
            
    RUN apt-get install --reinstall software-properties-common -y
            
    RUN add-apt-repository 'ppa:deadsnakes/ppa'
    RUN apt-get update
    RUN apt-get install -y python3.7 python3-pip
            
    # Install system DB drivers
    #
    # Add SQL Server ODBC Driver 18.1 for Ubuntu 22.04
    #
    # NOTE: Only msodbcsql 18.1 is supported on Ubuntu 22.04
    # Run apt list -a msodbcsql18 to check for newer release version
    RUN curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - && \
    	curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list > /etc/apt/sources.list.d/mssql-release.list && \
    	apt-get update && \
    	ACCEPT_EULA=Y apt-get install -y --allow-unauthenticated msodbcsql18=18.1.1.1-1 && \
    	apt-get install -y --allow-unauthenticated unixodbc-dev
            
    RUN rm -rf /var/lib/apt/lists/*
            
    USER $NB_UID

    في حاويات Windows، نفّذ الأمر التالي:

    FROM arcgis-notebook-python-windows:11.1.0.42869
    
    USER ContainerAdministrator
    
    # Install SQL Server ODBC Driver
    
    RUN powershell -Command $ErrorActionPreference = 'Stop' ; \
        [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 ; \
        Invoke-WebRequest $('https://go.microsoft.com/fwlink/?linkid=2223270') -OutFile 'msodbcsql.msi' -UseBasicParsing ; \
        Start-Process msiexec '/i msodbcsql.msi /qb IACCEPTMSODBCSQLLICENSETERMS=YES' -Wait ; \
        Remove-Item msodbcsql.msi -Force
    
    USER arcgis
  5. احفظ Dockerfile الخاص بك على الجهاز، في مجلد جديد يحتوي فقط على Dockerfile.
  6. أنشئ صورة حاوية مخصصة باستخدام الأمر Docker.

    سوف تحتوي هذه الصورة على وقت تشغيل جديد كما هو محدد في Dockerfile. افتح نافذة موجه الأوامر وشغّل أمر باستخدام بناء الجملة التالي:

    cd C:\DockerfileDir
    docker build -t arcgis-notebook-python-advanced-custom:11.1.0.42869 -f Dockerfile .
    ملاحظة:‏

    تأكد من تضمين النقطة في نهاية الأمر.

    عند تشغيل الأمر، سيقوم Docker ببناء صورة الحاوية الجديدة. سيكون السطر الأخير في إخراج الأمر Successfully built <imageId> مع قيمة معرف مختصر للصورة الجديدة. يجب إمداد موقع ArcGIS Notebook Server الخاص بك بقيمة imageId الكاملة.

  7. شغّل الأمر التالي في نافذة موجه الأوامر للحصول على قيمة معرف الصورة:

    docker inspect <imageId>

    إذا كان لديك موقع Notebook Server لجهاز واحد، فيمكنك تخطي الخطوات من 8 إلى 10. إذا كان لديك موقع Notebook Server لأجهزة متعددة، فأكمل الخطوات من 8 إلى 10.

  8. احفظ صورة Docker المخصصة كملف *.tar باستخدام docker save.

    افتح نافذة أوامر على جهاز Notebook Server حيث تم تثبيت صورة وقت التشغيل المخصصة وشغّل الأمر التالي لحفظ صورة وقت التشغيل المخصصة كملف *.tar.

     docker save arcgis-notebook-python-advanced-custom:10.8.1.14362 > arcgis-notebook-python-advanced-custom.tar

  9. على كل جهاز مثبت عليه Notebook Server، قم بتحميل صورة وقت التشغيل المخصصة باستخدام أداة ArcGIS Notebook Server المساعدة لما بعد التثبيت.
    1. افتح موجه الأوامر كمسؤول.
    2. غيّر الدلائل إلى مجلد الأداة المساعدة لما قبل التثبيت ArcGIS Notebook Server.

      المسار الافتراضي هو C:\Program Files\ArcGIS\NotebookServer\tools\postInstallUtility

    3. قم بتثبيت صورة Docker المخصصة من خلال تحديد مسار ملفها.

       PostInstallUtility.bat -l <path of .tar Custom Docker image>

  10. كرر الخطوة 9 في كل جهاز مشارك في موقع ArcGIS Notebook Server.

صورتك المخصصة مبنية الآن ولديك قيمتها imageId الكاملة، والتي سوف تستخدمها لتسجيلها مع موقع ArcGIS Notebook Server في القسم التالي.

تسجيل وقت تشغيل جديد في Manager

بدءًا من 10.8، يمكنك استخدام مدير ArcGIS Notebook Server لتسجيل وقت تشغيل مخصص قمت بإنشائه.

  1. سجّل الدخول إلى بوابة ArcGIS Enterprise الإلكترونية كمسؤول وافتح ArcGIS Notebook Server Manager.
  2. افتح صفحة الإعدادات وانقر على أوقات التشغيل.
  3. انقر فوق تسجيل وقت التشغيل لفتح مربع حوار التسجيل.
  4. حدد القيم المناسبة لإكمال التسجيل.

    المعلمةالتفاصيل

    الاسم

    سلسلة لتمثيل وقت التشغيل الجديد، مثل "Notebook Custom Runtime Python 3".

    نوع الحاوية

    القيمة الصالحة الوحيدة هي docker.

    الحد الأقصى لوحدة المعالجة المركزية

    الحد الأقصى لعدد وحدات وحدة المعالجة المركزية المراد استخدامها لكل حاوية.

    مطلوب امتيازات متقدمة

    قم بتشغيل زر التبديل إذا كان وقت التشغيل يتطلب امتياز دفاتر الملاحظات المتقدمة.

    مُعرّف الصورة

    معرف كامل (غير مقتطع) لصورة Docker الجديدة، عند إنشائه.

    وقت تشغيل Docker

    تنطبق فقط على أوقات تشغيل GPU في بيئات Linux.

    الحد الأقصى للذاكرة

    الحد الأقصى لحجم الذاكرة المراد استخدامها لكل حاوية.

    وحدة الحد الأقصى للذاكرة

    الوحدة المحددة بواسطة معلمة maxMemory.

    الحد الأقصى لذاكرة التبديل

    الحد الأقصى لمقدار ذاكرة التبديل المتوفرة لكل حاوية إذا وصلت إلى حد maxMemory.

    وحدة الحد الأقصى لذاكرة التبديل

    الوحدة المحددة بواسطة معلمة maxSwapMemory.

    ذاكرة مشتركة

    مقدار الذاكرة المشارَكة المتوفرة لكل حاوية.

    وحدة الذاكرة المشتركة

    الوحدة المحددة بواسطة معلمة sharedMemory.

    بيان المكتبة

    ملف *.json (بترميز UTF-8 أو ANSI) يحتوي على قائمة مكتبات Python في وقت التشغيل.

    ملاحظة:‏

    لإنشاء ملف manifest.json، افتح نافذة PowerShell على جهاز ArcGIS Notebook Server الذي تم عليه تثبيت صورة وقت تشغيل دفتر الملاحظات المخصص وقم بتشغيل أحد الأوامر التالية، اعتمادًا على ما إذا كنت تستخدم حاويات Windows أو Linux.

    في حاويات Windows، استخدم الأمر التالي:

    $ID = docker run -d -it <custom_runtime_image_ID> cmd; docker exec -it $ID powershell "conda list --json >> C:\arcgis\home\manifest.json"; docker cp $ID/:C:\arcgis\home\manifest.json <existing_folder_path>; docker kill $ID; docker rm -f $ID;

    في حاويات Linux، استخدم الأمر التالي:

    $ID = docker container run -d --rm -it -v /:/host <custom_runtime_image_ID> /bin/bash; docker exec -it $ID /opt/conda/bin/conda list --json >> ~\Desktop\manifest.json; docker kill $ID

  5. عندما تكون جاهزًا، انقر على حفظ لتسجيل وقت التشغيل الجديد.
  6. افتح مصنفًا جديدًا لاختبار هذا التحديث. تحقق من أن الوحدات النمطية أو إصدارات الوحدات التي قمت بإضافتها إلى صورتك المخصصة متوفرة في دفتر الملاحظات.

تحديث وقت التشغيل المخصص بعد ترقية ArcGIS Notebook Server

اتبع الخطوات الموضحة أدناه لتحديث وقت التشغيل المخصص بعد ترقية ArcGIS Notebook Server.

  1. أنشئ صورة لوقت التشغيل المخصص باستخدام الإصدار الجديد من صورة وقت تشغيل دفتر الملاحظات.
  2. استخدم الأداة المساعدة لما بعد تثبيت خادم دفتر الملاحظات لتثبيت صورة وقت التشغيل الجديدة على كل أجهزة خادم دفتر الملاحظات.
  3. سجِّل وقت التشغيل الجديد باستخدام مدير ArcGIS Notebook Server.
  4. في صفحة تفاصيل العناصر الخاصة بكل دفتر ملاحظات يستخدم وقت التشغيل المخصص، انقر فوق الإعدادات.
  5. تحقق من وقت التشغيل وقم بتحديثه إلى وقت التشغيل المخصص المسجّل حديثًا لكل جهاز يستخدم وقت التشغيل المخصص.
  6. بمجرد التأكد من أن صورة وقت التشغيل الجديدة تعمل، تجاهل الإصدار السابق من وقت التشغيل المخصص عن طريق إلغاء تسجيل وقت التشغيل وإزالة صورة وقت التشغيل من كل جهاز من أجهزة خادم دفتر الملاحظات.

لإعادة أوقات التشغيل في موقع ArcGIS Notebook Server إلى الإعدادات الأصلية، استخدم عملية استعادة أوقات تشغيل المصنع في دليل المسؤول. يتوفر هذا على https://notebookserver.domain.com:11443/arcgis/admin/notebooks/runtimes/restore، وسيستعيد فقط أوقات تشغيل المصنع للإصدار الحالي لموقعك.