Edge for Private Cloud v. 4.17.01
Host virtual di Edge menentukan domain dan port Router Edge tempat proxy API diekspos, dan, dengan ekstensi, URL yang digunakan aplikasi untuk mengakses proxy API. Host virtual juga menentukan apakah proxy API diakses menggunakan protokol HTTP, atau protokol HTTPS terenkripsi.
Sebagai bagian dari proses orientasi Edge, Anda harus membuat organisasi, lingkungan, dan host virtual. Edge menyediakan perintah setup-org untuk mempermudah proses ini bagi pengguna baru.
Saat membuat host virtual, Anda harus menentukan informasi berikut:
- Nama host virtual yang Anda gunakan untuk mereferensikannya di proxy API Anda.
- Port di Router untuk host virtual. Biasanya, port ini dimulai dari 9001 dan bertambah satu untuk setiap host virtual baru.
- Alias host dari host virtual. Biasanya nama DNS host virtual.
Router Edge membandingkan header Host dari permintaan masuk dengan daftar alias host yang tersedia sebagai bagian dari penentuan proxy API yang menangani permintaan tersebut. Saat membuat permintaan melalui host virtual, tentukan nama domain yang cocok dengan alias host dari host virtual, atau tentukan alamat IP Router dan header Host yang berisi alias host.
Misalnya, jika Anda membuat host virtual dengan alias host myapis.apigee.net di port 9001, permintaan cURL ke API melalui host virtual tersebut dapat menggunakan salah satu bentuk berikut:
- 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://<routerIP>:9001/{proxy-base-path}/{resource-path} -H 'Host: myapis.apigee.net'
Dalam formulir ini, Anda menentukan alamat IP Router, dan meneruskan alias host di header Host.
Catatan: Perintah curl, sebagian besar browser, dan banyak utilitas lainnya secara otomatis menambahkan header Host dengan domain sebagai bagian dari permintaan, sehingga Anda dapat menggunakan perintah curl dalam bentuk:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path}
Opsi jika Anda tidak memiliki entri DNS untuk host virtual
Salah satu opsi jika Anda tidak memiliki entri DNS adalah menetapkan alias host ke alamat IP Router dan port host virtual, sebagai <routerIP>:port. Contoh:
192.168.1.31:9001
Kemudian, buat perintah curl dalam bentuk di bawah:
curl http://<routerIP>:9001/{proxy-base-path}/{resource-path} Opsi ini lebih disukai karena berfungsi dengan baik dengan UI Edge.
Jika Anda memiliki beberapa Router, tambahkan alias host untuk setiap Router, dengan menentukan alamat IP setiap Router dan port host virtual.
Atau, Anda dapat menetapkan alias host ke nilai, seperti 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 /etc/hosts:
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 port yang dilindungi di host virtual
Jika Anda ingin membuat host virtual yang mengikat Router ke port yang dilindungi, seperti nomor port kurang dari 1024, Anda harus mengonfigurasi Router agar berjalan sebagai pengguna dengan akses ke port tersebut. Secara default, Router berjalan sebagai pengguna "apigee" yang tidak memiliki akses ke port dengan hak istimewa.
Untuk menjalankan Router sebagai pengguna yang berbeda:
- Sebagai root, buat file /opt/apigee/etc/edge-router.d/RUN_USER.sh.
- Tambahkan entri berikut ke file:
RUN_USER=root
Jika Anda tidak ingin menjalankan Router sebagai root, tentukan pengguna yang memiliki akses ke port. - Simpan file.
- Jika Anda menentukan pengguna selain root, ubah pemilik file menjadi pengguna tersebut:
> chown USER:USER /opt/apigee/etc/edge-router.d/RUN_USER.sh - Mulai ulang router:
> /opt/apigee/apigee-service/bin/apigee-service edge-router restart