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. Bkz. Çalışma alanı klasöründen dağıtım.
- 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. Bkz. Git deposundan dağıtma.
İstediğiniz zaman aynı uygulama için çalışma alanı ile Git kaynakları arasında geçiş yapabilirsiniz. Bkz . Uygulamayı güncelleştirme veya yeniden dağıtma.
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 >Analiz ve Yapay Zeka'ya 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 ve ardından Özel uygulama oluştur'a tıklayın. Bkz. Özel Databricks uygulaması oluşturma.
-
Git'i 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. - Yeni bir uygulama için Git referansını (branch, tag veya commit) girin ve GitHub depoları için isteğe bağlı olarak push olaylarında otomatik dağıtımı etkinleştirin. Bkz . Otomatik Git dağıtımlarını etkinleştirme.
- Uygulama oluştur'a veya Kaydet'e tıklayarak uygulamaya genel bakış sayfasına dönün.
- Özel depolar için, uygulamanın hizmet sorumlusunun bir Git kimlik bilgisi yapılandırılmış olmalıdır. Uygulamaya genel bakış sayfasında Git kimlik bilgilerini yapılandır'a tıklayın. 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.
- (İsteğe bağlı) Dala yapılan her kaydetmede otomatik dağıtım için Push olaylarında otomatik dağıtım seçeneğini etkinleştirin. İzlenecek bir dal ayarlamalısınız. İsteğe bağlı olarak, depo kökü dışında bir yol ayarlamak için bir Kaynak kod yolu ekleyebilirsiniz. Bkz . Otomatik Git dağıtımlarını etkinleştirme.
- 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.
Otomatik Git dağıtımlarını etkinleştirme
Önemli
Git'ten otomatik dağıtımlar Beta sürümündedir. GitHub, Beta sırasında desteklenen tek sağlayıcıdır.
Otomatik dağıtımları etkinleştirdiğinizde Azure Databricks, GitHub deponuzda bir webhook oluşturur ve yapılandırılmış dala her yeni commit gönderildiğinde uygulamanızı yeniden dağıtır. Dağıtılmış uygulamanız, herhangi bir manuel adım gerekmeden deponuzla senkronize kalır. Depolar, 20 webhook ile sınırlıdır (GitHub Enterprise için 250).
Otomatik dağıtımlar için aşağıdaki kurulum gerekir:
- Azure Databricks GitHub uygulamasının depoya yüklenmesi gerekir.
- Depo özel olmalıdır. Databricks, genel depolardan otomatik dağıtımları desteklemez.
- Uygulamanın hizmet sorumlusunun depoya erişimi olan bir Git kimlik bilgileri olmalıdır. Bkz. Git sağlayıcınızı Databricks'e bağlama.
Otomatik dağıtımları etkinleştirmek için git sağlayıcısı olarak GitHub yapılandırın ve Auto'yı anında iletme olaylarında dağıtma etkinleştirin. Bunu aşağıdaki yerlerden birinde yapabilirsiniz:
- Özel uygulama oluşturma sihirbazının Git'i yapılandır adımı. Bkz. Özel Databricks uygulaması oluşturma.
- Mevcut bir uygulamada veya Uygulama Ayarlarını yeniden yapılandırarak Otomatik dağıtım rozeti. Git deposundan dağıtma'daki adımları izleyin.
Git referansı bir dal adı olmalıdır. Etiketler otomatik dağıtımlarla uyumlu değildir.
Uyarı
Uygulamanın hizmet sorumlusunun depo için bir Git kimlik bilgisi yoksa Azure Databricks, otomatik dağıtımları etkinleştirdiğinizde bir tane eklemenizi ister. Erişimi yetkilendirmek otomatik dağıtımları etkinleştirir, ancak bunları başlatmak için uygulamayı el ile yeniden dağıtmanız gerekir.
Otomatik dağıtımları devre dışı bırakmak için, mevcut bir uygulamada Otomatik dağıtım rozetine tıklayın ve anında iletme olaylarında otomatik dağıtımı devre dışı bırakın. Ayarları Uygulama Ayarları'nda da yeniden yapılandırabilirsiniz.
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. 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.
Git dağıtımlarını zorunlu kıldığında:
- 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.
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. Uygulamaya genel bakış 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.
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.