Menyiapkan host virtual

Edge for Private Cloud v. 4.17.01

Host virtual di Edge menentukan domain dan port Router Edge tempat proxy API berada terbuka, dan juga URL yang digunakan aplikasi untuk mengakses proxy API. {i>Host<i} virtual juga menentukan apakah proxy API diakses dengan menggunakan protokol HTTP, atau dengan HTTPS dan berperforma tinggi karena merupakan protokol biner.

Sebagai bagian dari proses orientasi Edge, Anda harus membuat organisasi, lingkungan, dan {i>host<i} virtual. Edge menyediakan perintah setup-org untuk membuat proses ini lebih mudah bagi pengguna baru.

Saat membuat host virtual, Anda harus menentukan informasi berikut:

  • Nama host virtual yang Anda gunakan untuk mereferensikannya dalam API menggunakan {i>proxy<i}.
  • Port di Router untuk host virtual. Biasanya porta ini dimulai dari 9001 dan bertambah satu untuk setiap {i>host<i} virtual baru.
  • Alias host dari host virtual. Biasanya nama DNS dari {i>host<i} virtual.

Router Edge membandingkan header Host permintaan masuk ke daftar alias host yang tersedia sebagai bagian dari penentuan proxy API yang yang akan menangani permintaan. Saat membuat permintaan melalui host virtual, tentukan nama domain yang mencocokkan alias {i>host<i} dari {i> host<i} virtual, atau menentukan alamat IP {i>Router<i} dan header Host yang berisi alias {i>host<i}.

Misalnya, jika Anda membuat host virtual dengan alias host myapis.apigee.net pada port 9001, lalu permintaan cURL ke API melalui host virtual tersebut dapat menggunakan salah satu formulir:

  • Jika Anda memiliki entri DNS untuk myapis.apigee.net:

    curl http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}
  • Jika Anda tidak memiliki entri DNS untuk myapis.apigee.net:

    curl http://&lt;routerIP&gt;:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'

    Dalam formulir ini, Anda menentukan IP {i>Router<i}, dan meneruskan alias {i>host<i} di {i>header<i} {i>Host<i}.

    Catatan: Perintah curl, sebagian besar browser, dan berbagai utilitas lainnya secara otomatis menambahkan header Host dengan domain sebagai bagian dari permintaan, sehingga Anda dapat menggunakan curl perintah dalam bentuk:


    curl http://&lt;routerIP&gt;:9001/{proxy-base-path}/{resource-path}

Opsi saat Anda tidak memiliki DNS entri untuk host virtual

Salah satu pilihan ketika Anda tidak memiliki entri DNS adalah dengan mengatur alias {i>host<i} ke alamat IP Router dan port host virtual, sebagai &lt;routerIP&gt;:port. Contoh:

192.168.1.31:9001

Kemudian Anda membuat perintah curl pada formulir di bawah ini:

curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} 

Opsi ini lebih disukai karena berfungsi dengan baik dengan UI Edge.

Jika Anda memiliki beberapa {i>Router<i}, tambahkan alias host untuk setiap {i>Router<i}, yang menentukan alamat IP setiap {i>Router<i} dan porta dari {i>host<i} virtual.

Atau, Anda dapat menetapkan alias host ke nilai, seperti sebagai temp.hostalias.com. Kemudian, Anda harus meneruskan header Host pada setiap permintaan:

curl -v http://<routerIP>:9001/{proxy-base-path}/{resource-path}  -H 'host: temp.hostalias.com'

Atau, tambahkan alias host ke file /etc/hosts Anda. Misalnya, tambahkan baris ini ke {i> /etc/hosts<i}:

192.168.1.31   temp.hostalias.com

Kemudian, Anda dapat membuat permintaan seolah-olah Anda memiliki entri DNS:

curl -v http://myapis.apigee.net:9001/{proxy-base-path}/{resource-path}

Menggunakan porta yang dilindungi dalam {i>host<i} virtual

Jika Anda ingin membuat host virtual yang mengikat Router ke port yang dilindungi, seperti port kurang dari 1024, maka Anda harus mengkonfigurasi {i> Router<i} agar berjalan sebagai pengguna dengan akses ke porta-porta tersebut. Secara default, Router berjalan sebagai pengguna "apigee" yang tidak memiliki akses ke porta dengan hak istimewa.

Untuk menjalankan Router sebagai pengguna yang berbeda:

  1. Sebagai root, buat file /opt/apigee/etc/edge-router.d/RUN_USER.sh.
  2. Tambahkan entri berikut ke file:
    RUN_USER=root
    Jika Anda tidak ingin menjalankan Router sebagai root, tentukan pengguna yang memiliki akses ke port.
  3. Simpan file.
  4. Jika Anda menentukan pengguna selain root, ubah pemilik file menjadi pengguna tersebut:
    &gt; chown USER:USER /opt/apigee/etc/edge-router.d/RUN_USER.sh
  5. Mulai ulang router:
    &gt; /opt/apigee/apigee-service/bin/apigee-service edge-router mulai ulang