API BaaS Yükleme

Edge for Private Cloud v. 4.17.09

Yüklemeye genel bakış

Bir düğüme Edge apigee-setup yardımcı programını yükledikten sonra bu yardımcı programı kullanarak düğüme bir veya daha fazla BaaS bileşeni yükleyin.

apigee-setup yardımcı programı şu biçimdedir:

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

apigee-setup yardımcı programına, yüklemeyle ilgili bilgileri içeren bir yapılandırma dosyası iletin. Yapılandırma dosyasında gerekli bilgiler eksikse apigee-setup yardımcı programı, bu dosyayı komut satırına girmenizi ister.

Tek şart, yapılandırma dosyasının "Apigee" kullanıcısı tarafından erişilebilir ve okunabilmesidir.

Örneğin, API BaaS Grubunu yüklemek için aşağıdaki komutu kullanın:

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

Yüklenecek bileşenleri belirtme

Apigee setup.sh yardımcı programı, API BaaS bileşenlerini yüklemek için çeşitli seçenekleri destekler. Aşağıdaki talimatlarda bağımsız seçenekler (c, e, b ve p) kullanılmaktadır ancak düğüm yapılandırmanıza bağlı olarak farklı seçenekler de kullanabilirsiniz:

Seçenek

Açıklama

e

Yalnızca Elastik Arama'yı yükleyin.

b

Yalnızca API BaaS Stack'i yükleyin (bu şekilde Tomcat'i de yükler).

p

Yalnızca API BaaS Portalı'nı yükleyin. Bu işlem ayrıca web sunucusu olarak kullanılacak Nginx yönlendiricisini de yükler.

c

Yalnızca Cassandra'yı yükleyin.

eb

Düğüme ElasticSearch, API BaaS Stack ve Tomcat'i yükleyin.

ebp

ElasticSearch, API BaaS Portalı, API BaaS Stack ve Tomcat'i yükleyin, ancak Cassandra'yı yüklemeyin. Portal o kadar hafiftir ki bunun için ek kaynak gerekmez.

Asa

Tüm API BaaS bileşenlerini tek bir düğüme yükleyin (Cassandra, Elastiksearch, API BaaS Yığını, API BaaS Portalı, Tomcat). Bu seçeneği üretim için değil, yalnızca geliştirme ve test için kullanın.

Yapılandırma dosyası oluşturma

Yapılandırma dosyası, API BaaS'yi yüklemek için gerekli tüm bilgileri içerir. Bir BaaS kurulumundaki tüm bileşenleri yüklemek için genellikle aynı yapılandırma dosyasını kullanabilirsiniz.

Aşağıda açıklanan her yükleme topolojisi, söz konusu topoloji için örnek bir yapılandırma dosyasını gösterir. Yapılandırma dosyasıyla ilgili eksiksiz bir referans için BaaS Yapılandırma Dosyası Referansı'na bakın.

Tek bir düğüme API BaaS yükleme

Aşağıda, API BaaS'ı tek bir düğüme yüklemek için kullanılacak yapılandırma dosyası gösterilmektedir. Bu dosyayı yapılandırmanız için gereken şekilde düzenleyin. Yapılandırma dosyasıyla ilgili tam referans için BaaS Yapılandırma Dosyası Referansı sayfasına bakın.

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>"

API BaaS'ı kendi düğümüne yüklemek için:

  1. İnternet veya internet dışı prosedürü kullanarak Edge apigee-setup yardımcı programını düğüme yükleyin. Daha fazla bilgi için Edge Apigee-setup yardımcı programını yükleme bölümüne bakın.
  2. Komut isteminde kurulum komut dosyasını çalıştırın:
    /opt/apigee/apigee-setup/bin/setup.sh -p asa -f configFile

    "-p asa" seçeneği, tüm API BaaS bileşenlerinin tek bir düğüme (Cassandra, Elastiksearch, API BaaS Yığını, API BaaS Portal, Tomcat) yüklenmesini belirtir.

    Yapılandırma dosyası, "Apigee" kullanıcısı tarafından erişilebilir ve okunabilir olmalıdır.

  3. Elastik Search'ü bağımsız bir düğüme yüklediğiniz için varsayılan bellek seçeneğini, ElastikSearch için ayrılan belleği 4 GB'tan 6 GB'a yükseltecek şekilde ayarlayın:
    1. /opt/apigee/customer/application/elasticsearch.properties dosyasını bir düzenleyicide açın. Bu dosya yoksa oluşturun.
    2. setenv_elasticsearch_max_mem_size özelliğini 6 g (varsayılan 4 g) olarak ayarlayın:
      setenv_elasticsearch_max_mem_size=6g
    3. Dosyayı kaydedin.
    4. Aşağıdaki komutu çalıştırın:
      /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
  4. Kuruluşun katılımını, aşağıdaki Yeni bir kuruluşun ilk katılım bölümünde açıklandığı şekilde yapabilirsiniz.

Yapılandırma, düğümdeki kurulumu başarıyla tamamladı.

7 veya 10 düğüm üzerinde API BaaS yükleme

API BaaS'nin 7 veya 10 düğümlü sürümünü yükleme prosedürü çok benzerdir. Tek fark, aşağıdaki gibidir:

  • 10 düğüm kurulumunda, toplam altı düğüm olacak şekilde üç Elastik Arama bileşenini ve üç API BaaS Stack bileşenini ayrı düğümlere yüklersiniz. Elastik Arama yüksek miktarda disk G/Ç ve bellek gerektirdiğinden bu, en yüksek performans için önerilen yapılandırmadır.
  • 7 düğüm kurulumunda, toplam üç düğüm olacak şekilde üç Elastik Search bileşenini ve üç API BaaS Stack bileşenini aynı düğümlere yüklersiniz.

API BaaS'ın hem 7 hem de 10 düğümlü sürümleri için bir Cassandra kümesine bağlanmanız gerekir. Edge'i zaten yüklediyseniz Cassandra kümesine bağlanabilirsiniz. Diğer bir deyişle, API BaaS'yi yükleme kapsamında Cassandra'yı yüklemeniz gerekmez.

Aşağıda 10 düğümlü API BaaS yüklemesi için örnek bir sessiz yapılandırma dosyası gösterilmektedir. Elastik Search ve API BaaS Yığın bileşenlerini aynı üç düğüme yüklüyorsanız dosyayı aşağıdaki şekilde düzenleyin:

  • IP1 ve IP4 aynı IP adresine ayarlanmış
  • IP2 ile IP5 aynı IP adresine ayarlanmış
  • IP3 ve IP6 aynı IP adresine ayarlanmış

Bu dosyayı yapılandırmanız için gereken şekilde düzenleyin. Yapılandırma dosyasıyla ilgili tam referans için BaaS Yapılandırma Dosyası Referansı'na bakın.

# 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>"

İsteğe bağlı - Cassandra'yı yükleme: Makine 8, 9 ve 10

API BaaS'ı, Edge tarafından kullanılan Cassandra kümesine bağlayabilirsiniz. Edge'i yüklemediyseniz isteğe bağlı olarak Cassandra'yı API BaaS tarafından kullanılması için yükleyebilirsiniz.

Cassandra kümesi kimlik doğrulama kullanabilir veya Cassandra kimlik doğrulaması devre dışı bırakılabilir. Daha fazla bilgi için Cassandra kimlik doğrulamasını etkinleştirme bölümüne bakın.

  1. İnternet veya internet dışı prosedürü kullanarak Edge apigee-setup yardımcı programını düğüme yükleyin. Daha fazla bilgi için Edge Apigee-setup yardımcı programını yükleme bölümüne bakın.
  2. Komut isteminde kurulum komut dosyasını çalıştırın:
    /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile

    "-p c" seçeneği, Cassandra'nın yüklenmesini belirtir.

    Yapılandırma dosyası, "Apigee" kullanıcısı tarafından erişilebilir ve okunabilir olmalıdır.

Yapılandırma, düğümdeki veri deposu kurulumunu başarıyla tamamlar.

JMX'in, Cassandra için varsayılan olarak etkin olduğunu unutmayın. Cassandra'ya JMX uzaktan erişimi şifre gerektirmez. Cassandra'yı, JMX için kimlik doğrulaması kullanacak şekilde yapılandırabilirsiniz. Daha fazla bilgi için Nasıl İzlenir? sayfasını inceleyin.

Cassandra cron işi ayarla

Cassandra'yı yüklemeniz gerekiyorsa kilitlerin her Cassandra düğümünde saatte bir çalışmasını sağlamak için nodetool kullanan bir cron işi oluşturun.

Birden fazla Cassandra düğümünüz varsa tüm düğümlerin aynı anda boşaltılmaması için her sunucudaki cron işini beş dakika ayarlayın.

Cron işi aşağıdaki komutu yürütmelidir:

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

Burada IP_address, Cassandra düğümünün IP adresidir.

Elastik Search'ü yükleme: Makine 1, 2 ve 3

Elastik Search'ü kendi düğümüne yüklemek için:

  1. İnternet veya internet dışı prosedürü kullanarak düğüme Edge Apigee-setup yardımcı programını yükleyin. Daha fazla bilgi için Edge Apigee-setup yardımcı programını yükleme bölümüne bakın.
  2. Komut isteminde kurulum komut dosyasını çalıştırın:
    /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. Dosyayı kaydedin.
    4. Aşağıdaki komutu çalıştırın:
      /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart

    Yapılandırma, düğümdeki kurulumu başarıyla tamamladı.

    API BaaS Yığını yükleme: Makine 4, 5 ve 6

    API BaaS Yığınını kendi düğümüne yüklemek için:

    1. İnternet veya internet dışı prosedürü kullanarak düğüme Edge Apigee-setup yardımcı programını yükleyin. Daha fazla bilgi için Edge Apigee-setup yardımcı programını yükleme bölümüne bakın.
    2. Komut isteminde kurulum komut dosyasını çalıştırın:
      /opt/apigee/apigee-setup/bin/setup.sh -p b -f configFile

      "-p b" seçeneği, API BaaS Yığınının yükleneceğini belirtir. Yapılandırma dosyası, "Apigee" kullanıcısı tarafından erişilebilir ve okunabilir olmalıdır.

    Yükleyici doğru yönetici kimlik bilgilerini aldıktan sonra Tomcat'i yükler, API BaaS anahtar alanları oluşturur ve sunucuda API BaaS Yığını'nı kurar. SMTP, kullanıcı arayüzünün şifre onay e-postaları göndermesine izin verecek şekilde de yapılandırılır.

    API BaaS Portalı'nı yükleme: Makine 7

    API BaaS Portalı'nı yüklemek için:

    1. İnternet veya internet dışı prosedürü kullanarak düğüme Edge Apigee-setup yardımcı programını yükleyin. Daha fazla bilgi için Edge Apigee-setup yardımcı programını yükleme bölümüne bakın.
    2. Komut isteminde kurulum komut dosyasını çalıştırın:
      /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile

      "-p p" seçeneği, API BaaS Portalı'nın yükleneceğini belirtir. Yapılandırma dosyası, "Apigee" kullanıcısı tarafından erişilebilir ve okunabilir olmalıdır.

      Yükleyici, Nginx web sunucusunu başlatır ve API BaaS Portalı yapılandırmasını tamamlar.

    3. Bir sonraki adımınız, kurulumunuza bağlıdır.
      1. Portalor Yığın düğümlerinin önünde bir yük dengeleyici varsa sonraki bölümde yük dengeleyiciler için API BaaS'nin nasıl yapılandırılacağı açıklanmaktadır.
      2. Portalor Yığın düğümlerinin önünde yük dengeleyici yoksa aşağıdaki Yeni bir kuruluş başlatma bölümünde açıklandığı şekilde bir kuruluşun katılımını sağlayın.

    API BaaS Portal URL'sini not edin. Bu, API BaaS Portal kullanıcı arayüzüne erişmek için bir tarayıcıya girdiğiniz URL'dir.

    Yığın veya Portal yük dengeleyici için API BaaS düğümlerini yapılandırma

    Yığın veya Portal düğümlerinin önüne bir yük dengeleyici eklerseniz düğümleri doğru yük dengeleyici URL'si ile yapılandırmanız gerekir. Örneğin, Yığın düğümleri aşağıdaki durumlarda bu bilgileri gerektirir:

    • BaaS API isteklerindeki yanıtlara URL ekleme.
    • Şifreyi sıfırlarken veya başka bildirimler gönderirken e-posta şablonlarına bağlantı ekleme.
    • Kullanıcıları belirli Portal sayfalarına yönlendirme.

    Yığın düğümlerinin önünde bir yük dengeleyici kullanıyorsanız /opt/apigee/customer/application/usergrid.properties içinde aşağıdaki özelliği ayarlayın:

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

    http://localhost:8080 yerine yük dengeleyicinin URL'sini yazın. Yük dengeleyici TLS kullanacak şekilde yapılandırıldıysa HTTPS protokolünü kullanın. Bağlantı noktasını yalnızca standart olmayan bir bağlantı noktası kullanıyorsanız (yani HTTP için 80 ve HTTPS için bağlantı noktası 443 dışında bir bağlantı noktası) eklemeniz gerekir.

    Yığın düğümlerinin önünde bir yük dengeleyici kullanıyorsanız /opt/apigee/customer/application/portal.properties içinde aşağıdaki özelliği de ayarlamanız gerekir:

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

    http://localhost:8080 yerine Yığın için yük dengeleyicinin URL'sini yazın.

    Portal düğümünün önünde bir yük dengeleyici kullanıyorsanız usergrid.properties içinde aşağıdaki özellikleri ayarlayın:

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

    http://localhost:9000 yerine yük dengeleyicinin URL'sini yazın. Yük dengeleyici TLS kullanacak şekilde yapılandırıldıysa HTTPS protokolünü kullanın. Bağlantı noktasını yalnızca standart olmayan bir bağlantı noktası kullanıyorsanız (HTTP için 80 ve HTTPS için bağlantı noktası 443 dışında bir bağlantı noktası) kullanmanız gerekir.

    usergrid.properties ve portal.properties düzenlemelerini yaptıktan sonra:

    1. Yığın düğümünü yapılandırın:
      /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    2. BaaS Yığınını yeniden başlatın:
      /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
    3. portal.properties öğesini değiştirdiyseniz Portal düğümünü yapılandırın:
      /opt/apigee/apigee-service/bin/apigee-service baas-portal configure
    4. BaaS Portalı'nı yeniden başlatın:
      /opt/apigee/apigee-service/bin/apigee-service baas-portal restart

    Yeni bir kuruluşa ilk katılım

    İlk katılım, kuruluş ve kuruluş yöneticisi oluşturma sürecidir. Kuruluşu ve kuruluş yöneticisini oluşturduktan sonra API BaaS Portalı kullanıcı arayüzüne giriş yapıp API BaaS REST API'ye istek gönderebilirsiniz.

    Bir kuruluş oluşturduğunuzda kuruluş yöneticisinin e-posta adresi:

    • Sistem yöneticisinin e-posta adresinden farklı olmalıdır.
    • Diğer tüm kuruluşlar arasında benzersiz olmalıdır. Yani, kuruluş yöneticisi için aynı e-posta adresine sahip iki kuruluş oluşturamazsınız. Ancak, kuruluşu oluşturduktan sonra birden fazla kuruluşta yinelenebilecek başka yöneticiler ekleyebilirsiniz.

    İlk katılımı gerçekleştirmek için create_org_and_user.py Python komut dosyasını kullanın. Bu komut dosyasını komut satırı bağımsız değişkeni olmadan çağırmak, sizden tüm bilgileri istemesine neden olur:

    python create_org_and_user.py

    Alternatif olarak, seçeneklerin herhangi birini veya tümünü komut satırı bağımsız değişkeni olarak aktarabilirsiniz. Komut satırından çıkarmadığınız tüm bilgiler istenir:

    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>'

    Kuruluş oluşturmak için:

    1. Dizini /opt/apigee/baas-usergrid/bin olarak değiştirin.
    2. create_org_and_user.py Python komut dosyasını çağırın.

      Yalnızca bir sistem yöneticisinin çalıştırabilmesi için BaaS sistem yöneticisi kullanıcı adı ve şifresini girmeniz istenir.

    3. API BaaS Portalı URL kurulumunun sonunda not ettiğiniz URL'yi kullanarak bir web tarayıcısında API BaaS Portalı'na giriş yapın. Portala erişmek için API BaaS Portalı URL'sini şu forma girin:
      http://portalExternalIP:9000/
    4. Portal giriş ekranı göründüğünde aşağıdakilerden birini yapabilirsiniz:
      • Kuruluş yöneticisinin kullanıcı adını ve şifresini kullanarak giriş yapın.
      • Sistem yöneticilerinin kullanıcı adını ve şifresini kullanarak giriş yapın.

    API BaaS REST API'ye erişme

    API BaaS REST API'ye erişmek için şu formdaki bir URL'yi kullanın:

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

    Geliştirme ortamında tüm API BaaS bileşenlerini tek bir düğüme yükleyebilirsiniz. Yani, tek bir API BaaS Yığını olur. Tek bir API BaaS Yığın düğümü ve yük dengeleyicisi olmayan küçük bir ortamınız da olabilir. Bu tür ortamlarda doğrudan API BaaS Yığın düğümüne API çağrıları yapabilirsiniz:

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

    API BaaS Portalı'nı kullanmaya başlama hakkında daha fazla bilgi için http://apigee.com/docs/content/build-apps-home adresindeki Apigee belgelerini inceleyin.