Edge for Private Cloud v4.18.01
Anda dapat menginstal API BaaS di beberapa pusat data menggunakan konfigurasi aktif/aktif. Dokumen ini menjelaskan cara menambahkan pusat data BaaS ke pusat data BaaS yang ada.
Menambahkan pusat data saat Gugus Cassandra dibagikan ke Edge
Semua pusat data harus memiliki jumlah node Cassandra yang sama. Penginstalan BaaS API dapat menggunakan cluster Cassandra-nya sendiri, atau dapat berbagi cluster Cassandra dengan Edge.
Jika penginstalan BaaS menggunakan cluster Cassandra dengan Edge, Anda harus memperbarui Server Pengelolaan di pusat data asli untuk mengonfigurasinya guna mengenali node Cassandra di pusat data baru.
Memperbarui pusat data yang ada
Menambahkan pusat data BaaS baru (pusat data 2) mengharuskan Anda untuk melakukan langkah-langkah untuk menginstal dan mengonfigurasi pusat data baru, tetapi juga mengharuskan Anda memperbarui pusat data BaaS yang asli (pusat data 1) . Perubahan ini diperlukan karena:
- Anda menambahkan node Cassandra baru di pusat data baru yang harus dapat diakses oleh pusat data yang ada.
- Anda harus mengonfigurasi informasi replikasi yang digunakan oleh node BaaS Stack dalam data pusat 1 untuk memasukkan informasi dari pusat data 2. Anda tidak dapat melakukan konfigurasi tersebut hingga data center 2 diinstal.
Untuk melakukan pembaruan ini pada pusat data 1, Anda memperbarui file konfigurasi asli yang digunakan untuk menginstal pusat data 1, lalu menjalankan kembali apigee-setup pada node data Cassandra pusat 1. Jika cluster Cassandra untuk pusat data 1 dibagikan dengan penginstalan Edge, maka Anda juga harus memperbarui Server Pengelolaan juga.
Membuat file konfigurasi
Untuk menginstal pusat data 1, gunakan konfigurasi yang ditampilkan di Penginstalan BaaS API. File konfigurasi tidak perlu menyertakan informasi apa pun tentang data center 2 pada saat Anda menginstal data center 1. Anda menambahkan informasi ke file konfigurasi setelah menginstal data center 2.
Berikut adalah file konfigurasi untuk pusat data 2. File konfigurasi ini mengasumsikan menginstal dc-2 di 10 node, seperti yang dijelaskan di Topologi Penginstalan. Sesuaikan file ini jika Anda diinstal di 7 {i>node<i}.
Perhatikan bahwa file konfigurasi untuk pusat data 2 (dc-2) berisi informasi tentang pusat data 1 (dc-1):
# Specify IP address or DNS name of node for dc-2. 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 dc-2 (shared with Edge or standalone) IP9=192.168.1.9 # Cassandra dc-2 (shared with Edge or standalone) IP10=192.168.1.10 # Cassandra dc-2 (shared with Edge or standalone) # Specify node information for dc-1 IP11=192.168.1.11 # Cassandra dc-1 (shared with Edge or standalone) IP12=192.168.1.12 # Cassandra dc-1 (shared with Edge or standalone) IP13=192.168.1.13 # Cassandra dc-1 (shared with Edge or standalone) IP14=192.168.1.14 # API BaaS Stack IP15=192.168.1.15 # API BaaS Stack # 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 # Specify Cassandra data center and rack suffix. # List dc-2 nodes first, then dc-1. # Must use IP addresses for CASS_HOSTS, not DNS names. # CASS_HOSTS="$IP8:2,1 $IP9:2,1 $IP10:2,1 $IP11:1,1 $IP12:1,1 $IP13:1,1" # Specify the Cassandra region. REGION=dc-2 # 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 as dc-2. BAAS_CASS_LOCALDC=dc-2 # Specify both data centers. BAAS_CASS_DC_LIST=dc-1,dc-2 # Replication is in the form "dataCenterName:#CassandraNodes". # Specify both data centers. BAAS_CASS_REPLICATION=dc-1:3,dc-2:3 # Defines the initial contact points for members of the BaaS cluster. # Specify the IP address of no more than two Stack nodes per data center. # Specify both data centers. BAAS_CLUSTER_SEEDS="dc-1:$IP14,dc-1:$IP15,dc-2:$IP4,dc-2:$IP5" # ElasticSearch IPs or DNS names, separated by spaces, for dc-2. 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>"
Menambahkan pusat data BaaS
- Instal pusat data pertama seperti yang dijelaskan di Penginstalan BaaS API. Dokumen tersebut berisi file konfigurasi yang Anda gunakan untuk menginstal pusat data 1.
- Buat file konfigurasi untuk dc-2 seperti yang dijelaskan di atas.
- Instal Cassandra, baik sebagai bagian dari penginstalan Edge yang ada atau sebagai cluster mandiri untuk BaaS:
- Instal utilitas apigee-setup Edge di node Cassandra pertama dc-2, mesin 8, menggunakan prosedur internet atau non-internet. Lihat Menginstal penyiapan apigee Edge utilitas untuk mempelajari lebih lanjut.
- Di command prompt, jalankan skrip penyiapan untuk menginstal Cassandra di node pertama:
> /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
Opsi “-p c” menentukan untuk menginstal Cassandra.
File konfigurasi harus dapat diakses atau dibaca oleh "apigee" . - Ulangi langkah 3 dan 4 untuk node Cassandra yang tersisa, mesin 9 dan 10, di dc-2.
- Di node Cassandra dc-1, edit file konfigurasi untuk menambahkan node Cassandra dari
data center 2 berdasarkan cara Anda menginstal Cassandra:
# Cantumkan node dc-1 terlebih dahulu, lalu dc-2,
# termasuk data center Cassandra dan akhiran rak
CASS_HOSTS="$IP11:1,1 $IP12:1,1 $IP13:1,1 $IP8:2,1 $IP9:2,1 $IP10:2,1" - Pada {i>node<i} Cassandra pertama dari dc-1, jalankan {i>setup.sh<i} dengan file konfigurasi dc-1 baru yang
menyertakan node Cassandra dari dc-2:
> /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile - Ulangi langkah 6 dan 7 untuk node Cassandra yang tersisa di dc-1.
- Jika Anda terhubung ke cluster Cassandra untuk dc-1 yang dibagikan ke Edge,
tambahkan node Cassandra dc-2 ke file konfigurasi untuk node Server Manajemen dc-1 dan jalankan
setup.sh:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p ms -f<i} configFile - Perbarui keyspace Cassandra dengan faktor replikasi yang benar untuk kedua pusat data tersebut. Anda
hanya perlu menjalankan langkah ini sekali di server Cassandra di salah satu pusat data:
Catatan: Perintah di bawah ini menetapkan faktor replikasi ke "3", yang menunjukkan tiga node Cassandra di cluster. Ubah nilai ini sesuai kebutuhan untuk penginstalan Anda.- Mulai utilitas Cassandra cqlsh:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassandraIP - Jalankan perintah CQL berikut di perintah "cqlsh>" untuk menetapkan tingkat replikasi untuk keyspace Cassandra:
- cqlsh> ALTER KEYSPACE "Apigee_Baas_dc_1" WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "Apigee_Baas" DENGAN replikasi = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "Kunci_Apigee_Baas" DENGAN replikasi = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "system_traces" WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER KEYSPACE "system_auth" WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- Lihat keyspace dengan menggunakan perintah:
cqlsh> pilih * dari system.schema_keyspaces; - Keluar dari cqlsh:
cqlsh> keluar
- Mulai utilitas Cassandra cqlsh:
- Pada semua node Cassandra di dc-2, jalankan perintah rebuild, dengan menentukan nama region
dc-1:
> build ulang /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP dc-1 - Jalankan "nodetool status" di setiap node Cassandra dan pastikan semua node Cassandra memiliki
'100%' untuk nilai 'Owns':
> /opt/apigee/apigee-cassandra/bin/nodetool status - Instal BaaS di dc-2:
- Edit file konfigurasi untuk hanya mencantumkan node Cassandra di dc-2:
# Daftar node Cassandra dc-2,
# menghapus pusat data Cassandra dan akhiran rak
CASS_HOSTS="$IP8 $IP9 $IP10" - Instal ElasticSearch di node 4, 5, dan 6 dari dc-2:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p e -f<i} configFile - Instal Stack BaaS pada node 4, 5, dan 6 dari dc-2:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p b -f<i} configFile - Instal Portal BaaS di komputer 7:
> /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile
- Edit file konfigurasi untuk hanya mencantumkan node Cassandra di dc-2:
- Perbarui node Stack BaaS di pusat data 1:
- Di node BaaS Stack pertama di pusat data 1, edit /opt/apigee/customer/application/usergrid.properties di editor. Jika file tidak ada, buat file tersebut.
- Tambahkan properti berikut ke usergrid.properties:
# Nilai yang sama dengan BAAS_CLUSTER_SEEDS dalam file konfigurasi dc-2,
# tanpa tanda kutip ganda.
usergrid-deployment_usergrid.cluster.seeds=dc-1:dc1StackIP1,dc-1:dc1StackIP2,dc-2:dc2StackIP1,dc-2:dc2StackIP2
# Nilai yang sama seperti BAAS_CASS_DC_LIST dalam file konfigurasi dc-2.
usergrid-deployment_usergrid.cluster.region.list=dc-1,dc-2 - Ulangi langkah a dan b pada node BaaS Stack yang tersisa.
- Mulai ulang semua node BaaS Stack.
Catatan: Saat memulai ulang node BaaS Stack, mulai ulang node tersebut dengan cara yang sama urutannya agar tercantum di BAAS_CLUSTER_SEEDS. BAAS_CLUSTER_SEEDS mencantumkan paling banyak dua node Stack. Setelah memulai ulang kedua node tersebut secara berurutan, Anda bisa memulai ulang sisa node dalam urutan apa pun.
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid mulai ulang
- Memperbarui nilai ruang kunci BaaS. Keyspace ini harus ditetapkan untuk replikasi pada waktu penginstalan,
tetapi tidak harus pada waktu proses berjalan. Menghapus replikasi juga akan menghemat memori Cassandra.
?Anda hanya perlu menjalankan langkah ini sekali pada server Cassandra di salah satu pusat data:- Mulai utilitas cqlsh Cassandra:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassandraIP - Jalankan perintah CQL berikut untuk menetapkan level replikasi untuk ruang kunci Cassandra:
- cqlsh> ALTER SPASI UTAMA "Apigee_Baas_dc_1" DENGAN replikasi = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3' };
- cqlsh> ALTER KEYSPACE "Apigee_Baas_dc_2" WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc-2': '3' };
- Lihat ruang kunci dengan menggunakan perintah:
cqlsh> select * from system.schema_keyspaces; - Keluar dari cqlsh:
cqlsh> keluar
- Mulai utilitas cqlsh Cassandra:
Penginstalan pusat data kedua ini sekarang telah selesai.
Setelah Anda menyelesaikan instalasi dan konfigurasi kedua pusat data, Anda dapat validasi penginstalan dengan menggunakan prosedur berikut:
- Di semua node BaaS Stack, periksa statusnya:
> curl 0:8080/status - Periksa apakah panggilan API token berfungsi:
> curl -X POSTINGAN "http://localhost:8080/management/token" -d '{"grant_type":"password", "username":"adminEmail","password":"pWord"}' - Coba login ke Portal BaaS untuk dc-2. Pastikan semua data direplikasi di dc-2, seperti koleksi yang dibuat di dc-1.