Menambahkan pusat data

Edge untuk Private Cloud v4.18.01

Dokumen ini menjelaskan cara menambahkan pusat data (juga disebut region) ke pusat data yang ada.

Pertimbangan sebelum menambahkan pusat data

Sebelum menginstal pusat data, Anda harus memahami cara mengonfigurasi server OpenLDAP, ZooKeeper, Cassandra, dan Postgres di seluruh pusat data. Anda juga harus memastikan bahwa port yang diperlukan terbuka di antara node di kedua pusat data.

  • OpenLDAP
    Setiap pusat data memiliki server OpenLDAP sendiri yang dikonfigurasi dengan replikasi diaktifkan. Saat menginstal pusat data baru, Anda harus mengonfigurasi OpenLDAP agar menggunakan replikasi, dan Anda harus mengonfigurasi ulang server OpenLDAP di pusat data yang ada untuk menggunakan replikasi.
  • ZooKeeper
    Untuk properti ZK_HOSTS bagi kedua pusat data, tentukan alamat IP atau nama DNS semua node ZooKeeper dari kedua pusat data, dalam urutan yang sama, dan tandai setiap node dengan pengubah “:observer”. Node tanpa pengubah “:observer” disebut "voters". Jumlah "pemilih" harus ganjil dalam konfigurasi Anda.

    Dalam topologi ini, host ZooKeeper pada host 9 adalah pengamat:



    Pada contoh file konfigurasi yang ditunjukkan di bawah, node 9 diberi tag dengan pengubah “:observer” sehingga Anda memiliki lima pemilih: Node 1, 2, 3, 7, dan 8.

    Untuk properti ZK_CLIENT_HOSTS bagi setiap pusat data, tentukan alamat IP atau nama DNS hanya untuk node ZooKeeper di pusat data, dalam urutan yang sama, untuk semua node ZooKeeper di pusat data.
  • Cassandra
    Semua pusat data harus memiliki jumlah node Cassandra yang sama.

    Untuk CASS_HOSTS bagi setiap pusat data, pastikan Anda menentukan semua alamat IP Cassandra (bukan nama DNS) untuk kedua pusat data. 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. Cantumkan node Cassandra dalam urutan yang sama untuk semua node Cassandra di pusat data.

    Semua node Cassandra harus memiliki akhiran ':<d>,<r>', misalnya '<ip>:1,1 = pusat data 1 dan rak/zona ketersediaan 1 dan '<ip>:2,1 = pusat data 2 dan zona rak/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.12:

    Dalam model deployment ini, penyiapan Cassandra akan terlihat seperti ini:


  • Postgres
    Secara default, Edge menginstal semua node Postgres dalam mode master. Namun, jika Anda memiliki beberapa pusat data, konfigurasi node Postgres untuk menggunakan replikasi master-standby sehingga jika node master gagal, node standby tersebut dapat melanjutkan traffic server. Biasanya, Anda mengonfigurasi server Postgres master di satu pusat data, dan server standby di pusat data kedua.

    Jika pusat data yang ada sudah dikonfigurasi untuk memiliki dua node Postgres yang berjalan dalam mode master/standby, maka sebagai bagian dari prosedur ini, batalkan pendaftaran node standby yang ada dan ganti dengan node standby di pusat data yang baru.

    Tabel berikut menampilkan konfigurasi Postgres sebelum dan sesudah untuk kedua skenario:

    Sebelum

    Setelah

    Node Master Postgres tunggal di dc-1

    Node Postgres Master di dc-1

    Node Postgres standby di dc-2

    Node Postgres Master di dc-1

    Node Postgres standby di dc-1

    Node Postgres Master di dc-1

    Node Postgres standby di dc-2

    Membatalkan pendaftaran node Postgres Standby lama di dc-1

  • Persyaratan port
    Anda harus memastikan bahwa port yang diperlukan terbuka di antara node di kedua pusat data. Untuk diagram port, lihat Persyaratan Penginstalan.

Memperbarui pusat data yang ada

Untuk menambahkan pusat data, Anda harus melakukan langkah-langkah untuk menginstal dan mengonfigurasi node pusat data baru, tetapi Anda juga harus mengupdate node di pusat data asli. Modifikasi ini diperlukan karena Anda menambahkan node Cassandra dan ZooKeeper baru di pusat data baru 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, yang masing-masing pusat data memiliki 6 node seperti yang ditunjukkan dalam Topologi Penginstalan. Perhatikan bahwa file konfigurasi untuk dc-1 menambahkan setelan tambahan ke:

  • Mengonfigurasi 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
  1. Pada dc-1, jalankan kembali setup.sh pada node Cassandra asli dengan file confiig dc-1 baru yang menyertakan node Cassandra dari dc-2:
    /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile1
  2. Pada dc-1, jalankan kembali setup.sh pada node Management Server:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile1
  3. Di dc-2, instal apigee-setup di semua node. Lihat Menginstal utilitas apigee-setup Edge untuk info selengkapnya.
  4. Pada dc-2, instal Cassandra dan ZooKeeper pada node yang sesuai:
    /opt/apigee/apigee-setup/bin/setup.sh -p ds -f configFile2
  5. Pada dc-2, jalankan perintah rebuild pada semua node Cassandra, dengan menentukan nama region dc-1:
    > /opt/apigee/apigee-cassandra/bin/nodetool -h cassIP rebuild dc-1
  6. Pada dc-2, instal Server Pengelolaan pada node yang sesuai:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f configFile2
  7. Pada node Management Server di dc-2, instal apigee-provider, yang menginstal utilitas apigee-adminapi.sh:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-provide install
  8. Pada dc-2, instal Rute dan Prosesor Pesan pada node yang sesuai:
    > /opt/apigee/apigee-setup/bin/setup.sh -p rmp -f configFile2
  9. Pada dc-2, instal Qpid pada node yang sesuai:
    > /opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile2
  10. Pada dc-2, instal Postgres pada node yang sesuai:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ps -f configFile2
  11. Menyiapkan master/standby Postgres untuk node Postgres. Node Postgres di dc-1 adalah master, dan node Postgres di dc-2 adalah server standby.

    Catatan: Jika dc-1 sudah dikonfigurasi untuk memiliki dua node Postgres yang berjalan dalam mode master/standby, maka sebagai bagian dari prosedur ini, gunakan node master Postgres 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.
    1. Pada node master di dc-1, edit file konfigurasi untuk menetapkan:
      PG_MASTER=IPorDNSofDC1Master
      PG_STANDBY=IPorDNSofDC2Standby
    2. Aktifkan replikasi pada master baru:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
    3. Pada node standby di dc-2, edit file konfigurasi untuk menetapkan:
      PG_MASTER=IPorDNSofDC1Master
      PG_STANDBY=IPorDNSofDC2Standby
    4. 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:
    5. Konfigurasi node standby di dc-2:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
  12. Di dc-1, perbarui konfigurasi analisis dan konfigurasikan organisasi.
    1. Pada node Management Server dc-1, dapatkan UUID node Postgres:
      > daftar server apigee-adminapi.sh -r dc-1 -p analytics -t postgres-server --admin adminEmail --pwd adminPword --host localhost

      UUID akan muncul di akhir data yang ditampilkan. Simpan nilai tersebut.

      Catatan: Jika dc-1 dikonfigurasi agar memiliki dua node Postgres yang berjalan dalam mode master/standby, Anda akan melihat dua alamat IP dan UUID di output. Simpan kedua UUID. Dari IP, Anda seharusnya dapat menentukan UUID mana untuk master dan mana yang untuk node standby.
    2. Pada node Management Server dc-2, dapatkan UUID node Postgres seperti yang ditunjukkan pada langkah sebelumnya. Simpan nilai tersebut.
    3. Pada node Server Pengelolaan dc-1, tentukan nama analisis dan grup konsumen. Banyak perintah di bawah ini memerlukan informasi tersebut.
      Secara default, nama grup analisis adalah axgroup-001, dan nama grup konsumen adalah Consumer-group-001. Dalam file konfigurasi senyap untuk wilayah, Anda dapat menetapkan nama grup analisis menggunakan properti AXGROUP.

      Jika Anda tidak yakin dengan nama grup analisis dan konsumen, gunakan perintah berikut untuk menampilkannya:
      > apigee-adminapi.sh analytics groups list --admin adminEmail --pwd adminPword --host localhost

      Perintah ini menampilkan nama grup analisis di kolom nama, dan nama grup konsumen di kolom Consumer-groups.
    4. Pada node Management Server dc-1, hapus server Postgres yang ada dari grup analisis:
      1. Hapus node Postgres dari Consumer-group:
        > apigee-adminapi.sh analytics groups Consumer_groups datastores remove -g axgroup-001 -c konsumen-group-001 -u UUID -Y --admin adminEmail --pwd adminPword --host localhost

        Jika dc-word adminghost dikonfigurasi
      2. Hapus node Postgres dari grup analisis:
        > apigee-adminapi.sh analytics groups postgres_server remove -g axgroup-001 -u UUID -Y --admin adminEmail --pwd adminPword --host localhost

        Jika dc-1 dikonfigurasi agar memiliki dua node Postghost yang berjalan di master/stand
    5. Pada node Management Server dc-1, tambahkan server master/standby baru Postgres ke grup analisis:
      1. Tambahkan kedua server Postgres ke grup analisis:
        > apigee-adminapi.sh grup analytics postgres_server add -g axgroup-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost

        dengan UUID-dcgres berkaitan dengan node Postgres pada UUID-dc2
      2. Tambahkan server PG ke grup konsumen sebagai master/standby:
        > apigee-adminapi.sh analytics groups Consumer_groups datastores add -g axgroup-001 -c konsumen-group-001 -u "UUID_1,UUID_2" --admin adminEmail --pwd adminPword --host localhost
    6. Tambahkan server Qpid dari dc-2 ke grup analisis:
      1. Pada node Server Pengelolaan dc-1, dapatkan UUID node Qpid di dc-2:
        > daftar server apigee-adminapi.sh -r dc-2 -p central -t qpid-server --admin adminEmail --pwd adminPword --host localhosts

        Akhir UUID yang ditampilkan di UUID yang ditampilkan. Simpan nilai-nilai itu.
      2. Di node Server Pengelolaan dc-1, tambahkan node Qpid ke grup analytics (jalankan kedua perintah):
        >apigee-adminapi.sh analytics groups qpid_server add -g axgroup-001 -u "UUID_1 --admin adminEmail --pwd adminPwordehost --host adminserver worde groups
        .
      3. Pada node Server Pengelolaan dc-1, tambahkan node Qpid ke grup konsumen (jalankan kedua perintah):
        > apigee-adminapi.sh analytics groups Consumer_groups konsumen menambahkan -g axgroup-001 -c konsumen-group-001 -u "UUID_1" --admin adminhostEmail --pwd adminPword admin

    7. Membatalkan pendaftaran dan menghapus server standby Postgres lama dari dc-1:
      1. Batalkan pendaftaran server standby Postgres dc-1 yang ada:
        > server apigee-adminapi.sh deregister -u UUID -r dc-1 -p analytics -t postgres-server -Y --admin adminEmail --pwd adminPword --host localhost

        di mana UUID adalah node standby yang lama Postgres.
      2. Hapus server standby Postgres dc-1 yang ada:
        Catatan: Perintah ini tidak meng-uninstal node server Postgres. Tindakan ini hanya menghapusnya dari daftar node Edge. Anda dapat meng-uninstal Postgres dari node nanti, jika perlu.
        > penghapusan server apigee-adminapi.sh -u UUID --admin adminEmail --pwd adminPword --host localhost
  13. Mengupdate keyspace Cassandra dengan faktor replikasi yang benar untuk kedua pusat data. Anda hanya perlu menjalankan langkah ini satu kali pada server Cassandra mana pun di salah satu pusat data:

    Catatan: Semua perintah di bawah menetapkan faktor replikasi ke "3", yang menunjukkan tiga node Cassandra dalam cluster. Ubah nilai ini seperlunya untuk penginstalan Anda.
    1. Mulai utilitas Cassandra cqlsh:
      > /opt/apigee/apigee-cassandra/bin/cqlsh cassandraIP
    2. Jalankan perintah CQL berikut pada permintaan "cqlsh>" guna menetapkan tingkat replikasi untuk keyspace Cassandra:
      1. cqlsh> ALTER KEYSPACE "identityzone" WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
      2. cqlsh> ALTER KEYSPACE "system_traces" WITH replication = { 'class': 'NetworkTopologyStrategy', 'dc-1': '3','dc-2': '3' };
      3. Lihat keyspace menggunakan perintah:
        cqlsh> select * from system.schema_keyspaces;
      4. Keluar cqlsh:
        cqlsh> exit
  14. Jalankan perintah nodetool berikut pada semua node Cassandra di dc-1 untuk mengosongkan memori:
    > /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP cleanup
  15. Untuk setiap organisasi dan untuk setiap lingkungan yang ingin Anda dukung di seluruh pusat data:
    1. Pada node Server Pengelolaan dc-1, tambahkan MP_POD baru ke Organisasi:
      > pod apigee-adminapi.sh orgs add -o orgName -r dc-2 -p gateway-2 --admin adminEmail --pwd adminPword --host localhost

      dengan gateway-DC_ID file konfigurasi di pod2 localhost

    2. Tambahkan Pemroses Pesan baru ke organisasi dan lingkungan:
      1. Pada node Server Pengelolaan dc-2, dapatkan UUID node Message Processor di dc-2:
        > daftar server apigee-adminapi.sh -r dc-2 -p gateway-2 -t message-processor --admin adminEmail --pwd adminPword --host localhosts yang muncul di akhir data UUID yang ditampilkan.

        Simpan nilai-nilai itu.
      2. Pada node Server Pengelolaan dc-1, untuk setiap Pemroses Pesan di dc-2, tambahkan Pemroses Pesan ke lingkungan untuk organisasi:
        > apigee-adminapi.sh orgs envs server add -o orgName -e envName -u UUID --admin hostEmail --pwd adminPword --pwd adminPword
    3. Di node Server Pengelolaan dc-1, periksa organisasi:
      > apigee-adminapi.sh orgs apis deployment -o orgName -a apiProxyName --admin adminEmail --pwd adminPword --host localhost

      dengan apiProxyName adalah nama proxy API yang di-deploy di organisasi.