Bagikan melalui


Service Broker dengan Grup Ketersediaan AlwaysOn (SQL Server)

Berlaku untuk: SQL Server

Topik ini berisi informasi tentang mengonfigurasi Service Broker untuk bekerja dengan grup ketersediaan AlwaysOn di SQL Server.

Menerima pesan jarak jauh dari instans Service Broker lainnya

  1. Pastikan bahwa grup ketersediaan memiliki pendengar.

    Untuk informasi selengkapnya, lihat Membuat atau Mengonfigurasi Listener Grup Ketersediaan (SQL Server).

  2. Pastikan titik akhir Service Broker ada dan dikonfigurasi dengan benar.

    Pada setiap instans SQL Server yang menghosting replika ketersediaan untuk grup ketersediaan, konfigurasikan titik akhir Service Broker, sebagai berikut:

    • Atur LISTENER_IP ke 'SEMUA'. Pengaturan ini memungkinkan koneksi pada alamat IP valid apa pun yang terikat ke pendengar grup ketersediaan.

    • Atur PORT Service Broker ke nomor port yang sama di semua instans server host.

      Tip

      Untuk melihat nomor port titik akhir Service Broker pada instans server tertentu, kueri kolom port tampilan katalog sys.tcp_endpoints, di mana type_desc = 'SERVICE_BROKER'.

    Contoh berikut membuat titik akhir Service Broker terautentikasi Windows yang menggunakan port Service Broker default (4022) dan mendengarkan semua alamat IP yang valid.

    CREATE ENDPOINT [SSBEndpoint]  
        STATE = STARTED  
        AS TCP  (LISTENER_PORT = 4022, LISTENER_IP = ALL )  
        FOR SERVICE_BROKER (AUTHENTICATION = WINDOWS)  
    

    Untuk informasi selengkapnya, lihat MEMBUAT TITIK AKHIR (Transact-SQL).

    Catatan

    Broker Layanan SQL Server tidak sadar multisubnet. Atur RegisterAllProvidersIP ke 0 dan verifikasi bahwa kluster memiliki izin yang diperlukan di DNS untuk menggunakan alamat IP statis. Lihat mengonfigurasi listener grup ketersediaan untuk mempelajari selengkapnya. Service Broker dapat menunda pesan dengan status "CONVERSING" yang mencoba menggunakan alamat IP yang dinonaktifkan.

  3. Berikan izin CONNECT pada titik akhir.

    Berikan izin CONNECT pada titik akhir Service Broker baik ke PUBLIC atau ke login.

    Contoh berikut memberikan koneksi pada titik akhir Service Broker yang dinamai broker_endpoint ke PUBLIC.

    GRANT CONNECT ON ENDPOINT::[broker_endpoint] TO [PUBLIC]  
    

    Untuk informasi selengkapnya, lihat GRANT (Transact-SQL).

  4. Pastikan bahwa msdb berisi rute AutoCreatedLocal atau rute ke layanan tertentu.

    Catatan

    Secara default, setiap database pengguna, termasuk msdb, berisi rute AutoCreatedLocal. Rute ini cocok dengan nama layanan dan instans broker apa pun dan menentukan bahwa pesan harus dikirimkan dalam instans saat ini. AutoCreatedLocal memiliki prioritas yang lebih rendah daripada rute yang secara eksplisit menentukan layanan tertentu yang berkomunikasi dengan instans jarak jauh.

    Untuk informasi tentang membuat rute, lihat Contoh Perutean Broker Layanan (di SQL Server 2008 R2 (10.50.x) versi Books Online) dan CREATE ROUTE (Transact-SQL).

Persyaratan untuk Mengirim Pesan ke Layanan Jarak Jauh dalam Grup Ketersediaan

  1. Buat rute ke layanan target.

    Konfigurasikan rute sebagai berikut:

    • Atur ALAMAT ke alamat IP pendengar grup ketersediaan yang menghosting database layanan.

    • Atur PORT ke port yang Anda tentukan di titik akhir Service Broker dari setiap instans SQL Server jarak jauh.

    Contoh berikut membuat rute bernama RouteToTargetService untuk ISBNLookupRequestService layanan. Rute menargetkan pendengar grup ketersediaan, MyAgListener, yang menggunakan port 4022.

    CREATE ROUTE [RouteToTargetService] WITH   
    SERVICE_NAME = 'ISBNLookupRequestService',   
    ADDRESS = 'TCP://MyAgListener:4022';  
    
    

    Untuk informasi selengkapnya, lihat MEMBUAT RUTE (Transact-SQL).

  2. Pastikan bahwa msdb berisi rute AutoCreatedLocal atau rute ke layanan tertentu. (Untuk informasi selengkapnya, lihat Persyaratan untuk Layanan dalam Grup Ketersediaan untuk Menerima Pesan Jarak Jauh, sebelumnya dalam topik ini.)

Tugas Terkait

Lihat Juga

Gambaran Umum Grup Ketersediaan AlwaysOn (SQL Server)
Listener Grup Ketersediaan, Konektivitas Klien, dan Kegagalan Aplikasi (SQL Server)
Broker Layanan SQL Server