Halaman ini berlaku untuk Apigee, tetapi tidak untuk Apigee hybrid.
Lihat Dokumentasi Apigee Edge.
Ringkasan langkah-langkah
Dokumen ini menjelaskan cara menginstal dan mengonfigurasi evaluasi Apigee organisasi (atau eval org) dari command line. Masa berlaku organisasi evaluasi akan berakhir setelah 60 hari dan mungkin memiliki keterbatasan lainnya. Lihat juga Membandingkan organisasi berbayar dan eval.
Langkah-langkah penyediaannya adalah sebagai berikut:
- Langkah 1: Tentukan variabel lingkungan:
Siapkan
gcloud
dan tentukan variabel lingkungan. Google Cloud CLI mengelola autentikasi, konfigurasi lokal, alur kerja developer, dan interaksi dengan Google Cloud API. - Langkah 2: Aktifkan API: Apigee mengharuskan Anda mengaktifkan beberapa Google Cloud API.
- Langkah 3: Konfigurasi jaringan layanan: Jaringan layanan mengotomatiskan penyiapan konektivitas pribadi (menggunakan Peering Jaringan VPC) antarjaringan Anda dan Apigee.
- Langkah 4: Buat organisasi: Organisasi Apigee (terkadang disebut sebagai org) adalah container level teratas di Apigee. Rencana ini mencakup semua lingkungan dan grup lingkungan Anda, pengguna, proxy API, dan sumber daya terkait.
- Langkah 5: Konfigurasikan perutean: Izinkan akses eksternal atau akses internal saja ke API Anda.
- Langkah 6: Panggil proxy API contoh: Uji penyediaan dengan untuk men-deploy dan memanggil proxy API.
Langkah 1: Menentukan variabel lingkungan
Siapkan gcloud
dan tentukan variabel lingkungan untuk digunakan dalam langkah-langkah berikutnya:
- Pastikan Anda telah melengkapi persyaratan yang tercantum dalam Prasyarat.
- Anda harus sudah menginstal gcloud CLI. Jika Anda perlu menginstalnya, lihat Menginstal gcloud CLI.
- Melakukan inisialisasi gcloud CLI, seperti yang dijelaskan dalam Menginisialisasi gcloud CLI, atau jika CLI sudah diinisialisasi, pastikan bahwa project Google Cloud yang Anda buat di Prasyarat adalah project default untuk gcloud.
- Tentukan variabel lingkungan berikut:
AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
PROJECT_ID="YOUR_PROJECT_ID"
RUNTIME_LOCATION="YOUR_RUNTIME_LOCATION"
ANALYTICS_REGION="YOUR_ANALYTICS_REGION"
Dengan keterangan:
- AUTH menentukan header
Authentication
dengan token pemilik. Anda akan menggunakan header ini saat memanggil API Apigee. Perhatikan bahwa token akan habis masa berlakunya setelah periode waktu tertentu dan ketika itu terjadi, Anda cukup membuat ulang menggunakan perintah yang sama. Sebagai mengetahui informasi selengkapnya, lihat halaman referensi untuk perintah print-access-token. - PROJECT_ID adalah project ID Cloud yang Anda buat sebagai bagian dari Prasyarat.
RUNTIME_LOCATION adalah lokasi fisik tempat Apigee lokasi instance. Untuk daftar lokasi runtime yang tersedia, lihat Lokasi Apigee.
-
ANALYTICS_REGION adalah lokasi fisik tempat Apigee data analisis akan disimpan. Untuk daftar region Analisis Apigee API yang tersedia, lihat Lokasi Apigee.
RUNTIME_LOCATION dan ANALYTICS_REGION bisa berada di region yang sama, tetapi tidak harus sama. Namun, ada manfaat performa jika mereka sama.
- AUTH menentukan header
- (Opsional) Periksa pekerjaan Anda dengan mencerminkan nilai yang baru saja Anda tetapkan. Perhatikan bahwa bila Anda ingin
untuk menggunakan variabel dalam perintah Anda, awali nama variabel dengan tanda dolar
($).
echo $AUTH
echo $PROJECT_ID
echo $RUNTIME_LOCATION
echo $ANALYTICS_REGION
Respons terhadap perintah
echo
Anda akan terlihat seperti berikut:Authorization: Bearer ya29.a123456678940B63hPSAMPLEsampleKKYVsample0f3pWDWZDuH2-hENkNa TvgZ1PD977TMvv6edBQPJezdHw040880Ol_LoD5ZDkt-i-knizia_KhA9L20sSvztL81-SAMPLE42ELPMASk2_ 1CxN my-cloud-project us-west1 us-west1
Langkah 2: Aktifkan API
-
Apigee mengharuskan Anda mengaktifkan beberapa API Google Cloud. Aktifkan dengan menjalankan
services enable
berikut:gcloud services enable apigee.googleapis.com \ servicenetworking.googleapis.com compute.googleapis.com \ cloudkms.googleapis.com --project=$PROJECT_ID
(Opsional) Untuk memeriksa pekerjaan Anda, gunakan perintah
services list
untuk menampilkan semua API yang telah diaktifkan:gcloud services list
Responsnya menampilkan semua layanan yang diaktifkan, termasuk API yang baru saja Anda aktifkan (Apigee, Jaringan Layanan, Cloud KMS, dan Compute Engine).
Langkah 3: Konfigurasi jaringan layanan
- Buat variabel lingkungan berikut:
RANGE_NAME=YOUR_RANGE_NAME
NETWORK_NAME=YOUR_NETWORK_NAME
Dengan keterangan:
RANGE_NAME
adalah nama rentang alamat IP yang Anda buat. Anda dapat memberi nama rentang apa pun yang Anda inginkan. Contoh:google-svcs
NETWORK_NAME
adalah nama resource jaringan tempat alamat harus dicadangkan. Google membuat default jaringan (bernamadefault
) untuk setiap proyek baru, jadi Anda dapat menggunakannya. Namun, Google tidak menyarankan penggunaan jaringan {i>default<i} untuk apa pun selain pengujian.
- Buat rentang IP dengan panjang CIDR /22:
gcloud compute addresses create $RANGE_NAME \ --global \ --prefix-length=22 \ --description="Peering range for Apigee services" \ --network=$NETWORK_NAME \ --purpose=VPC_PEERING \ --addresses=OPTIONAL_ADDRESSES \ --project=$PROJECT_ID
Dengan
--addresses
, Anda dapat secara opsional menentukan satu atau beberapa IP alamat untuk panjang awalan/22
. Misalnya, untuk mengalokasikan blok CIDR192.168.0.0/22
, tentukan192.168.0.0
untuk alamat dan22
untuk panjang awalan. Lihat juga Membuat alokasi IP.Jika Anda tidak memberikan parameter
--addresses
, maka gcloud memilih rentang alamat yang tersedia untuk Anda.Jika berhasil,
gcloud
akan merespons dengan hal berikut:Created [https://www.googleapis.com/compute/v1/projects/PROJECT_NAME/global/addresses/google-svcs].
Setelah Anda membuat rentang alamat IP, alamat IP tersebut dikaitkan dengan proyek sampai Anda melepaskannya.
- Buat rentang IP kedua dengan panjang CIDR /28. Rentang ini digunakan oleh Apigee untuk tujuan pemecahan masalah dan tidak dapat disesuaikan atau diubah.
gcloud compute addresses create google-managed-services-support-1 \ --global \ --prefix-length=28 \ --description="Peering range for supporting Apigee services" \ --network=$NETWORK_NAME \ --purpose=VPC_PEERING \ --addresses=OPTIONAL_ADDRESSES \ --project=$PROJECT_ID
Dengan
--addresses
, Anda dapat secara opsional menentukan satu atau beberapa IP alamat untuk panjang awalan/28
. Misalnya, untuk mengalokasikan blok CIDR192.168.0.0/28
, tentukan192.168.0.0
untuk alamat dan28
untuk panjang awalan. Lihat juga Membuat alokasi IP.Jika Anda tidak memberikan parameter
--addresses
, maka gcloud memilih rentang alamat yang tersedia untuk Anda. - Hubungkan layanan Anda ke jaringan menggunakan perintah berikut:
gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --network=$NETWORK_NAME \ --ranges=$RANGE_NAME,google-managed-services-support-1 \ --project=$PROJECT_ID
Operasi ini dapat memerlukan waktu beberapa menit hingga selesai. Jika berhasil,
gcloud
akan merespons dengan hal berikut:Operation "operations/OPERATION_ID" finished successfully.
Dengan OPERATION_ID adalah UUID LRO (operasi yang berjalan lama).
Apigee membuat koneksi antara jaringan Anda dan layanan Google; secara khusus, Apigee menghubungkan project Anda ke Service Networking API melalui peering VPC. Apigee juga mengaitkan alamat IP dengan proyek Anda.
Langkah 4: Buat organisasi
Organisasi adalah container level teratas di Apigee. Paket ini berisi semua proxy API Anda dan resource terkait. Untuk mengetahui detailnya, lihat Memahami organisasi.
- Membuat organisasi evaluasi baru menggunakan gcloud alpha apigee
organisasi:
gcloud alpha apigee organizations provision \ --runtime-location=$RUNTIME_LOCATION \ --analytics-region=$ANALYTICS_REGION \ --authorized-network=$NETWORK_NAME \ --project=$PROJECT_ID
Dengan
--authorized-network
adalah nama jaringan peering kustom Anda. Contoh:default
. -
Saat Anda menjalankan perintah
provision
, Google akan memulai LRO untuk membuat organisasi eval. Operasi ini membutuhkan waktu hingga 40 menit untuk selesai. Selama waktu tersebut,gcloud
menampilkan hal berikut:Provisioning organization...
Saat organisasi eval dan instance runtime terkait dibuat,
gcloud
merespons dengan pesan berikut:Provisioning organization...done.
-
Jika Anda menjalankan perintah berikut:
gcloud alpha apigee operations list --organization=$PROJECT_ID
Anda akan melihat bahwa semua UUID dalam status
FINISHED
. Contoh:UUID ORGANIZATION STATE 00bab06f-c60c-41a5-4242-7SAMPLE7f my-org FINISHED 429790a7-3151-4642-4343-7SAMPLE7f my-org FINISHED d00a92a9-9b83-4642-4343-7SAMPLE7f my-org FINISHED f48a00ff-7daa-4c4a-4444-7SAMPLE7f my-org FINISHED
Langkah 5: Konfigurasi pemilihan rute
Memutuskan apakah akan mengizinkan akses eksternal atau akses khusus internal:
Jenis akses | Deskripsi proses konfigurasi dan deployment |
---|---|
Internal |
Hanya izinkan akses internal ke proxy API Anda. Anda harus membuat VM baru di dalam jaringan dan menghubungkannya. Dari VM baru, Anda dapat mengirim permintaan ke proxy API Apigee. |
Eksternal |
Izinkan akses eksternal ke proxy API Anda. Gunakan Private Service Connect (PSC) untuk mengaktifkan koneksi pribadi antara produsen layanan (Apigee) dan konsumen layanan (project VPC yang di-peering dan/atau satu atau beberapa project Cloud lain yang Anda kontrol). Dengan metode ini, permintaan melewati load balancer eksternal global ke satu titik lampiran, yang disebut Lampiran Layanan. Konfigurasi ini memungkinkan Anda mengirim Permintaan proxy Apigee API dari komputer yang kompatibel dengan jaringan. |
Masing-masing pendekatan {i>routing<i} ini ditampilkan pada tab di petunjuk di bawah ini.
Pemilihan rute internal
Tidak ada tugas yang harus dilakukan untuk langkah ini jika Anda menggunakan baris perintah untuk mengatur proxy API hanya untuk akses internal. Anda dapat langsung ke Langkah 6: Panggil contoh proxy API tempat Anda akan mengirim permintaan ke proxy API Anda.
Pemilihan rute eksternal
Bagian ini menjelaskan cara mengonfigurasi perutean eksternal menggunakan Private Service Connect (PSC) untuk memungkinkan komunikasi antara Apigee dan VPC yang Anda kontrol. Anda harus melakukannya sebelum Anda dapat mengirim permintaan dari klien eksternal ke instance runtime Apigee.
Langkah-langkah konfigurasi eksternal adalah:
Langkah 5a: Buat grup endpoint jaringan (NEG)
Langkah 5b: Konfigurasi load balancer
Setiap langkah ini dijelaskan di bagian berikut.
Langkah 5a: Buat grup endpoint jaringan (NEG)
- Dapatkan lampiran layanan untuk instance Apigee Anda:
curl -i -X GET -H "$AUTH" \ "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/instances"
Dalam contoh output berikut, nilai
serviceAttachment
ditunjukkan dalam huruf tebal:{ "instances": [ { "name": "eval-instance", "location": "us-west1", "host": "10.72.100.2", "port": "443", "createdAt": "1657832463500", "lastModifiedAt": "1657833920670", "state": "ACTIVE", "peeringCidrRange": "SLASH_22", "runtimeVersion": "1-8-0-apigee-18", "ipRange": "10.74.100.0/28,10.74.100.16/28", "consumerAcceptList": [ "apigee-eval-test" ], "serviceAttachment": "projects/s8da1b0111eb33765-tp/regions/us-west1/serviceAttachments/apigee-us-west1-icza" } ] }
Buat grup endpoint jaringan (NEG) jaringan Private Service Connect yang mengarah ke layanan lampiran tambahan yang Anda peroleh dari isi respons instance pada langkah sebelumnya.
gcloud compute network-endpoint-groups create NEG_NAME \ --network-endpoint-type=private-service-connect \ --psc-target-service=TARGET_SERVICE \ --region=$RUNTIME_LOCATION \ --network=$NETWORK_NAME \ --subnet=SUBNET_NAME \ --project=$PROJECT_ID
Ganti kode berikut:
- NEG_NAME: nama untuk grup endpoint jaringan.
- TARGET_SERVICE: lampiran layanan yang ingin Anda hubungkan. Contoh:
projects/bfac7497a40c32a12p-tp/regions/us-west1/serviceAttachments/apigee-us-west1-crw7
- SUBNET_NAME: Nama subnet yang digunakan untuk konektivitas pribadi ke produsen. Ukuran subnet bisa jadi kecil: NEG PSC hanya memerlukan satu IP dari subnet. Untuk Apigee, hanya satu NEG PSC yang diperlukan per wilayah. Subnet dapat dibagikan dan digunakan oleh VM atau entitas lain. Jika subnet tidak ditentukan, endpoint jaringan dapat menjadi bagian dari subnetwork region tempat grup endpoint jaringan dibuat.
Langkah 5b: Konfigurasikan load balancer
Mengonfigurasi global
load balancer HTTP(S) eksternal (load balancing
skema ditetapkan ke EXTERNAL_MANAGED
).
Meskipun NEG Private Service Connect bersifat regional, semua komponen load balancing lainnya dalam konfigurasi ini bersifat global.
- Cadangkan alamat IPv4 eksternal global untuk load balancer.
gcloud compute addresses create ADDRESS_NAME \ --ip-version=IPV4 --global --project=$PROJECT_ID
Ganti ADDRESS_NAME dengan nama untuk resource alamat IP.
Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:
gcloud compute addresses describe ADDRESS_NAME \ --format="get(address)" --global --project=$PROJECT_ID
- Buat layanan backend untuk NEG.
gcloud compute backend-services create BACKEND_SERVICE_NAME \ --load-balancing-scheme=EXTERNAL_MANAGED \ --protocol=HTTPS \ --global --project=$PROJECT_ID
- Tambahkan NEG ke layanan backend:
gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \ --network-endpoint-group=NEG_NAME \ --network-endpoint-group-region=$RUNTIME_LOCATION \ --global --project=$PROJECT_ID
Ganti kode berikut:
- BACKEND_SERVICE_NAME: nama layanan backend.
- NEG_NAME: nama grup endpoint jaringan.
Buat peta URL untuk load balancer.
Peta URL harus merujuk ke layanan backend default. Tetapkan layanan backend yang Anda baru saja dibuat sebagai {i>default<i}.
gcloud compute url-maps create URL_MAP_NAME \ --default-service=DEFAULT_BACKEND_SERVICE_NAME \ --global --project=$PROJECT_ID
Ganti kode berikut:
- URL_MAP_NAME: nama untuk peta URL.
- DEFAULT_BACKEND_SERVICE_NAME: nama layanan backend default load balancer. Setelan default digunakan saat tidak ada aturan host yang cocok dengan nama host yang diminta.
Buat sertifikat SSL untuk proxy target HTTPS.
Untuk membuat load balancer HTTPS, Anda harus memiliki resource sertifikat SSL untuk digunakan di Proxy target HTTPS. Anda dapat membuat resource sertifikat SSL menggunakan resource Sertifikat SSL atau sertifikat SSL yang dikelola sendiri.
Gunakan perintah ini untuk membuat resource sertifikat SSL yang dikelola Google:
gcloud compute ssl-certificates create CERTIFICATE \ --domains DOMAIN --project=$PROJECT_ID
Ganti kode berikut:
- CERTIFICATE: nama untuk sertifikat.
- DOMAIN: nama domain yang akan Anda gunakan untuk load balancer eksternal.
Untuk membuat sertifikat SSL yang dikelola sendiri, Anda memerlukan file kunci pribadi lokal dan sertifikat lokal . Jika Anda perlu membuat file tersebut, lihat Menggunakan sertifikat SSL yang dikelola sendiri.
gcloud compute ssl-certificates create CERTIFICATE \ --certificate LB_CERT \ --private-key LB_PRIVATE_KEY --project=$PROJECT_ID
Ganti kode berikut:
- CERTIFICATE: nama untuk sertifikat.
- LB_CERT: jalur ke file sertifikat berformat PEM untuk sertifikat yang dikelola sendiri.
- LB_PRIVATE_KEY: jalur ke file kunci pribadi berformat PEM untuk sertifikat yang dikelola sendiri.
-
Diperlukan waktu hingga satu jam untuk penyediaan sertifikat. Untuk memeriksa status penyediaan, jalankan perintah ini:
gcloud compute ssl-certificates describe CERTIFICATE \ --global \ --format="get(name,managed.status, managed.Status)"
- Tambahkan domain ke grup lingkungan Apigee yang dibuat untuk Anda. Nama
grup lingkungan adalah
eval-group
:curl "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/envgroups/eval-group" \ -H "$AUTH" \ -X PATCH \ -H "Content-Type:application/json" \ -d '{ "hostnames":["'"DOMAIN"'"] }'
- Periksa status operasi grup lingkungan:
curl -H "$AUTH" \ "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/envgroups/eval-group/attachments"
-
Gunakan resource sertifikat SSL untuk membuat proxy HTTPS target.
gcloud compute target-https-proxies create PROXY_NAME \ --url-map=URL_MAP_NAME \ --ssl-certificates=CERTIFICATE --project=$PROJECT_ID
Ganti kode berikut:
- PROXY_NAME: nama untuk proxy HTTPS target.
- URL_MAP_NAME: nama peta URL.
- CERTIFICATE: nama resource sertifikat.
- Buat aturan penerusan.
gcloud compute forwarding-rules create FWD_RULE \ --load-balancing-scheme=EXTERNAL_MANAGED \ --network-tier=PREMIUM \ --address=ADDRESS_NAME \ --target-https-proxy=PROXY_NAME \ --ports=443 \ --global --project=$PROJECT_ID
Ganti kode berikut:
- FWD_RULE: nama untuk aturan penerusan.
- ADDRESS_NAME: resource alamat IP yang Anda reservasi untuk digunakan bagi aturan penerusan.
- PROXY_NAME: nama proxy HTTPS target.
Ganti BACKEND_SERVICE_NAME dengan nama layanan backend.
Penyediaan Apigee selesai.
Langkah 6: Panggil contoh proxy API
Proxy API bernama hello-world
dibuat dan di-deploy untuk Anda selama penyediaan. Pada langkah ini, Anda akan menguji
organisasi eval tertentu
dengan memanggil {i>proxy<i}.
Memanggil proxy dengan perutean internal
Jika Anda memilih opsi perutean internal di Langkah 5, ikuti langkah-langkah di Memanggil proxy API dengan akses khusus internal.
Memanggil proxy dengan perutean eksternal
Jika Anda memilih opsi pemilihan rute eksternal di Langkah 5, ikuti langkah-langkah di bagian ini.
- Siapkan entri DNS untuk domain Anda. Berikut adalah dua cara untuk menyelesaikan tugas ini:
- Di registrar, buat data A yang mengarah ke domain Anda. Misalnya, jika
domainnya adalah
sales.example.com
dan IP adalah 10.23.0.2, lalu arahkan merekamsales.example.com
ke alamat10.23.0.2
.Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:
gcloud compute addresses describe ADDRESS_NAME \ --format="get(address)" --global --project=$PROJECT_ID
- Gunakan Google Cloud DNS untuk memetakan URL ke alamat IP.
- Di registrar, buat data A yang mengarah ke domain Anda. Misalnya, jika
domainnya adalah
- Pastikan proxy
hello-world
telah di-deploy:curl -i -H "$AUTH" \ "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/environments/eval/apis/hello-world/revisions/1/deployments"
- Panggil proxy API:
Kirim permintaan ke proxy API dari mesin yang mendukung jaringan dengan mengeksekusi perintah perintah berikut:
curl -i -H "Host: DOMAIN" \ https://DOMAIN/hello-world
Dengan DOMAIN adalah domain yang Anda masukkan ke dalam sertifikat dan ditambahkan ke grup lingkungan, seperti yang dibahas di Langkah 5: Konfigurasi perutean. Jika perlu, Anda dapat menggunakan API untuk mendapatkan nilai
DOMAIN
dari grup lingkungan:curl -i -H "$AUTH" \ "https://apigee.googleapis.com/v1/organizations/$PROJECT_ID/envgroups"
Setelah berhasil, proxy API contoh akan menampilkan respons:
Hello, Guest!
Tips pemecahan masalah:
Jika Anda mendapatkan error handshake, periksa status sertifikat SSL. Untuk mengetahui informasi tentang memecahkan masalah sertifikat yang dikelola sendiri dan dikelola Google, lihat Memecahkan masalah sertifikat SSL.
Pastikan domain yang terdaftar memiliki Kumpulan data yang mengarah ke alamat IP dari alamat IPv4 eksternal global yang dibuat di Langkah 5. Jalankan perintah ini untuk melihat alamat IP yang dicadangkan:
gcloud compute addresses describe ADDRESS_NAME \ --format="get(address)" --global --project=$PROJECT_ID
Jika Anda tidak dapat menyelesaikan konfigurasi domain, coba panggil proxy dengan perintah ini:
curl -H Host:DOMAIN --resolve \ DOMAIN:443:EXTERNAL_IP_ADDRESS \ https://DOMAIN:443/hello-world -k
Berikutnya: Untuk mempelajari lebih lanjut cara membangun dan men-deploy proxy API, lihat Bangun ringkasan proxy API pertama Anda.