Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Databricks uygulamanızı oluşturup geliştirdikten sonra Azure Databricks çalışma alanında erişilebilir hale getirmek için dağıtın. Dağıtım uygulamanızı derler, bağımlılıkları yükler ve proje dosyalarınızda tanımlanan yapılandırmayı kullanarak çalıştırır. Azure Databricks kullanıcı arabirimini veya Databricks CLI'yi kullanarak uygulamaları dağıtabilirsiniz.
Uyarı
Şablondan uygulama oluşturursanız, Azure Databricks ilk oluşturduğunuzda uygulamayı otomatik olarak dağıtır. Ancak, daha sonra değişiklik yaptıktan sonra da yeniden dağıtabilirsiniz. Bkz. Şablondan Databricks uygulaması oluşturma.
Dağıtım mantığı
Databricks Apps, Python, Node.jsveya her ikisinin birleşimini kullanan uygulamaların dağıtılmasına destek olur. Bu, arka ucu Python olan Node.js ön ucu gibi esnek mimarilere olanak tanır.
Dağıtım sırasında derleme işlemi, Node.js kullanılıp kullanılmadığını belirlemek için uygulama dizininizin kökündeki bir package.json dosyayı denetler. Varsa, Python adımların yanı sıra Düğüme özgü derleme adımlarını da içerir. Dağıtım mantığı şu deseni izler:
Eğer package.json varsa:
-
npm installkomutunu çalıştırın - Python bağımlılıklarını yükleyin:
- Varsa
requirements.txtkomutunu çalıştırınpip install -r requirements.txt - Eğer
requirements.txtmevcut değilse ve hempyproject.tomlhem deuv.lockmevcutsa, bağımlılıkları yüklemek içinuv synckomutunu çalıştırın.
- Varsa
-
npm run buildçalıştırın (eğerbuildiçindepackage.jsonbetiği tanımlanmışsa) - içinde
app.yamlbelirtilen komutu çalıştırın veyanpm run startherhangi bir komut belirtilmemişse
Uyarı
app.yaml içinde hiçbir komut belirtilmezse, uygulama Python kodu içerse bile Azure Databricks npm run start yürütür. İkisini de başlatan, start gibi bir araç kullanan özel bir concurrently betiği tanımlayın; böylece hem Python hem de Node.js işlemlerini çalıştırabilirsiniz. Örneğin: concurrently "npm run start:node" "python my_app.py".
Eğer package.json mevcut değilse:
- Python bağımlılıklarını yükleyin:
- Varsa
requirements.txtkomutunu çalıştırınpip install -r requirements.txt - Eğer
requirements.txtmevcut değilse ve hempyproject.tomlhem deuv.lockmevcutsa, bağımlılıkları yüklemek içinuv synckomutunu çalıştırın.
- Varsa
- içinde
app.yamlbelirtilen komutu çalıştırın veyapython <my-app>.pyherhangi bir komut belirtilmemişse
Dağıtıma hazırlanma
Uygulamanızı dağıtmadan önce projenizin gerekli bileşenleri içerdiğini doğrulayın:
-
Ana betik -
app.pyveyaapp.jsgibi giriş noktası dosyanız. -
İsteğe bağlı
app.yamldosya - Uygulamanız özel bir komut veya ortam değişkenleri gerektiriyorsa, yürütmeyi yapılandırmak için birapp.yamldosya ekleyin. Bkz Databricks uygulama yürütmesiniapp.yamlile yapılandırma. - Bağımlılıklar - Tüm bağımlılıkların kullanılabilir olduğundan emin olun. Bkz. Databricks uygulaması için bağımlılıkları yönetme.
-
Gizli diziler veya ortam değerleri - içindeki
envbölümünü kullanıyorsanızapp.yaml, başvuruda bulunan gizli dizilerin veya dış kaynakların doğru yapılandırıldığını ve erişilebilir olduğunu doğrulayın. Bkz. Databricks uygulamasına kaynak ekleme.
Ayrıca, app service sorumlusunun kaynak kod klasörüne erişimi olduğundan emin olun.
Dağıtım kaynağı seçme
Databricks uygulamalarını aşağıdaki kaynaklardan dağıtabilirsiniz:
- Çalışma alanı klasörü - Uygulama dosyalarını bir çalışma alanı klasörüne yükleyin ve oradan dağıtın. Bu, standart dağıtım yöntemidir.
- Git deposu - Bir uygulama için Git deposu yapılandırın ve çalışma alanına dosya yüklemeden doğrudan dağıtın. Uygulama, her dağıtımda yapılandırılmış Git referansından (dal, etiket veya işlem) kodu alır. Ayrıca, depo içindeki belirli bir dizinden dağıtılacak bir kaynak kodu yolu da belirtebilirsiniz. GitHub, GitLab ve Bitbucket dahil olmak üzere tüm büyük Git sağlayıcıları desteklenir. Desteklenen sağlayıcıların tam listesi için bkz. Git sağlayıcınızı Databricks'e bağlama.
Çalışma alanı yöneticisi yalnızca Git dağıtımlarını zorunlu kılmadığı sürece, istediğiniz zaman aynı uygulama için çalışma alanı ile Git kaynakları arasında geçiş yapabilirsiniz. Bkz. Yalnızca Git dağıtımlarını zorunlu kılma.
Yalnızca Git dağıtımlarını zorunlu kılma
Çalışma alanı yöneticileri, git depolarından dağıtım yapmak için çalışma alanı içindeki tüm uygulamaları gerektirebilir. Bu ayarı etkinleştirmek için Ayarlar>Geliştirme>Uygulamaları'na gidin ve Yalnızca Git'ten uygulama dağıtımlarına izin ver'i açın. Bu ayar varsayılan olarak kapalıdır.
Bu ayarı etkinleştirdiğinizde:
- Kullanıcıların uygulama oluşturmadan önce bir Git deposu yapılandırması gerekir.
- Kullanıcılar çalışma alanı klasörlerinden değil yalnızca Git'ten dağıtım yapabilir.
- Databricks çalışma alanında uygulama şablonlarını devre dışı bırakır.
- Kullanıcılar, git deposunu içeren uygulamalardan kaldıramaz.
- Mevcut uygulamalar çalışmaya devam eder, ancak uygulamanın Git deposu olmadığı sürece kullanıcılar bunları dağıtamaz veya yeniden başlatamaz.
Uygulamayı dağıtma
Aşağıdaki bölümlerde çalışma alanı klasöründen veya doğrudan git deposundan nasıl dağıtılacağı açıklanmaktadır.
Çalışma alanı klasöründen dağıtım
Databricks kullanıcı arabirimi
Azure Databricks kullanıcı arabiriminden bir uygulama dağıtmak için:
- Uygulama dosyalarını Azure Databricks çalışma alanınıza yükleyin. Yönergeler için bkz. Dosyayı içeri aktarma.
- Databricks çalışma alanınızda
Uygulama değiştirici ve Databricks Uygulamaları'nı seçin.
- Ad sütununda uygulamanızı seçin.
- Dağıt'a tıklayın ve çalışma alanınızda uygulama dosyalarını yüklediğiniz klasörü seçin.
- Seç'e ve ardından Dağıt'a tıklayın.
Databricks Komut Satırı Arayüzü (CLI)
CLI kullanarak uygulama dağıtmak için:
Bir terminal açın ve uygulama dosyalarınızı içeren dizine gidin.
synckomutunu kullanarak uygulama dosyalarınızı Azure Databricks çalışma alanına yükleyin. Yolu, dosyaları yüklemek istediğiniz çalışma alanının konumuna göre değiştirin.databricks sync --watch . /Workspace/Users/my-email@org.com/my-appbayrağı
--watch, eşitleme işlemini çalışır durumda tutar ve dosyaları yerel olarak değiştirdiğinizde değişiklikleri otomatik olarak karşıya yükler. Belirli dosyaları veya dizinleri eşitlemenin dışında tutmak için bunları yerel uygulama dizininizdeki bir.gitignoredosyaya ekleyin. Dışlanması gereken yaygın dosyalar ,node_modules/,.env,__pycache__/, ve tüm büyük veri dosyaları veya derleme yapıtlarıdır.DS_Store.Çalışma alanınızdaki dosyaları görüntüleyerek yüklemeyi doğrulayın.
Uygulama değiştirici >Lakehouse'a tıklayın, ardından
Çalışma Alanı'na tıklayın ve uygulamanız için oluşturduğunuz dizine gidin.Aşağıdaki komutu çalıştırarak uygulamayı dağıtın. Uygulama adını ve kaynak kodu yolunu değerlerinizle değiştirin.
databricks apps deploy my-app-name \ --source-code-path /Workspace/Users/my-email@org.com/my-appCLI dağıtım ilerleme durumunu görüntüler ve uygulamanın ne zaman çalıştığını onaylar.
Git deposundan dağıtma
Git deposundan uygulama dağıtmak için, depoyu uygulama düzeyinde ekleyin ve dağıttığınızda Git başvurusunu belirtin. Git deponuz , bağımlılıkları ve giriş noktası gibi app.yamluygulama dosyalarını içermelidir. GitHub, GitLab ve Bitbucket dahil olmak üzere tüm büyük Git sağlayıcıları desteklenir. Kullanıcı arabirimi, CLI, API veya Bildirim temelli Otomasyon Paketlerini kullanarak git destekli uygulamalar da dağıtabilirsiniz.
Databricks kullanıcı arabirimi
Git'ten bir uygulamayı yapılandırmak ve dağıtmak için:
- Uygulama dosyalarınızı bir Git deposuna yükleyin.
- Databricks çalışma alanınızda
Uygulama değiştirici ve Databricks Uygulamaları'nı seçin.
- Düzenlemek için mevcut bir uygulamayı seçin veya + Uygulama oluştur'a tıklayın.
-
Git deposunu yapılandır adımında Git deposu URL'sini (örneğin,
https://github.com/org/repo) girin ve bir Git sağlayıcısı seçin. - Uygulama ayrıntıları sayfasına dönmek için Uygulama oluştur'a veya Kaydet'e tıklayın.
- Özel depolar için, uygulamanın hizmet sorumlusunun bir Git kimlik bilgisi yapılandırılmış olmalıdır. Uygulama ayrıntıları sayfasında Git kimlik bilgilerini yapılandır'a tıklayın veya uygulamayı düzenleyip Git deposunu yapılandırma adımına kimlik bilgilerini ekleyin. Git kimlik bilgisi eklemek için uygulamada izinlere sahip
CAN MANAGEolmanız gerekir. Genel depolar Git kimlik bilgileri gerektirmez. Her sağlayıcıyla ilgili yönergeler için bkz. Git sağlayıcınızı Databricks'e bağlama.
Ardından uygulamayı dağıtın:
- Uygulamaya genel bakış sayfasında Dağıt'a tıklayın.
- Git'ten'i seçin.
-
Git başvurusu için dal adını, etiketi veya işlem SHA'sını (örneğin,
main,v1.0.0veya işleme karması) girin. - Başvuru türü için dal, etiket veya işleme gibi başvuru türünü belirtin.
- (İsteğe bağlı) Kaynak kodu yolu için, depodaki belirli bir dizinin yolunu girin. Uygulama bu dizini en üst düzey dizin olarak ele alır ve dışındaki dosyalara erişemez. Bir yol belirtmezseniz Databricks depo kökünü kullanır.
- Dağıt’a tıklayın.
Databricks Komut Satırı Arayüzü (CLI)
CLI kullanarak Git'ten uygulama dağıtmak için:
Uygulama dosyalarınızı bir Git deposuna yükleyin.
Uygulamayı oluştururken uygulamada Git deposunu yapılandırın veya mevcut bir uygulamaya ekleyin. Desteklenen sağlayıcılar
gitHub,gitHubEnterprise,gitLab,gitLabEnterpriseEdition,bitbucketCloud,bitbucketServer,azureDevOpsServicesveawsCodeCommit'dir.Git deposu yapılandırılmış yeni bir uygulama oluşturmak için create komutunu kullanın:
databricks apps create my-app \ --json '{"git_repository": {"url": "https://github.com/org/repo", "provider": "gitHub"}}'Mevcut bir uygulamaya Git deposu eklemek veya güncelleştirmek için create-update komutunu kullanın:
databricks apps create-update my-app \ --json '{"update_mask": "git_repository", "git_repository": {"url": "https://github.com/org/repo", "provider": "gitHub"}}'Özel depolar için, uygulamanın hizmet sorumlusu için bir Git kimlik bilgisi yapılandırın. Git kimlik bilgisi eklemek için uygulamada izinlere sahip
CAN MANAGEolmanız gerekir. Genel depolar Git kimlik bilgileri gerektirmez.CLI kullanarak uygulamanın hizmet sorumlusuna git kimlik bilgisi eklemek için şunu çalıştırın:
databricks git-credentials create --json '{ "git_provider": "gitHub", "git_email": "your-email@example.com", "personal_access_token": "YOUR_TOKEN", "principal_id": YOUR_SP_ID, "name": "GitHub credentials for SP" }'YOUR_SP_IDdeğerini uygulamanın hizmet sorumlusu kimliğiyle değiştirin. Her sağlayıcı için kişisel erişim belirteci alma yönergeleri için bkz. Git sağlayıcınızı Databricks'e bağlama.Git referansını belirterek uygulamayı dağıtın. bir
branch,tagveyacommitbelirtebilirsiniz (bunlar birbirini dışlar). İsteğe bağlı olarak, depo içindeki bir alt dizinden dağıtım yapmak içinsource_code_pathekleyin.databricks apps deploy my-app \ --json '{"git_source": {"branch": "main"}}'Belirli bir etiketi veya commit'i dağıtmak için:
databricks apps deploy my-app \ --json '{"git_source": {"tag": "v1.0.0"}}'databricks apps deploy my-app \ --json '{"git_source": {"commit": "abc123def456"}}'Depo içindeki bir alt dizinden dağıtmak için:
databricks apps deploy my-app \ --json '{"git_source": {"branch": "main", "source_code_path": "apps/my-app"}}'CLI dağıtım ilerleme durumunu görüntüler ve uygulamanın ne zaman çalıştığını onaylar.
Dal veya etiket başvuruları için Azure Databricks bu daldan veya etiketten en son işlemeyi dağıtır. Commit SHA referansları için Azure Databricks her zaman söz konusu taahhüdü dağıtır. Hizmet sorumlusunun Git kimlik bilgisi geçersizse veya süresi dolduysa dağıtım başarısız olur.
Uyarı
Git dağıtımı genel kullanıma sunulmadan önce oluşturulan uygulamalar, oluşturuculara CAN MANAGE uygulamanın hizmet sorumlusu üzerinde otomatik olarak izin vermez. Eski bir uygulamaya Git kimlik bilgisi eklemeniz gerekiyorsa, çalışma alanı yöneticisinden hizmet sorumlusu üzerinde size CAN MANAGE izinler vermesini isteyin.
Hizmet sorumluları sağlayıcı başına bir Git kimlik bilgilerini destekler. Hesap konsolu gibi başka bir yerde kimlik bilgilerini güncelleştirirseniz, söz konusu sağlayıcının mevcut kimlik bilgilerinin yerini alır.
Dağıtım sonrası davranış
Dağıtım tamamlandıktan sonra, Azure Databricks, command dosyanızda tanımlı olan app.yaml temelinde veya varsayılan olarak python app.py çalıştırarak uygulamanızı başlatır. Uygulama ayrıntıları sayfası geçerli durumu gösterir ve günlüklere, dağıtım geçmişine ve ortam bilgilerine erişim sağlar.
Dağıtılan uygulamanın çıkışını görüntülemek için uygulama bağlantısına tıklayın.
Hata ayıklama ve çalışma zamanı izleme için Günlükler sekmesine gidin. Bakınız Databricks Uygulamaları için Günlüğe Kaydetme ve İzleme.
Uygulamayı güncelleştirme veya yeniden dağıtma
Kaynak kodunda veya yapılandırmada değişiklik yaptıktan sonra uygulamanızı yeniden dağıtin. Yeniden dağıtım, uygulamayı yeniden oluşturmadan en son güncelleştirmelerinizi uygular. İstediğiniz zaman çalışma alanından veya Git deposundan yeniden dağıtabilirsiniz.
Çalışma alanı klasöründen yeniden dağıtma
Çalışma alanı klasöründen yeniden dağıtmak için:
- Çalışma alanı klasöründeki uygulama dosyalarınızı güncelleştirin.
- Uygulamayı seçin ve Dağıt'a tıklayın.
- Kaynak kod yolu değiştiyse veya git kaynağından geçiş yaptığınızda Dağıt'ın yanındaki oka tıklayın ve Farklı bir kaynak kullanarak dağıt'ı seçin.
Git deposundan yeniden dağıtma
Git deposundan yeniden dağıtmak için:
- Değişikliklerinizi Git deposuna gönderin.
- Azure Databricks çalışma alanınızda uygulamanızı seçin ve Deploy öğesine tıklayın.
- Git başvurusu değiştiyse veya çalışma alanı kaynağından geçiş yaptığınızda Dağıt'ın yanındaki oka tıklayın ve Farklı bir kaynak kullanarak dağıt'ı seçin.
Git deposunu veya kimlik bilgilerini değiştirmek için uygulama yapılandırmasını düzenleyin. CLI veya API kullanarak Git deposunu güncelleştirmek için create-update komutunu kullanın. Uygulamadan Git deposunu kaldırmak, çalışma alanından dağıtımı zorlar.
Önemli
Git deposunu değiştirmek veya dağıtım kaynakları (Git ve çalışma alanı) arasında geçiş yapmak, uygulamanın hizmet sorumlusu için tüm Git kimlik bilgilerini siler. Yalnızca Git başvurusu değiştirildiğinde kimlik bilgileri silinmez. Git'ten yeniden dağıtmadan önce kimlik bilgilerini yeniden yapılandırmanız gerekir.
Dağıtım sorunlarını giderme
Uygulamanız dağıtılamazsa veya beklendiği gibi çalışmazsa aşağıdaki sorun giderme adımlarını deneyin:
- Hata iletileri veya çalışma zamanı çıktısı için günlükleri denetleyin.
- Söz dizimlerini ve ayarları doğrulayın
app.yaml. -
envbölümündeki gizli bilgilerin ve ortam değişkenlerinin düzgün çözümlendiğini doğrulayın. - Tüm gerekli bağımlılıkların dahil edildiğini veya yüklendiğini onaylayın.
- Çalışma alanınız Özel Bağlantı veya kısıtlanmış çıkış ağ ilkeleri kullanıyorsa, gerekli etki alanlarının izin verilenler listesine eklendiğini doğrulayın. Eksik çıkış izin listesi girişleri, Özel Bağlantı ortamlarındaki dağıtım hatalarının yaygın nedenlerinden biridir. Bkz. Özel Bağlantı ortamlarında uygulamaları dağıtma.
Git deposu dağıtımları için:
- Özel depolar için, uygulamanın hizmet sorumlusunun yapılandırılmış bir Git kimlik bilgisi olduğunu doğrulayın.
- Git deposu URL'sinin doğru olduğunu ve Git başvurusunun (dal, etiket veya işleme) depoda mevcut olduğunu doğrulayın.
- Çalışma alanı yöneticisi yalnızca Git dağıtımlarını zorlarsa, bir Git deposu yapılandırılmadığı sürece uygulamayı dağıtamaz veya başlatamazsınız.
- CLI, API veya Bildirim temelli Otomasyon Paketlerinden dağıtım yaparsanız, önce uygulamayı oluşturun, ardından Git kimlik bilgilerini uygulamanın hizmet sorumlusuna ekleyin.