Penginstalan BaaS API

Edge for Private Cloud v. 4.17.09

Ringkasan penginstalan

Setelah Anda menginstal utilitas apigee-setup Edge pada node, gunakan utilitas tersebut utilitas untuk menginstal satu atau lebih komponen BaaS pada {i>node<i}.

Utilitas apigee-setup memiliki bentuknya:

sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile

Teruskan file konfigurasi ke utilitas apigee-setup yang berisi informasi tentang penginstalan. Jika file konfigurasi hilang, tidak ada elemen ini, apigee-setup utilitas meminta Anda untuk memasukkannya pada baris perintah.

Satu-satunya persyaratan adalah file konfigurasi harus dapat diakses atau dibaca oleh "apigee" .

Misalnya, gunakan perintah berikut untuk menginstal API BaaS Stack:

sudo /opt/apigee/apigee-setup/bin/setup.sh -p b -f myConfig

Menentukan komponen yang akan diinstal

Utilitas setup.sh Apigee mendukung beberapa opsi untuk menginstal komponen API BaaS. Petunjuk di bawah menggunakan opsi mandiri (c, e, b, dan p), tetapi Anda dapat menggunakan opsi yang berbeda berdasarkan node konfigurasi:

Opsi

Deskripsi

e

Instal ElasticSearch saja.

b

Instal API BaaS Stack saja, yang juga menginstal Tomcat.

p

Instal Portal BaaS API saja, yang juga menginstal router Nginx untuk digunakan sebagai web server tertentu.

c

Instal Cassandra saja.

eb

Instal ElasticSearch, API BaaS Stack, dan Tomcat pada node.

ebp

Instal ElasticSearch, API BaaS Portal, API BaaS Stack, dan Tomcat, tetapi tidak untuk Cassandra. Portal ini sangat ringan sehingga tidak perlu sumber daya tambahan untuk ini.

Asa

Menginstal semua komponen API BaaS pada satu node (Cassandra, Elasticsearch, API BaaS Stack, Portal BaaS API, Tomcat). Gunakan opsi ini hanya untuk pengembangan dan pengujian, bukan untuk produksi.

Membuat file konfigurasi

File konfigurasi berisi semua informasi yang diperlukan untuk menginstal API BaaS. Anda dapat sering menggunakan file konfigurasi yang sama untuk menginstal semua komponen dalam instalasi BaaS.

Setiap topologi penginstalan yang dijelaskan di bawah menunjukkan contoh file konfigurasi untuk topologi tersebut. Sebagai Referensi lengkap terkait file konfigurasi, lihat Referensi File Konfigurasi BaaS.

Menginstal API BaaS pada satu node

Di bawah ini adalah file konfigurasi untuk menginstal API BaaS pada satu node. Edit file ini sebagai yang diperlukan untuk konfigurasi Anda. Untuk referensi lengkap tentang file konfigurasi, lihat Referensi File Konfigurasi BaaS.

IP1=192.168.56.101   # IP address of single node

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Define the API BaaS administrator account.
AS_ADMIN="superuser"    # User name - default is "superuser".
AS_ADMIN_EMAIL=stackAdmin@email.com
AS_PASSWD=stackAdminPWord

# Because you are installing Cassandra,
# specify Cassandra data center and rack suffix.
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1"

# Specify the Cassandra region.
REGION=dc-1

# Cassandra uname/pword.
# Even if Cassandra authentication is disabled,
# you must still pass values for these properties.
CASS_USERNAME=cassandra    # Default value
CASS_PASSWORD=cassandra    # Default value

# Specify Cassandra data center name.
BAAS_CASS_LOCALDC=dc-1

# For a single data center, specify the same value as BAAS_CASS_LOCALDC.
BAAS_CASS_DC_LIST=dc-1

# Replication is in the form "dataCenterName:#CassandraNodes".
# For dc-1 with one Cassandra node, it is dc-1:1.
BAAS_CASS_REPLICATION=dc-1:1

# Defines the initial contact points for members of the BaaS cluster.
# For a single node install, specify the IP address of the node.
BAAS_CLUSTER_SEEDS="dc-1:$IP1"

# Single ElasticSearch IP.
ES_HOSTS="$IP1"

# API BaaS Stack information.
# Default cluster name is "apigee_baas"
BAAS_USERGRID_CLUSTERNAME="apigee_baas"

# IP/DNS and port 8080 of a single Stack node.
BAAS_USERGRID_URL="http://$IP1:8080"

# URL and port of the BaaS Portal node.
BAAS_PORTAL_URL="http://$IP1:9000"

# Portal port. Default value is 9000.
BAAS_PORTAL_LISTEN_PORT=9000

# SMTP information. BaaS requires an SMTP server.
SMTPHOST=smtp.gmail.com
SMTPPORT=465
SMTPUSER=your@email.com
SMTPPASSWORD=yourEmailPassword
SMTPSSL=y
SMTPMAILFROM="My Company <myco@company.com>"

Untuk menginstal API BaaS pada node-nya sendiri:

  1. Instal utilitas apigee-setup Edge pada node menggunakan prosedur internet atau non-internet. Lihat Instal utilitas apigee-setup Edge untuk banyak lagi.
  2. Di command prompt, jalankan skrip penyiapan:
    /opt/apigee/apigee-setup/bin/setup.sh -p asa -f configFile

    "-p asa" menentukan untuk menginstal semua komponen API BaaS pada satu node (Cassandra, Elasticsearch, API BaaS Stack, API BaaS Portal, Tomcat).

    File konfigurasi harus dapat diakses atau dibaca oleh "apigee" .

  3. Karena Anda menginstal ElasticSearch pada node mandiri, sesuaikan memori default opsi untuk meningkatkan memori yang dialokasikan untuk ElasticSearch dari 4 GB menjadi 6 GB:
    1. Buka /opt/apigee/customer/application/elasticsearch.properties di editor. Jika file ini tidak ada, buatlah.
    2. Tetapkan properti setenv_elasticsearch_max_mem_size hingga 6 g (default-nya adalah 4g):
      setenv_elasticsearch_max_mem_size=6g
    3. Simpan file.
    4. Jalankan perintah berikut:
      /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
  4. Melakukan aktivasi organisasi seperti yang dijelaskan di bawah dalam Melakukan aktivasi organisasi baru.

Konfigurasi berhasil menyelesaikan penyiapan pada node.

Instal API BaaS di 7 atau 10 node

Prosedur untuk menginstal API BaaS versi 7 atau 10 node sangat mirip. Satu-satunya perbedaannya adalah untuk:

  • 10 penginstalan node, Anda menginstal tiga komponen ElasticSearch dan tiga API Komponen BaaS Stack pada node terpisah, dengan total enam node. Ini adalah konfigurasi yang direkomendasikan untuk performa tertinggi karena ElasticSearch memerlukan jumlah yang tinggi I/O disk dan memori.
  • 7 node penginstalan, Anda menginstal tiga komponen ElasticSearch dan tiga API BaaS Menumpuk komponen di node yang sama, dengan total tiga node.

Untuk API BaaS versi 7 dan 10 node, Anda harus terhubung ke cluster Cassandra. Jika Anda telah menginstal Edge, Anda dapat terhubung ke cluster Cassandra-nya, artinya Anda belum harus menginstal Cassandra sebagai bagian dari penginstalan API BaaS.

Di bawah ini adalah contoh file konfigurasi senyap untuk penginstalan API BaaS 10 node. Jika Anda menginstal komponen ElasticSearch dan API BaaS Stack pada tiga node yang sama, edit file tersebut sehingga:

  • IP1 dan IP4 ditetapkan ke alamat IP yang sama
  • IP2 dan IP5 ditetapkan ke alamat IP yang sama
  • IP3 dan IP6 ditetapkan ke alamat IP yang sama

Edit file ini seperlunya untuk konfigurasi Anda. Untuk referensi lengkap tentang file konfigurasi, lihat BaaS Referensi File Konfigurasi.

# Specify IP address or DNS name of node.
IP1=192.168.1.1   # ElasticSearch
IP2=192.168.1.2   # ElasticSearch
IP3=192.168.1.3   # ElasticSearch
IP4=192.168.1.4   # API BaaS Stack
IP5=192.168.1.5   # API BaaS Stack
IP6=192.168.1.6   # API BaaS Stack
IP7=192.168.1.7   # API BaaS Portal
IP8=192.168.1.8   # Cassandra (shared with Edge or standalone)
IP9=192.168.1.9   # Cassandra (shared with Edge or standalone)
IP10=192.168.1.10  # Cassandra (shared with Edge or standalone)

# Must resolve to IP address or DNS name of host - not to 127.0.0.1 or localhost.
HOSTIP=$(hostname -i)

# Define the API BaaS administrator account.  
AS_ADMIN="superuser"    # User name - default is "superuser".
AS_ADMIN_EMAIL=stackAdmin@email.com
AS_PASSWD=stackAdminPWord

# Only if you are installing Cassandra.
# Specify Cassandra data center and rack suffix.
# Must use IP addresses for CASS_HOSTS, not DNS names.
# CASS_HOSTS="$IP8:1,1 $IP9:1,1 $IP10:1,1"

# If connecting to existing Cassandra nodes, 
# specify Cassandra IPs.
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP8 $IP9 $IP10"

# Specify the Cassandra region.
REGION=dc-1

# Cassandra uname/pword.
# Even if Cassandra authentication is disabled,
# you must still pass values for these properties.
CASS_USERNAME=cassandra    # Default value
CASS_PASSWORD=cassandra    # Default value

# Specify BaaS Cassandra connection information.
# Specify the data center name.
BAAS_CASS_LOCALDC=dc-1    # Default is dc-1.

# For a single data center, specify the same value as BAAS_CASS_LOCALDC.
BAAS_CASS_DC_LIST=dc-1

# Replication is in the form "dataCenterName:#CassandraNodes". 
# For example, for dc-1 with three Cassandra nodes, it is dc-1:3.
BAAS_CASS_REPLICATION=dc-1:3

# Defines the initial contact points for members of the BaaS cluster. 
# Specify the IP address of no more than two Stack nodes. 
BAAS_CLUSTER_SEEDS="dc-1:$IP4,dc-1:$IP5"

# ElasticSearch IPs or DNS names, separated by spaces.
ES_HOSTS="$IP1 $IP2 $IP3"

# API BaaS Stack information.
# Default cluster name is "apigee_baas"
BAAS_USERGRID_CLUSTERNAME="apigee_baas" 

# URL and port of the load balancer for the API BaaS Stack nodes, 
# or IP/DNS and port 8080 of a single Stack node with no load balancer.
BAAS_USERGRID_URL=http://myloadbalancer:8443

# API BaaS Portal information.
# URL and port number of load balancer, if there is one in front of the Portal,
# or the URL and port of the Portal node.  
BAAS_PORTAL_URL="http://$IP7:9000"

# Portal port. Default value is 9000.
BAAS_PORTAL_LISTEN_PORT=9000 

# SMTP information. BaaS requires an SMTP server.
SMTPHOST=smtp.gmail.com
SMTPPORT=465
SMTPUSER=your@email.com
SMTPPASSWORD=yourEmailPassword
SMTPSSL=y
SMTPMAILFROM="My Company <myco@company.com>"

Opsional - Instal Cassandra: Mesin 8, 9, dan 10

Anda dapat menghubungkan API BaaS ke cluster Cassandra yang sama seperti yang digunakan oleh Edge. Jika Anda belum menginstal Edge, Anda dapat secara opsional menginstal Cassandra untuk digunakan oleh API BaaS.

Cluster Cassandra dapat menggunakan autentikasi, atau autentikasi Cassandra dapat dinonaktifkan. Lihat Aktifkan autentikasi Cassandra untuk banyak lagi.

  1. Instal utilitas apigee-setup Edge pada node menggunakan prosedur internet atau non-internet. Lihat Menginstal utilitas Edge apigee-setup untuk banyak lagi.
  2. Di command prompt, jalankan skrip penyiapan:
    /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile

    "-p c" yang ditentukan untuk menginstal Cassandra.

    File konfigurasi harus dapat diakses atau dibaca oleh "apigee" .

Konfigurasi berhasil menyelesaikan penyiapan datastore pada node.

Perhatikan bahwa JMX diaktifkan secara default untuk Cassandra. Akses jarak jauh JMX ke Cassandra tidak memerlukan {i>password<i}. Anda dapat mengonfigurasi Cassandra agar menggunakan autentikasi untuk JMX. Untuk informasi selengkapnya, lihat Cara Memantau.

Menyiapkan cron job Cassandra

Jika Anda harus menginstal Cassandra, siapkan cron job yang menggunakan nodetool untuk menghapus agar kunci berjalan setiap jam di setiap node Cassandra.

Jika Anda memiliki beberapa {i>node<i} Cassandra, beri offset cron job di setiap server sebanyak lima menit sehingga bahwa semua {i>node<i} tidak {i> flush<i} secara bersamaan.

cron job harus menjalankan perintah berikut:

/opt/apigee/apigee-cassandra/bin/nodetool -h IP_address flush Apigee_Baas_Locks

dengan IP_address adalah alamat IP node Cassandra.

Instal ElasticSearch: Mesin 1, 2, dan 3

Untuk menginstal ElasticSearch pada node-nya sendiri:

  1. Instal utilitas penyiapan Edge apigee pada node menggunakan internet atau non-internet prosedur standar. Lihat Menginstal Edge apigee-setup utilitas untuk mempelajari lebih lanjut.
  2. Di command prompt, jalankan skrip penyiapan:
    /opt/apigee/apigee-setup/bin/setup.sh -p e -f configFile
          

    The "-p e" option specifies to install ElasticSearch. The configuration file must be accessible or readable by the "apigee" user.

  3. (Optional) If you install ElasticSearch on a standalone node, meaning it is not installed with API BaaS Stack, then adjust the default memory option to increase the memory allocated for ElasticSearch from 4GB to 6GB:
    1. Open /opt/apigee/customer/application/elasticsearch.properties in an editor. If this file does not exist, create it.
    2. Set the setenv_elasticsearch_max_mem_size property to 6g (the default is 4g):
      setenv_elasticsearch_max_mem_size=6g
    3. Simpan file.
    4. Jalankan perintah berikut:
      /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart

    Konfigurasi berhasil menyelesaikan penyiapan pada node.

    Instal Stack BaaS API: Mesin 4, 5, dan 6

    Untuk menginstal API BaaS Stack pada node-nya sendiri:

    1. Instal utilitas penyiapan Edge apigee pada node menggunakan internet atau non-internet prosedur standar. Lihat Menginstal Edge apigee-setup utilitas untuk mempelajari lebih lanjut.
    2. Di command prompt, jalankan skrip penyiapan:
      /opt/apigee/apigee-setup/bin/setup.sh -p b -f configFile

      "-p b" yang ditetapkan untuk menginstal API BaaS Stack. File konfigurasi harus dapat diakses atau dibaca oleh "apigee" .

    Setelah penginstal mengambil kredensial admin yang benar, penginstal menginstal Tomcat, membuat API Keyspace BaaS, dan menyiapkan API BaaS Stack di server. SMTP juga dikonfigurasi untuk mengizinkan UI untuk mengirim email konfirmasi {i>password<i}.

    Instal Portal BaaS API: Mesin 7

    Untuk menginstal Portal BaaS API:

    1. Instal utilitas penyiapan Edge apigee pada node menggunakan internet atau non-internet prosedur standar. Lihat Menginstal Edge apigee-setup utilitas untuk mempelajari lebih lanjut.
    2. Di command prompt, jalankan skrip penyiapan:
      /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile

      "-p p" yang menentukan untuk menginstal API BaaS Portal. File konfigurasi harus dapat diakses atau dibaca oleh "apigee" .

      Penginstal memulai server web Nginx dan menyelesaikan Portal BaaS API konfigurasi Anda.

    3. Langkah berikutnya bergantung pada penginstalan.
      1. Jika Anda memiliki load balancer di depan node Portalor Stack, bagian berikutnya menjelaskan cara mengonfigurasi API BaaS untuk load balancer.
      2. Jika Anda tidak memiliki load balancer di depan node Portalor Stack, organisasi seperti yang dijelaskan di bawah dalam Orientasi organisasi baru.

    Catat URL Portal BaaS API. Ini adalah URL yang Anda masukkan ke dalam browser untuk mengakses Antarmuka pengguna Portal BaaS API.

    Konfigurasi Node BaaS API untuk load balancer Stack atau Portal

    Jika menyertakan load balancer di depan node Stack atau Portal, Anda harus mengonfigurasi ke node dengan URL load balancer yang benar. Misalnya, node Stack memerlukan informasi tersebut saat:

    • Menyertakan URL dalam respons dalam permintaan BaaS API.
    • Menambahkan tautan dalam {i>template<i} email saat mengatur ulang {i>password<i}, atau mengirim notifikasi.
    • Mengalihkan pengguna ke halaman Portal tertentu.

    Jika Anda menggunakan load balancer di depan node Stack, tetapkan properti berikut di /opt/apigee/customer/application/usergrid.properties:

    usergrid-deployment_usergrid.api.url.base=http://localhost:8080

    Ganti http://localhost:8080 dengan URL pemuatan dengan load balancer Jaringan Passthrough Eksternal Regional. Jika load balancer dikonfigurasi untuk menggunakan TLS, gunakan protokol HTTPS. Hanya Anda perlu menyertakan porta jika Anda menggunakan porta non-standar, artinya selain porta 80 untuk HTTP dan porta 443 untuk HTTPS.

    Anda juga harus menetapkan properti berikut di /opt/apigee/customer/application/portal.properties jika Anda menggunakan load balancer di depan node Stack:

    baas.portal.config.overrideUrl=http://localhost:8080
    

    Ganti http://localhost:8080 dengan URL load balancer untuk Stack.

    Jika Anda menggunakan load balancer di depan node Portal, tetapkan properti berikut dalam usergrid.properties:

    usergrid-deployment_portal.url=http://localhost:9000

    Ganti http://localhost:9000 dengan URL dengan load balancer Jaringan Passthrough Eksternal Regional. Jika load balancer dikonfigurasi untuk menggunakan TLS, gunakan protokol HTTPS. Anda hanya perlu menyertakan porta jika Anda menggunakan porta non-standar, artinya sesuatu selain porta 80 untuk HTTP dan porta 443 untuk HTTPS.

    Setelah mengedit usergrid.properties dan portal.properties:

    1. Konfigurasi node Stack:
      /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    2. Mulai ulang Stack BaaS:
      /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
    3. Jika Anda mengubah portal.properties, konfigurasikan node Portal:
      /opt/apigee/apigee-service/bin/apigee-service baas-portal configure
    4. Mulai ulang Portal BaaS:
      /opt/apigee/apigee-service/bin/apigee-service baas-portal restart

    Melakukan orientasi untuk organisasi baru

    Orientasi adalah proses pembuatan organisasi dan administrator organisasi. Sesudah membuat organisasi dan administrator organisasi, Anda dapat login ke API BaaS Portal dan membuat permintaan ke API BaaS REST API.

    Saat Anda membuat organisasi, alamat email administrator organisasi:

    • Harus berbeda dengan alamat email administrator sistem.
    • Harus unik di antara semua organisasi lain. Artinya, Anda tidak dapat membuat dua organisasi dengan alamat email yang sama untuk administrator organisasi. Namun, setelah membuat organisasi Anda, Anda dapat menambahkan administrator tambahan yang dapat diduplikasi di beberapa tidak di organisasi lain.

    Untuk melakukan orientasi, gunakan skrip Python create_org_and_user.py. Pemanggilan skrip ini tanpa argumen command line akan menyebabkannya meminta semua informasi:

    python create_org_and_user.py

    Atau, Anda dapat meneruskan salah satu atau semua opsi sebagai argumen command line. Anda diminta untuk informasi apa pun yang Anda abaikan dari command line:

    python create_org_and_user.py -o '<org name>'
    python create_org_and_user.py -o '<org name>' -a '<new admin email>' -p '<new admin password>'

    Untuk membuat organisasi:

    1. Ubah direktori ke /opt/apigee/baas-usergrid/bin.
    2. Panggil skrip Python create_org_and_user.py.

      Anda diminta untuk memasukkan nama pengguna dan {i>password<i} administrator sistem BaaS sehingga hanya administrator admin dapat menjalankannya.

    3. Login ke Portal BaaS API di browser web menggunakan URL yang Anda catat di akhir Penginstalan URL Portal BaaS API. Untuk mengakses portal, masukkan URL Portal BaaS API di bentuknya:
      http://portalExternalIP:9000/
    4. Saat layar login portal muncul, Anda dapat:
      • Login menggunakan nama pengguna dan sandi administrator organisasi.
      • Login menggunakan nama pengguna dan sandi administrator sistem.

    Mengakses API BaaS REST API

    Untuk mengakses API BaaS REST API, gunakan URL dalam bentuk:

    https://loadBalancerIP:8080/your-org/your-app

    Di lingkungan pengembangan, Anda bisa menginstal semua komponen API BaaS pada satu {i>node<i}, artinya Anda memiliki satu API BaaS Stack. Atau, Anda mungkin memiliki lingkungan kecil dengan satu Node Stack API BaaS dan tanpa load balancer. Pada jenis lingkungan ini, Anda dapat melakukan panggilan API langsung ke node API BaaS Stack:

    curl -v "http://portalExternalIP:8080/status"

    Untuk informasi selengkapnya tentang cara memulai API BaaS Portal, lihat dokumentasi Apigee di: http://apigee.com/docs/content/build-apps-home.