Edge for Private Cloud v. 4.17.09
Membuat Organisasi, Lingkungan, dan Host Virtual secara bersamaan
Sebelum membuat proxy API di Apigee Edge, Anda harus membuat setidaknya satu organisasi dan, dalam setiap organisasi, satu atau beberapa lingkungan dan {i>host<i} virtual.
Biasanya, organisasi dan lingkungan dibuat bersama-sama. Untuk menyederhanakan prosesnya, gunakan utilitas apigee-provision. Panggil alat ini dari command line di Server Pengelolaan Edge:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision setup-org -f configFile
File konfigurasi berisi:
# Set Edge sys admin credentials. ADMIN_EMAIL=your@email.com APIGEE_ADMINPW=adminPword # If omitted, you are prompted for it. NEW_USER="y" USER_NAME=orgAdmin@myCo.com FIRST_NAME=foo LAST_NAME=bar USER_PWD="userPwrod" ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ENV_NAME=prod VHOST_PORT=9001 VHOST_NAME=default VHOST_ALIAS="$IP1:9001" # Optionally configure TLS/SSL for virtual host. # VHOST_SSL=y # Set to "y" to enable TLS/SSL on the virtual host. # KEYSTORE_JAR= # JAR file containing the cert and private key. # KEYSTORE_NAME= # Name of the keystore. # KEYSTORE_ALIAS= # The key alias. # KEY_PASSWORD= # The key password, if it has one. # Optionally set the base URL displayed by the Edge UI for an # API proxy deployed to the virtual host. # VHOST_BASEURL="http://myCo.com" # AXGROUP=axgroup-001 # Default value is axgroup-001
Perintah tersebut kemudian:
- Membuat organisasi
Catatan: Anda tidak dapat mengganti nama organisasi setelah membuatnya. - Mengaitkan organisasi dengan pod, secara default mengaitkannya dengan "gateway" tim
- Tambahkan pengguna tertentu sebagai admin org. Jika pengguna tidak ada, Anda dapat membuat satu.
- Membuat satu atau beberapa lingkungan
- Membuat satu atau beberapa host virtual untuk setiap lingkungan
- Mengaitkan lingkungan dengan semua Pemroses Pesan
- Aktifkan analisis
Untuk file konfigurasi senyap yang lengkap, lihat Mengaktifkan organisasi/pengaturan.
Secara default, panjang maksimum nama organisasi dan nama lingkungan adalah 20 karakter saat menggunakan apigee-provision utilitas. Batas ini tidak berlaku jika Anda menggunakan Edge API secara langsung untuk membuat organisasi atau lingkungan fleksibel App Engine.
Buat Organisasi
Gunakan perintah create-org untuk membuat organisasi:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision create-org -f configFile
Skrip ini membuat organisasi, tetapi tidak menambahkan atau mengonfigurasi lingkungan, {i>host<i} virtual yang diperlukan organisasi untuk menangani panggilan API.
File konfigurasi berisi nama organisasi dan alamat email admin org. Tujuan karakter yang dapat Anda gunakan dalam atribut nama dibatasi untuk: a-z0-9\-$%. Jangan gunakan spasi, titik atau huruf besar dalam nama:
APIGEE_ADMINPW=adminPword # If omitted, you are prompted for it. ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ORG_ADMIN=orgAdmin@myCo.com
Perintah tersebut kemudian:
- Membuat organisasi
- Mengaitkan organisasi dengan pod, secara default mengaitkannya dengan "gateway" tim
- Menambahkan pengguna tertentu sebagai admin org. Pengguna harus sudah ada; jika tidak, skrip menimbulkan error.
<Error> <Code>organizations.OrganizationAlreadyExists</Code> <Message>Organization : test already exists</Message> <Contexts/> </Error>
Buat organisasi menggunakan Panggilan API
Atau, Anda dapat menggunakan panggilan API berikut untuk membuat organisasi. Panggilan pertama akan membuat organisasi:
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST http://<ms-ip>:8080/v1/organizations \ -d '<Organization name="<org-name>" type="paid"/>'
Panggilan berikutnya akan mengaitkan organisasi dengan pod:
curl -H "Content-Type:application/x-www-form-urlencoded" \ -u <sysAdminEmail>:<adminPasswd> -X POST \ http://<ms-ip>:8080/v1/organizations/<org-name>/pods \ -d "region=default&pod=gateway"
Anda dapat melakukan panggilan ini beberapa kali untuk mengaitkan organisasi dengan beberapa pod.
Panggilan terakhir akan menambahkan pengguna yang sudah ada sebagai admin org untuk organisasi:
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST \ http://<ms-ip>:8080/v1/organizations/<org-name>/users/<user-email>/userroles/ \ -d '<Roles><Role name="orgadmin"/></Roles>'
Jika pengguna tidak ada, Anda dapat menggunakan panggilan berikut untuk membuat pengguna seperti yang dijelaskan di Menambahkan pengguna.
Membuat Lingkungan
Gunakan perintah add-env untuk membuat lingkungan dalam organisasi yang sudah ada:
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision add-env -f configFile
File konfigurasi ini berisi informasi yang diperlukan untuk membuat lingkungan dan virtual host:
APIGEE_ADMINPW=adminPword # If omitted, you are prompted for it. ORG_NAME=example # lowercase only, no spaces, underscores, or periods. ENV_NAME=prod VHOST_PORT=9001 VHOST_NAME=default VHOST_ALIAS="$IP1:9001" # Optionally configure TLS/SSL for virtual host. # VHOST_SSL=y # Set to "y" to enable TLS/SSL on the virtual host. # KEYSTORE_JAR= # JAR file containing the cert and private key. # KEYSTORE_NAME= # Name of the keystore. # KEYSTORE_ALIAS= # The key alias. # KEY_PASSWORD= # The key password, if it has one. # Optionally set the base URL displayed by the Edge UI for an # API proxy deployed to the virtual host. # VHOST_BASEURL="http://myCo.com" # AXGROUP=axgroup-001 # Default value is axgroup-001
Perintah:
- Menciptakan lingkungan
- Membuat satu host virtual untuk lingkungan
- Mengaitkan lingkungan dengan semua Pemroses Pesan di pod yang terkait dengan organisasi yang memiliki lingkungan.
- Mengaktifkan analisis
Catatan: Jika mengaktifkan analisis untuk satu lingkungan dalam organisasi, Anda harus mengaktifkan analisis untuk semua lingkungan dalam organisasi.
Ciptakan lingkungan dengan menggunakan Panggilan API
Atau, Anda dapat menggunakan panggilan API berikut untuk membuat lingkungan. Panggilan pertama menciptakan lingkungan:
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST http://<ms-ip>:8080/v1/organizations/<org-name>/environments \ -d '<Environment name="<env-name>"/>'
Panggilan berikutnya akan mengaitkan lingkungan dengan Pemroses Pesan. Lakukan panggilan ini untuk setiap Pemroses Pesan yang ingin Anda kaitkan dengan lingkungan:
curl -H "Content-Type:application/x-www-form-urlencoded" \ -u <sysAdminEmail>:<adminPasswd> -X POST \ http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/servers \ -d "action=add&uuid=<uuid>"
Di mana "<uuid>" adalah UUID Pemroses Pesan. Anda dapat memperoleh UUID menggunakan perintah:
> curl http://<mp-ip>:8082/v1/servers/self
Dengan "<mp-ip>" adalah Alamat IP Pemroses Pesan.
Panggilan API berikutnya akan mengaktifkan Analytics untuk lingkungan tertentu. Hal ini memvalidasi keberadaan Server Qpid dan Postgres di POD semua pusat data. Setelah itu, Analytics akan memulai untuk organisasi dan lingkungan tertentu.
> /opt/apigee/apigee-service/bin/apigee-service apigee-provision enable-ax -f configFile
File konfigurasi ini berisi:
ORG_NAME=orgName # lowercase only, no spaces, underscores, or periods. ENV_NAME=envName
curl -H "Content-Type:application/json" -u <sysAdminEmail>:<adminPasswd> -X POST http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/analytics/admin -d "@sample.json"
Dengan sample.json berisi hal berikut:
{ "properties" : { "samplingAlgo" : "reservoir_sampler", "samplingTables" : "10=ten;1=one;", "aggregationinterval" : "300000", "samplingInterval" : "300000", "useSampling" : "100", "samplingThreshold" : "100000" }, "servers" : { "postgres-server" : [ "1acff3a5-8a6a-4097-8d26-d0886853239c", "f93367f7-edc8-4d55-92c1-2fba61ccc4ab" ], "qpid-server" : [ "d3c5acf0-f88a-478e-948d-6f3094f12e3b", "74f67bf2-86b2-44b7-a3d9-41ff117475dd"] } }
Properti postgres-servers berisi daftar yang dipisahkan koma untuk UUID Postgres, dan properti qpid-server berisi UUID Qpid. Jika Anda perlu mendapatkan UUID ini, gunakan perintah berikut.
Untuk Qpid, jalankan perintah:
curl -u <sysAdminEmail>:<passwd> http://<ms-ip>/v1/servers?pod=central
Output dari perintah ini adalah objek JSON. Untuk setiap server Qpid, Anda akan melihat output di bentuk:
"type" : [ "qpid-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
Untuk Postgres, jalankan perintah:
curl -u <sysAdminEmail>:<passwd> http://<ms-ip>/v1/servers?pod=analytics
Untuk setiap server Postgres, Anda akan melihat output dalam bentuk:
"type" : [ "postgres-server" ], "uUID" : "d3c5acf0-f88a-478e-948d-6f3094f12e3b"
Membuat Host Virtual
Anda dapat membuat {i>host<i} virtual di lingkungan yang sudah ada dalam organisasi. Seringkali yang mendukung beberapa {i>host<i} virtual. Misalnya, satu {i>host<i} virtual mungkin mendukung permintaan sementara {i>host<i} virtual lain di lingkungan yang sama mendukung protokol HTTPS dan berperforma tinggi karena merupakan protokol biner.
Gunakan panggilan API berikut untuk membuat host virtual tambahan, atau membuat host virtual untuk lingkungan tanpa {i>host<i} virtual:
curl -H "Content-Type:application/xml" -u <sysAdminEmail>:<adminPasswd> \ -X POST \ http://<ms-ip>:8080/v1/organizations/<org-name>/environments/<env-name>/virtualhosts \ -d '<VirtualHost name="default"> \ <HostAliases> \ <HostAlias>myorg-test.apigee.net</HostAlias> \ </HostAliases> \ <Interfaces/> \ <Port>443</Port> \ </VirtualHost>'
Untuk deskripsi lengkap tentang cara membuat {i>host<i} virtual, termasuk membuat {i>host<i} virtual yang aman yang menggunakan TLS/SSL melalui HTTPS, lihat Mengonfigurasi akses TLS ke API untuk Private Cloud.