Edge for Private Cloud v. 4.17.09
Dokumen ini menjelaskan cara menambahkan pusat data (juga disebut region) ke data yang ada tengah.
Pertimbangan sebelum menambahkan pusat data
Sebelum Anda menginstal pusat data, Anda harus memahami cara mengkonfigurasi OpenLDAP, Server ZooKeeper, Cassandra, dan Postgres di seluruh pusat data. Anda juga harus memastikan bahwa porta yang diperlukan terbuka di antara {i> node<i} di dua pusat data.
- OpenLDAP
Setiap pusat data memiliki server OpenLDAP sendiri yang dikonfigurasi dengan replikasi diaktifkan. Jika Anda menginstal pusat data baru, Anda harus mengkonfigurasi OpenLDAP untuk menggunakan replikasi, dan Anda harus mengkonfigurasi ulang server OpenLDAP di pusat data yang ada untuk menggunakan replikasi. - ZooKeeper
Untuk properti ZK_HOSTS untuk kedua pusat data, tentukan alamat IP atau nama DNS semua node ZooKeeper dari kedua data tengah, dalam urutan yang sama, dan menandai setiap {i>node<i} dengan pengubah “:observer”. Node tanpa pengubah “:observer” disebut "voters". Kamu harus punya pengalaman yang ganjil jumlah "pemilih" dalam konfigurasi Anda.
Dalam topologi ini, host ZooKeeper pada host 9 adalah observer:
Pada contoh file konfigurasi yang ditunjukkan di bawah ini, simpul 9 diberi tag dengan Pengubah ":observer" sehingga Anda memiliki lima pemilih: Node 1, 2, 3, 7, dan 8.
Untuk ZK_CLIENT_HOSTS untuk setiap pusat data, tentukan alamat IP atau nama DNS hanya dari ZooKeeper di pusat data, dalam urutan yang sama, untuk semua {i>node<i} ZooKeeper dalam data tengah. - Cassandra
Semua pusat data harus memiliki jumlah node Cassandra yang sama.
Untuk CASS_HOSTS untuk setiap data , pastikan Anda menentukan semua alamat IP Cassandra (bukan nama DNS) untuk kedua data Google. Untuk pusat data 1, cantumkan node Cassandra di pusat data tersebut terlebih dahulu. Untuk pusat data 2, cantumkan node Cassandra di pusat data tersebut terlebih dahulu. Mencantumkan node Cassandra pada untuk semua {i>node<i} Cassandra di pusat data.
Semua node Cassandra harus memiliki akhiran ':<d>,<r>', misalnya '<ip>:1,1 = pusat data 1 dan zona rak/ketersediaan 1 serta '<ip>:2,1 = pusat data 2 dan rak/zona ketersediaan 1.
Misalnya, "192.168.124.201:1,1 192.168.124.202:1,1 192.168.124.203:1,1 192.168.124.204:2,1 192.168.124.205:2,1 192.168.124.206:2,1"
Node pertama di rak/zona ketersediaan 1 dari setiap pusat data akan digunakan sebagai inti server tertentu. Dalam model deployment ini, penyiapan Cassandra akan terlihat seperti ini:
-
Postgres
Secara default, Edge menginstal semua node Postgres dalam mode master. Namun, ketika Anda memiliki beberapa pusat data, Anda mengonfigurasi node Postgres untuk menggunakan replikasi master-standby sehingga jika jika node master gagal, node standby dapat terus menyalurkan traffic. Biasanya, Anda mengonfigurasi server Postgres master di satu pusat data, dan server standby di data kedua tengah.
Jika pusat data yang ada sudah dikonfigurasi untuk menjalankan dua {i>node <i}Postgres di mode master/standby, lalu sebagai bagian dari prosedur ini, batalkan pendaftaran node standby yang ada dan menggantinya dengan node standby di pusat data baru.
Tabel berikut menunjukkan konfigurasi Postgres sebelum dan sesudah untuk kedua skenario:
Sebelum
Setelah
Node Master Postgres tunggal di dc-1
Node Postgres utama di dc-1
Node Postgres standby di dc-2
Node Postgres utama di dc-1
Node Postgres standby di dc-1
Node Postgres utama di dc-1
Node Postgres standby di dc-2
Batalkan pendaftaran node Postgres Standby lama di dc-1
- Persyaratan port
Anda harus memastikan bahwa port yang diperlukan terbuka di antara node di dua pusat data. Untuk diagram port, lihat Penginstalan Persyaratan.
Memperbarui pusat data yang ada
Untuk menambahkan pusat data, Anda harus melakukan langkah-langkah untuk menginstal dan mengonfigurasikan data baru di pusat data, tetapi juga mengharuskan Anda untuk memperbarui {i>node<i} di pusat data asli. Ini modifikasi diperlukan karena Anda menambahkan node Cassandra dan ZooKeeper baru di pusat data yang harus dapat diakses oleh pusat data yang ada, dan Anda harus mengonfigurasi ulang OpenLDAP untuk menggunakan replikasi.
Membuat file konfigurasi
Di bawah ini adalah file konfigurasi senyap untuk dua pusat data, di mana masing-masing center memiliki 6 node seperti yang ditunjukkan di Penginstalan Topologi. Perhatikan bahwa file konfigurasi untuk dc-1 menambahkan setelan tambahan ke:
- Konfigurasikan OpenLDAP dengan replikasi di dua node OpenLDAP.
- Tambahkan node Cassandra dan ZooKeeper baru dari dc-2 ke file konfigurasi untuk dc-1.
# Datacenter 1 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) MSIP=$IP1 ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=1 LDAP_PEER=$IP7 APIGEE_LDAPPW=secret MP_POD=gateway-1 REGION=dc-1 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1 $IP7:2,1 $IP8:2,1 $IP9:2,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |
# Datacenter 2 IP1=IPorDNSnameOfNode1 IP2=IPorDNSnameOfNode2 IP3=IPorDNSnameOfNode3 IP7=IPorDNSnameOfNode7 IP8=IPorDNSnameOfNode8 IP9=IPorDNSnameOfNode9 HOSTIP=$(hostname -i) MSIP=$IP7 ADMIN_EMAIL=opdk@google.com APIGEE_ADMINPW=Secret123 LICENSE_FILE=/tmp/license.txt USE_LDAP_REMOTE_HOST=n LDAP_TYPE=2 LDAP_SID=2 LDAP_PEER=$IP1 APIGEE_LDAPPW=secret MP_POD=gateway-2 REGION=dc-2 ZK_HOSTS="$IP1 $IP2 $IP3 $IP7 $IP8 $IP9:observer" ZK_CLIENT_HOSTS="$IP7 $IP8 $IP9" # Must use IP addresses for CASS_HOSTS, not DNS names. CASS_HOSTS="$IP7:2,1 $IP8:2,1 $IP9:2,1 $IP1:1,1 $IP2:1,1 $IP3:1,1" SKIP_SMTP=n SMTPHOST=smtp.example.com SMTPUSER=smtp@example.com SMTPPASSWORD=smtppwd SMTPSSL=n SMTPPORT=25 SMTPMAILFROM="My Company <myco@company.com>" |
Prosedur untuk menambahkan pusat data baru
Dalam prosedur ini, pusat data diberi nama:
- dc-1: pusat data yang ada
- dc-2: pusat data baru
- Pada dc-1, jalankan kembali setup.sh pada node Cassandra asli dengan dc-1 yang baru
confiig yang mencakup node Cassandra dari dc-2:
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile1 - Pada dc-1, jalankan kembali setup.sh pada node Server Pengelolaan:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p ms -f<i} configFile1 - Pada dc-2, instal apigee-setup di semua node. Lihat Menginstal utilitas penyiapan Edge apigee untuk informasi selengkapnya info.
- Di dc-2, instal Cassandra dan ZooKeeper di node yang sesuai:
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile2 - Di dc-2, jalankan perintah build ulang pada semua node Cassandra, dengan menentukan
nama wilayah dc-1:
> /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP pembuatan ulang dc-1 - Di dc-2, instal Server Pengelolaan di node yang sesuai:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p ms -f<i} configFile2 - Pada node Management Server di dc-2, instal
apigee-provision, yang menginstal
utilitas apigee-adminapi.sh:
> /opt/apigee/apigee-service/bin/apigee-service apigee-Provisioning penginstalan - Pada dc-2, instal Routes dan Message Processors di
node:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p rmp -f<i} configFile2 - Pada dc-2, instal Qpid pada node yang sesuai:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p qs -f<i} configFile2 - Pada dc-2, instal Postgres pada node yang sesuai:
> {i>/opt/apigee/apigee-setup/bin/setup.sh -p ps -f<i} configFile2 - Menyiapkan master/standby Postgres untuk node Postgres. Simpul Postgres di dc-1 adalah
utama, dan node Postgres di dc-2 adalah server standby.
Catatan: Jika dc-1 sudah dikonfigurasi untuk memiliki dua Postgres yang berjalan dalam mode master/standby, kemudian sebagai bagian dari prosedur ini, gunakan node Postgres master yang ada di dc-1 sebagai master, dan Node postgres di dc-2 sebagai server standby. Selanjutnya dalam prosedur ini, Anda akan membatalkan pendaftaran server standby Postgres yang ada di dc-1.- Pada node master di dc-1, edit file konfigurasi untuk menyetel:
PG_MASTER=IPorDNSofDC1Master
PG_STANDBY=IPorDNSofDC2Standby - Aktifkan replikasi pada master baru:
> {i>/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master<i} -f configFIle - Pada node standby di dc-2, edit file konfigurasi untuk menyetel:
PG_MASTER=IPorDNSofDC1Master
PG_STANDBY=IPorDNSofDC2Standby - Pada node standby di dc-2, hentikan server, lalu hapus semua
data Postgres yang ada:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
> rm -rf /opt/apigee/data/apigee-postgresql/
Catatan: Jika perlu, Anda dapat mencadangkan data ini sebelum menghapusnya. - Konfigurasi node standby di dc-2:
> {i>/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql<i} setup-replication-on-standby -f configFile
- Pada node master di dc-1, edit file konfigurasi untuk menyetel:
- Pada dc-1, perbarui konfigurasi analisis dan konfigurasi organisasi.
- Di node Server Pengelolaan dc-1, dapatkan UUID Postgres
node:
> server apigee-adminapi.sh list -r dc-1 -p analytics -t postgres-server --admin adminEmail --pwd adminPword --host localhost
UUID muncul di akhir data yang ditampilkan. Simpan nilai tersebut.
Catatan: Jika dc-1 dikonfigurasi agar memiliki dua node Postgres berjalan di mode master/standby, Anda akan melihat dua alamat IP dan UUID di {i>output-<i}nya. Simpan kedua UUID. Dari IP, Anda harus dapat menentukan UUID mana untuk {i>master<i} dan mana untuk ke node standby. - Di node Server Pengelolaan dc-2, dapatkan UUID Postgres seperti yang ditunjukkan pada langkah sebelumnya. Simpan nilai tersebut.
- Pada node Server Pengelolaan dc-1, tentukan nama
analitik dan kelompok konsumen. Banyak perintah di bawah ini memerlukan informasi tersebut.
Secara default, nama grup analisis adalah axgroup-001, dan nama konsumen adalah konsumen-group-001. Di file konfigurasi senyap untuk suatu region, Anda dapat menetapkan nama grup analisis dengan menggunakan properti AXGROUP.
Jika Anda tidak yakin dengan nama Analytics dan grup konsumen, gunakan untuk menampilkannya:
> Analisis apigee-adminapi.sh daftar grup --admin adminEmail --pwd adminPword --host localhost
Perintah ini menampilkan nama grup analisis di kolom nama, dan grup konsumen di isian {i>consumer-groups<i}. - Di node Server Pengelolaan dc-1, hapus Postgres yang ada
server dari grup analisis:
- Hapus node Postgres dari grup konsumen:
> apigee-adminapi.sh grup analitik Consumer_groups datastores hapus -g axgroup-001 -c consumer-group-001 -u UUID -Y --admin adminEmail --pwd adminPword --host localhost
Jika dc-1 dikonfigurasi agar memiliki dua node Postgres yang berjalan di mode master/standby, hapus keduanya:
> apigee-adminapi.sh grup analitik Consumer_groups datastores hapus -g axgroup-001 -c consumer-group-001 -u "UUID_1,UUID_2" -Y --admin adminEmail --pwd adminPword --host localhost - Hapus node Postgres dari grup analisis:
> apigee-adminapi.sh grup analisis postgres_server hapus -g axgroup-001 -u UUID -Y --admin adminEmail --pwd adminPword --host localhost
Jika dc-1 dikonfigurasi untuk memiliki dua node Postgres yang berjalan dalam mode master/standby, hapus keduanya:
> apigee-adminapi.sh grup analitik postgres_server hapus -g axgroup-001 -u UUID1,UUID2 -Y --admin adminEmail --pwd adminPword --host localhost
- Hapus node Postgres dari grup konsumen:
-
Pada node Server Pengelolaan dc-1, tambahkan master/standby baru
Server postgres ke grup analisis:
- Tambahkan kedua server Postgres ke grup analisis:
> apigee-adminapi.sh grup analisis postgres_server add -g axgroup-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost
yang mana UUID_1 sesuai dengan node Postgres master di dc-1, dan UUID_2 sesuai dengan Postgres standby di dc-2. - Tambahkan server PG ke grup konsumen sebagai master/standby:
> apigee-adminapi.sh grup analitik konsumen_groups datastores tambahkan -g axgroup-001 -c konsumen-group-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost
- Tambahkan kedua server Postgres ke grup analisis:
- Tambahkan server Qpid dari dc-2 ke grup analisis:
- Di node Server Pengelolaan dc-1, dapatkan UUID Qpid
node di dc-2:
> apigee-adminapi.sh daftar server -r dc-2 -p central -t qpid-server --admin adminEmail --pwd adminPword --host localhost
UUID muncul di akhir data yang ditampilkan. Simpan nilai-nilai tersebut. - Pada node Server Pengelolaan dc-1, tambahkan node Qpid ke bagian
grup analisis:
>apigee-adminapi.sh grup analitik qpid_server add -g axgroup-001 -u "UUID_1 UUID_2" --admin adminEmail --pwd adminPword --host localhost - Pada node Server Pengelolaan dc-1, tambahkan node Qpid ke bagian
grup konsumen:
> apigee-adminapi.sh grup analitik konsumen_groups konsumen tambahkan -g axgroup-001 -c konsumen-group-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost
- Di node Server Pengelolaan dc-1, dapatkan UUID Qpid
node di dc-2:
- Batalkan pendaftaran dan hapus server standby Postgres lama dari dc-1:
- Batalkan pendaftaran server standby Postgres dc-1 yang ada:
> apigee-adminapi.sh server membatalkan pendaftaran -u UUID -r dc-1 -p analytics -t postgres-server -Y --admin adminEmail --pwd adminPword --host localhost
dengan UUID sebagai mode standby lama Node postgres di dc-1. - Hapus server standby dc-1 Postgres yang ada:
Catatan: Perintah ini tidak meng-uninstal node server Postgres. Ini hanya menghapusnya dari daftar node Edge. Anda nanti dapat meng-uninstal Postgres dari {i>node<i}, jika perlu.
> apigee-adminapi.sh server hapus -u UUID --admin adminEmail --pwd adminPword --host localhost
- Batalkan pendaftaran server standby Postgres dc-1 yang ada:
- Di node Server Pengelolaan dc-1, dapatkan UUID Postgres
node:
- 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 seperlunya untuk penginstalan Anda.- Mulai utilitas Cassandra cqlsh:
> /opt/apigee/apigee-cassandra/bin/cqlsh cassandraIP - Jalankan perintah CQL berikut di "cqlsh>" prompt untuk menetapkan replikasi
tingkat untuk keyspace Cassandra:
- cqlsh> ALTER "identityzone" KEYSPACE DENGAN replikasi = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
- cqlsh> ALTER SPASI UTAMA "system_traces" DENGAN replikasi = { '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:
- Jalankan perintah nodetool berikut pada semua node Cassandra di dc-1 untuk mengosongkan memori:
> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP pembersihan - Untuk setiap organisasi dan untuk setiap lingkungan yang ingin Anda dukung di seluruh data
pusat:
- Di node Server Pengelolaan dc-1, tambahkan MP_POD baru ke bagian
Organisasi:
> pod apigee-adminapi.sh tambahkan -o orgName -r dc-2 -p gateway-2 --admin adminEmail --pwd adminPword --host localhost
dengan gateway-2 adalah nama pod gateway seperti yang ditentukan oleh MP_POD pada file konfigurasi dc-2. - Tambahkan Pemroses Pesan baru ke organisasi dan lingkungan:
- Di node Server Pengelolaan dc-2, dapatkan UUID
Node Pemroses Pesan di dc-2:
> apigee-adminapi.sh server list -r dc-2 -p gateway-2 -t message-processor --admin adminEmail --pwd adminPword --host localhost
UUID muncul di akhir data yang ditampilkan. Simpan nilai-nilai tersebut. - Di node Server Pengelolaan dc-1, untuk setiap Pemroses Pesan
di dc-2, tambahkan Pemroses Pesan ke lingkungan untuk organisasi:
> org apigee-adminapi.sh server envs add -o orgName -e envName -u UUID --admin adminEmail --pwd adminPword --host localhost
- Di node Server Pengelolaan dc-2, dapatkan UUID
Node Pemroses Pesan di dc-2:
- Di node Server Pengelolaan dc-1, periksa organisasi:
> apigee-adminapi.sh orgs API penerapan -o orgName -a apiProxyName --admin adminEmail --pwd adminPword --host localhost
dengan apiProxyName adalah nama proxy API yang di-deploy di organisasi/pengaturan.
- Di node Server Pengelolaan dc-1, tambahkan MP_POD baru ke bagian
Organisasi: