API BaaS için Çoklu Veri Merkezi Yüklemesi

Edge for Private Cloud s. 4.17.09

API BaaS'yi etkin/etkin bir yapılandırma kullanarak birden çok veri merkezine yapılandırma. Bu belgede, mevcut BaaS verilerine BaaS veri merkezinin nasıl ekleneceği açıklanmaktadır. yardım etmek istiyorum.

Bir veri merkezi, Cassandra kümesi, Edge ile paylaşılıyor

Tüm veri merkezlerinin sayısı aynı Cassandra düğümüne sahip olmalıdır. API BaaS yüklemesi, kendi Cassandra kümesini kullanabilir ya da bir Cassandra kümesini Edge ile paylaşabilir.

BaaS yüklemesi Edge ile bir Cassandra kümesi paylaşıyorsa Search Server'ı orijinal veri merkezindeki Cassandra düğümlerini tanıyacak şekilde yapılandırmak için veri merkezimiz bulunuyor.

Mevcut veri merkezini güncelleme

Yeni bir BaaS veri merkezi (veri merkezi 2) eklemek için kurulum ve Ancak yeni veri merkezini yapılandırmanız gerekir, ancak orijinal BaaS veri merkezini güncellemeniz de gerekir (veri merkezi 1) . Bu değişiklikler şu nedenlerle gereklidir:

  • Yeni veri merkezine, kullanabilirsiniz.
  • Verilerde BaaS Yığını düğümlerinin kullandığı çoğaltma bilgilerini yapılandırmanız gerekir merkez 1'i kullanarak veri merkezindeki bilgileri dahil ediyor 2. Bu yapılandırmayı şu tarihe kadar gerçekleştiremezsiniz: Veri merkezi 2 yüklü olmalıdır.

Bu güncellemeleri Veri Merkezi 1'de gerçekleştirmek için, veri merkezi 1'de veri merkezi 1'i kurma ve ardından Cassandra veri düğümlerinde Apigee-setup komutunu yeniden çalıştırma merkez 1. Veri merkezi 1'in Cassandra kümesi bir Edge kurulumuyla paylaşılıyorsa Yönetim Sunucusu'nu da güncellemeniz gerekir.

Yapılandırma dosyalarını oluşturma

Veri merkezi 1'i yüklemek için API BaaS Yüklemesi başlıklı makalede gösterilen yapılandırmayı kullanın. Yapılandırma dosyasının veri merkezini kurarken 2. veri merkezi hakkında da bilgi ekleyin 1. Veri merkezini ek bilgilerini yapılandırma dosyasına ekleyin. 2.

Aşağıda, veri merkezi 2'nin yapılandırma dosyaları gösterilmektedir. Bu yapılandırma dosyası, Kurulum Topolojileri bölümünde açıklandığı gibi, dc-2'yi 10 düğüme yükleyen kullanıcılar. Aşağıdaki şartları karşılıyorsanız bu dosyayı uygun şekilde değiştirin: 7 düğüme yükleniyor.

Veri merkezi 2'nin (dc-2) yapılandırma dosyasının, veri merkezi 1 hakkında bilgi içerdiğine dikkat edin (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>"

BaaS veri merkezi ekleme

  1. API BaaS'de açıklandığı şekilde ilk veri merkezini yükleyin Yükleme. Bu doküman, verileri yüklemek için kullandığınız yapılandırma dosyasını içerir merkez 1.
  2. Yukarıda açıklandığı gibi dc-2 için yapılandırma dosyasını oluşturun.
  3. Cassandra'yı mevcut bir Edge kurulumunun parçası olarak veya bağımsız olarak yükleyin kümesi:
    1. PC'de Edge Apigee-setup yardımcı programını ilk dc-2'nin Cassandra düğümü, 8. makine, internet bağlantısı veya internet dışı bir prosedür kullanıyor. Görüntüleyin Edge Apigee-setup uygulamasını yükleme fayda sağlayın.
    2. Cassandra'yı ilk düğüme yüklemek için komut isteminde kurulum komut dosyasını çalıştırın:
      &gt; /opt/Apigee/Apigee-setup/bin/setup.sh -p c -f configFile

      . “-p c” seçeneği Cassandra'nın yükleneceğini belirtir.
      .
      . Yapılandırma dosyası "Apigee" tarafından erişilebilir veya okunabilir olmalıdır belirtir.
    3. Önceki adımlarda, kalan Cassandra düğümleri (9 ve 10) için dc-2'ye gidin.
  4. dc-1'in Cassandra düğümlerinde, yapılandırma dosyasını düzenleyerek Cassandra'yı nasıl yüklediğinize bağlı olarak 2. veri merkezi:

    . # Önce dc-1 düğümlerini, sonra da dc-2'yi listeleyin.
    . Cassandra veri merkezi ve raf son eki dahil #
    CASS_HOSTS="$IP11:1,1 $IP12:1,1 $IP13:1,1 $IP8:2,1 $IP9:2,1 $IP10:2,1"
  5. dc-1'in ilk Cassandra düğümünde "setup.sh" komutunu çalıştıran yeni dc-1 yapılandırma dosyasını dc-2'deki Cassandra düğümlerini içerir:
    &gt; /opt/Apigee/Apigee-setup/bin/setup.sh -p c -f configFile
  6. dc-1'deki kalan Cassandra düğümleri için 6 ve 7. adımları tekrarlayın.
  7. Edge ile paylaşılan dc-1 için bir Cassandra kümesine bağlanıyorsanız dc-1'in Yönetim Sunucusu düğümünün yapılandırma dosyasına dc-2 Cassandra düğümlerini ekleyin ve setup.sh:
    &gt; /opt/Apigee/Apigee-setup/bin/setup.sh -p ms -f configFile
  8. Cassandra anahtar alanlarını iki veri merkezi için doğru çoğaltma faktörüyle güncelleyin. Siz Bu adımı iki veri merkezindeki herhangi bir Cassandra sunucusunda yalnızca bir kez çalıştırmanız yeterlidir:

    . Not: Aşağıdaki komutların tümü, çoğaltma faktörünü "3" olarak ayarlar ve üç Cassandra düğümü bulunuyor. Bu değeri yüklemeniz için gereken şekilde değiştirin.
    1. Cassandra cqlsh yardımcı programını başlatın:
      &gt; /opt/Apigee/Apigee-cassandra/bin/cqlsh cassandraIP
    2. "cqlsh>" bölümünde aşağıdaki CQL komutlarını yürütün çoğaltmayı ayarlama istemi seviyeler:
      1. cqlsh&gt; DEĞİŞTİR KEYSPACE "Apigee_Baas_dc_1" Çoğaltma İLE = { 'class': 'NetworkTopologyStrateji', "dc-1": "3", "dc-2": "3" };
      2. cqlsh&gt; DEĞİŞTİR KEYSPACE "Apigee_Baas" Çoğaltma İLE = { 'class': 'NetworkTopologyStrateji', 'dc-1': "3", "dc-2": "3" };
      3. cqlsh&gt; DEĞİŞTİR KEYSPACE "Apigee_Baas_Kilitleri" Çoğaltma İLE = { 'class': 'NetworkTopologyStrateji', "dc-1": "3", "dc-2": "3" };
      4. cqlsh&gt; TUŞ ALANI DEĞİŞTİR "sistem_izleri" Çoğaltma İLE = { 'class': 'NetworkTopologyStrateji', 'dc-1': "3", "dc-2": "3" };
      5. cqlsh&gt; DEĞİŞTİR KEYSPACE "system_auth" Çoğaltma İLE = { 'class': 'NetworkTopologyStrateji', 'dc-1': "3", "dc-2": "3" };
      6. Şu komutu kullanarak tuş alanlarını görüntüleyin:
        cqlsh&gt; şunlar arasından * simgesini seç: system.schema_keyspaces;
      7. cqlsh'den çıkın:
        cqlsh&gt; çıkış
  9. dc-2'deki tüm Cassandra düğümlerinde şunun bölge adını belirterek yeniden oluştur komutunu çalıştırın: dc-1:
    &gt; /opt/Apigee/Apigee-cassandra/bin/nodetool -h cassandraIP yeniden oluşturma dc-1
  10. "nodetool status" komutunu çalıştırın her bir Cassandra düğümünde oturum açın ve tüm Cassandra düğümlerinin "Sahip" değeri için "%100":
    &gt; /opt/Apigee/Apigee-cassandra/bin/nodetool status
  11. BaaS'yi dc-2'ye yükleyin:
    1. Yapılandırma dosyasını yalnızca dc-2'deki Cassandra düğümlerini listeleyecek şekilde düzenleyin:
      # dc-2 Cassandra düğümlerini listeleyin,
      . # Cassandra veri merkezi ve raf son eki atlanıyor
      CASS_HOSTS="$IP8 $IP9 $IP10"
    2. ElasticSearch'ü dc-2'nin 4, 5 ve 6. düğümlerine yükleyin:
      &gt; /opt/Apigee/Apigee-setup/bin/setup.sh -p e -f configFile
    3. BaaS Yığınını dc-2'nin 4, 5 ve 6. düğümlerine yükleyin:
      &gt; /opt/Apigee/Apigee-setup/bin/setup.sh -p b -f configFile
    4. BaaS Portalı'nı makine 7'ye yükleyin:
      &gt; /opt/Apigee/Apigee-setup/bin/setup.sh -p p -f configFile
  12. Veri merkezi 1'deki BaaS Yığını düğümlerini güncelleyin:
    1. Veri merkezi 1'deki ilk BaaS Yığını düğümünde /opt/apigee/customer/application/usergrid.properties ifadesini düzenleyin. kullanabilirsiniz. Dosya yoksa, oluşturun.
    2. Şu özellikleri usergrid.properties dosyasına ekleyin:
      # BAAS_cluster_SEEDS ile aynı değere sahiptir dc-2 yapılandırma dosyasında,
      Çift tırnak işareti içermeyen #.
      . usergrid-deployment_usergrid.cluster.seeds=dc-1:dc1StackIP1,dc-1:dc1StackIP2,dc-2:dc2StackIP1,dc-2:dc2StackIP2

      . # dc-2 yapılandırma dosyasındaki BAAS_CASS_DC_LIST ile aynı değere sahiptir.
      . usergrid-deployment_usergrid.cluster.region.list=dc-1,dc-2
    3. Kalan BaaS Yığını düğümlerinde a ve b adımlarını tekrarlayın.
    4. Tüm BaaS Yığını düğümlerini yeniden başlatın.
      .
      . Not: BaaS Yığını düğümlerini yeniden başlatırken bunları aynı BAAS_CLUSTER_SEEDS olarak listelenecekleri şekilde sıralayın. Şu konumdaki BAAS_CLUSTER_SEEDS listeleri: Stack düğümlerinin çoğu bulunur. Bu iki düğümü sırayla yeniden başlattıktan sonra, kalan düğümleri sıralayabilirsiniz.
      .
      . &gt; /opt/Apigee/Apigee-service/bin/potansiyel-service baas-usergrid restart
  13. BaaS anahtar alanı değerlerini güncelleme. Bu tuş alanının yükleme sırasında çoğaltma için ayarlanması gerekir ancak çalışma zamanında olması gerekmez. Çoğaltmanın kaldırılması Cassandra'nın belleğinden de tasarruf sağlar.
    .
    . Bu adımı veri merkezlerindeki herhangi bir Cassandra sunucusunda yalnızca bir kez çalıştırmanız yeterlidir:
    1. Cassandra cqlsh yardımcı programını başlatın:
      &gt; /opt/Apigee/Apigee-cassandra/bin/cqlsh cassandraIP
    2. Cassandra'nın replika düzeylerini ayarlamak için aşağıdaki CQL komutlarını yürütün tuş boşlukları:
      1. cqlsh&gt; TUŞ ALANI DEĞİŞTİR &quot;Apigee_Baas_dc_1&quot; Çoğaltma ile = { 'class': 'NetworkTopologyStrateji', 'dc-1': '3' };
      2. cqlsh&gt; TUŞ ALANI DEĞİŞTİR &quot;Apigee_Baas_dc_2&quot; Çoğaltma İLE = { 'class': 'NetworkTopologyStrateji', 'dc-2': '3' };
      3. Şu komutu kullanarak tuş alanlarını görüntüleyin:
        cqlsh&gt; şunun arasından * seç: system.schema_keyspaces;
      4. cqlsh'den çıkın:
        cqlsh&gt; çıkış

İkinci veri merkezinin kurulumu tamamlanmıştır.

İki veri merkezinin kurulumunu ve yapılandırmasını tamamladıktan sonra aşağıdaki prosedürü kullanarak kurulumu doğrulayın:

  1. Tüm BaaS Yığını düğümlerinde durumu kontrol edin:
    &gt; curl 0:8080/status
  2. Jetonu kontrol etme API çağrısı çalışıyor:
    &gt; curl -X GÖNDERİ &quot;http://localhost:8080/management/token&quot; -d &#39;{&quot;grant_type&quot;:&quot;password&quot;, "username":"adminEmail","password":"pWord"}'
  3. dc-2 için BaaS Portalı'na giriş yapmayı deneyin. Tüm verilerin dc-2'de çoğaltıldığını, dc-1'de oluşturulan koleksiyonlar gibi.