Cài đặt API BaaS

Edge for Private Cloud phiên bản 4.17.09

Tổng quan về việc cài đặt

Sau khi cài đặt tiện ích Edge, tiện ích apigee-setup trên một nút, hãy sử dụng nút đó tiện ích để cài đặt một hoặc nhiều thành phần BaaS trên nút.

Tiện ích apigee-setup có biểu mẫu:

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

Truyền tệp cấu hình vào tiện ích apigee-setup chứa phần tử thông tin về việc cài đặt. Nếu tệp cấu hình thiếu bất kỳ thông tin bắt buộc nào thì apigee-setup tiện ích sẽ nhắc bạn nhập mã đó vào dòng lệnh.

Yêu cầu duy nhất là tệp cấu hình phải được "api" người dùng.

Ví dụ: sử dụng lệnh sau để cài đặt Ngăn xếp API BaaS:

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

Chỉ định các thành phần cần cài đặt

Tiện ích Apigee setup.sh hỗ trợ một số tuỳ chọn để cài đặt các thành phần API BaaS. Các hướng dẫn bên dưới sử dụng các tuỳ chọn độc lập (c, e, b và p) nhưng bạn có thể sử dụng các tuỳ chọn khác nhau dựa trên nút của mình cấu hình:

Lựa chọn

Nội dung mô tả

e

Chỉ cài đặt ElasticSearch.

b

Chỉ cài đặt API BaaS Stack. Thao tác này cũng cài đặt Tomcat.

p

Chỉ cài đặt API BaaS Portal. Cổng này cũng cài đặt bộ định tuyến Nginx để dùng làm web máy chủ.

c

Chỉ cài đặt Cassandra.

tháng 9

Cài đặt ElasticSearch, API BaaS Stack và Tomcat trên nút.

ebp

Cài đặt ElasticSearch, API BaaS Portal, API BaaS Stack và Tomcat, nhưng không cài đặt Cassandra. Cổng thông tin rất nhẹ, không cần thêm tài nguyên cho việc này.

châu á

Cài đặt tất cả thành phần API BaaS trên một nút (Cassandra, Elasticsearch, API BaaS Ngăn xếp, API BaaS Portal, Tomcat). Chỉ sử dụng tuỳ chọn này cho mục đích phát triển và kiểm thử, chứ không phải cho mục đích phát triển cho giai đoạn sản xuất.

Tạo tệp cấu hình

Tệp cấu hình chứa tất cả thông tin cần thiết để cài đặt API BaaS. Bạn có thể thường sử dụng cùng một tệp cấu hình để cài đặt tất cả các thành phần trong quá trình cài đặt BaaS.

Mỗi cấu trúc liên kết cài đặt được mô tả bên dưới cho thấy một tệp cấu hình mẫu cho cấu trúc liên kết đó. Cho thông tin tham khảo đầy đủ về tệp cấu hình, hãy xem Tài liệu tham khảo về tệp cấu hình BaaS.

Cài đặt API BaaS trên một nút

Dưới đây là tệp cấu hình để cài đặt API BaaS trên một nút. Chỉnh sửa tệp này thành cần thiết cho cấu hình của bạn. Để tham khảo đầy đủ về tệp cấu hình, hãy xem Tài liệu tham khảo về tệp cấu hình BaaS.

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

Cách cài đặt API BaaS trên nút riêng:

  1. Cài đặt tiện ích apigee-setup Edge trên nút bằng cách sử dụng internet hay không phải thủ tục internet. Xem Cài đặt tiện ích thiết lập apigee của Edge cho khác.
  2. Tại dấu nhắc lệnh, hãy chạy tập lệnh thiết lập:
    /opt/apigee/apigee-setup/bin/setup.sh -p asa -f configFile

    Ký tự "-p asa" lựa chọn chỉ định việc cài đặt tất cả thành phần API BaaS trên một nút duy nhất (Cassandra, Elasticsearch, API BaaS Stack, API BaaS Portal, Tomcat).

    Tệp cấu hình phải có thể truy cập hoặc có thể đọc được bởi "api" người dùng.

  3. Do bạn đã cài đặt ElasticSearch trên một nút độc lập, hãy điều chỉnh bộ nhớ mặc định để tăng bộ nhớ phân bổ cho ElasticSearch từ 4GB lên 6GB:
    1. Mở /opt/apigee/customer/application/elasticsearch.properties trong một người chỉnh sửa. Nếu tệp này không tồn tại, hãy tạo tệp.
    2. Đặt thuộc tính setenv_elasticsearch_max_mem_size đến 6g (mặc định là 4g):
      setenv_elasticsearch_max_mem_size=6g
    3. Lưu tệp.
    4. Chạy lệnh sau:
      /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
  4. Giới thiệu một tổ chức theo mô tả dưới đây trong phần Giới thiệu một tổ chức mới.

Cấu hình đã hoàn tất thành công quá trình thiết lập trên nút.

Cài đặt API BaaS trên 7 hoặc 10 nút

Quy trình cài đặt phiên bản 7 hoặc 10 nút của API BaaS rất giống nhau. Chỉ đó là:

  • Cài đặt 10 nút, bạn cài đặt 3 thành phần ElasticSearch và 3 API Các thành phần Ngăn xếp BaaS trên các nút riêng biệt, tổng cộng có 6 nút. Đây là cấu hình được đề xuất để có hiệu suất cao nhất vì ElasticSearch yêu cầu dung lượng lớn của ổ đĩa I/O và bộ nhớ.
  • Khi cài đặt 7 nút, bạn sẽ cài đặt 3 thành phần ElasticSearch và 3 API BaaS Xếp chồng các thành phần lên cùng nút, tổng cộng là ba nút nút.

Đối với cả phiên bản 7 và 10 nút của API BaaS, bạn đều phải kết nối với một cụm Cassandra. Nếu bạn đã cài đặt Edge, bạn có thể kết nối với cụm Cassandra của ứng dụng đó, tức là bạn không phải cài đặt Cassandra trong quá trình cài đặt API BaaS.

Dưới đây là ví dụ về tệp cấu hình im lặng để cài đặt API BaaS 10 nút. Nếu bạn đang cài đặt các thành phần Ngăn xếp ElasticSearch và API BaaS trên cùng 3 nút, chỉnh sửa tệp để:

  • IP1 và IP4 được đặt thành cùng một địa chỉ IP
  • IP2 và IP5 được đặt thành cùng một địa chỉ IP
  • IP3 và IP6 được đặt thành cùng một địa chỉ IP

Chỉnh sửa tệp này nếu cần cho cấu hình của bạn. Để có thông tin tham khảo đầy đủ về tệp cấu hình, hãy xem BaaS Phần tham chiếu đến tệp cấu hình.

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

Không bắt buộc – Cài đặt Cassandra: Máy 8, 9 và 10

Bạn có thể kết nối API BaaS với cùng một cụm Cassandra mà Edge sử dụng. Nếu bạn chưa đã cài đặt Edge, bạn có thể tuỳ ý cài đặt Cassandra để API BaaS sử dụng.

Cụm Cassandra có thể sử dụng phương thức xác thực hoặc bạn có thể tắt tính năng xác thực Cassandra. Xem Bật tính năng xác thực Cassandra cho khác.

  1. Cài đặt tiện ích apigee-setup Edge trên nút bằng cách sử dụng internet hoặc không phải là Internet. Xem bài viết Cài đặt tiện ích thiết lập apigee của Edge để khác.
  2. Tại dấu nhắc lệnh, hãy chạy tập lệnh thiết lập:
    /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile

    Ký tự "-p c" chọn cài đặt Cassandra.

    Tệp cấu hình phải có thể truy cập hoặc có thể đọc được bởi "api" người dùng.

Cấu hình hoàn tất thành công việc thiết lập kho dữ liệu trên nút.

Lưu ý rằng JMX được bật theo mặc định cho Cassandra. Quyền truy cập từ xa của JMX vào Cassandra không yêu cầu mật khẩu. Bạn có thể định cấu hình Cassandra để sử dụng tính năng xác thực cho JMX. Để biết thêm thông tin, hãy xem Cách giám sát.

Thiết lập công việc cron Cassandra

Nếu bạn phải cài đặt Cassandra, hãy thiết lập một công việc định kỳ sử dụng nodetool để xả để khoá chạy mỗi giờ trên mọi nút Cassandra.

Nếu bạn có nhiều nút Cassandra, hãy bù trừ công việc cron trên mỗi máy chủ trong 5 phút để tất cả các nút không được đẩy ra cùng một lúc.

Công việc cron phải thực thi lệnh sau:

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

trong đó IP_address là địa chỉ IP của nút Cassandra.

Cài đặt ElasticSearch: Máy 1, 2 và 3

Cách cài đặt ElasticSearch trên nút riêng:

  1. Cài đặt tiện ích thiết lập apigee của Edge trên nút bằng cách sử dụng Internet hoặc không có Internet quy trình. Xem phần Cài đặt thiết lập apigee của Edge tiện ích khác.
  2. Tại dấu nhắc lệnh, hãy chạy tập lệnh thiết lập:
    /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. Lưu tệp.
    4. Chạy lệnh sau:
      /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart

    Cấu hình đã hoàn tất thành công quá trình thiết lập trên nút.

    Cài đặt Ngăn xếp API BaaS: Máy 4, 5 và 6

    Cách cài đặt Ngăn xếp API BaaS trên nút riêng:

    1. Cài đặt tiện ích thiết lập apigee của Edge trên nút bằng cách sử dụng Internet hoặc không có Internet quy trình. Xem phần Cài đặt thiết lập apigee của Edge tiện ích khác.
    2. Tại dấu nhắc lệnh, hãy chạy tập lệnh thiết lập:
      /opt/apigee/apigee-setup/bin/setup.sh -p b -f configFile

      Ký tự "-p b" chỉ định để cài đặt Ngăn xếp API BaaS. Tệp cấu hình phải "api" có thể truy cập hoặc đọc được người dùng.

    Sau khi tìm nạp đúng thông tin đăng nhập của quản trị viên, trình cài đặt sẽ cài đặt Tomcat, tạo API Các không gian khoá BaaS và thiết lập Ngăn xếp API BaaS trên máy chủ. SMTP cũng được định cấu hình để cho phép giao diện người dùng để gửi email xác nhận mật khẩu.

    Cài đặt API BaaS Portal: Máy 7

    Cách cài đặt Cổng API BaaS:

    1. Cài đặt tiện ích thiết lập apigee của Edge trên nút bằng cách sử dụng Internet hoặc không có Internet quy trình. Xem phần Cài đặt thiết lập apigee của Edge tiện ích khác.
    2. Tại dấu nhắc lệnh, hãy chạy tập lệnh thiết lập:
      /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile

      Ký tự "-p p" chỉ định việc cài đặt API BaaS Portal. Tệp cấu hình phải "api" có thể truy cập hoặc đọc được người dùng.

      Trình cài đặt khởi động máy chủ web Nginx, sau đó hoàn tất Cổng API BaaS .

    3. Bước tiếp theo sẽ tuỳ thuộc vào lượt cài đặt của bạn.
      1. Nếu bạn có trình cân bằng tải ở trước các nút Portalor Stack, phần tiếp theo mô tả cách định cấu hình API BaaS cho trình cân bằng tải.
      2. Nếu bạn không có trình cân bằng tải trước các nút Portalor Stack, hãy bật một tổ chức như mô tả dưới đây trong phần Giới thiệu một tổ chức mới.

    Ghi lại URL Cổng thông tin API BaaS. Đây là URL bạn nhập vào trình duyệt để truy cập vào Giao diện người dùng của API BaaS Portal.

    Định cấu hình Các nút API BaaS cho Trình cân bằng tải của Ngăn xếp hoặc Cổng thông tin

    Nếu bạn đưa trình cân bằng tải vào trước nút Ngăn xếp hoặc Cổng thông tin, bạn phải định cấu hình các nút có URL chính xác của trình cân bằng tải. Ví dụ: các nút Ngăn xếp yêu cầu điều này thông tin khi:

    • Đưa một URL vào các phản hồi trong các yêu cầu API BaaS.
    • Thêm liên kết trong mẫu email khi đặt lại mật khẩu hoặc gửi mật khẩu khác thông báo.
    • Chuyển hướng người dùng đến các trang Cổng thông tin cụ thể.

    Nếu bạn sử dụng trình cân bằng tải trước các nút Ngăn xếp, hãy đặt thuộc tính sau trong /opt/apigee/customer/application/usergrid.properties:

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

    Thay thế http://localhost:8080 bằng URL của lượt tải trình cân bằng. Nếu trình cân bằng tải được định cấu hình để dùng TLS, hãy dùng giao thức HTTPS. Chỉ bạn cần bao gồm cổng nếu bạn đang sử dụng cổng không theo chuẩn, nghĩa là cổng nào đó không phải là cổng 80 cho HTTP và cổng 443 cho HTTPS.

    Bạn cũng phải thiết lập thuộc tính sau trong /opt/apigee/customer/application/portal.properties nếu bạn sử dụng trình cân bằng tải trước các nút Ngăn xếp:

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

    Thay thế http://localhost:8080 bằng URL của trình cân bằng tải cho Ngăn xếp.

    Nếu bạn sử dụng trình cân bằng tải ở phía trước nút Portal, hãy đặt các thuộc tính sau trong usergrid.properties:

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

    Thay thế http://localhost:9000 bằng URL của trình cân bằng tải. Nếu trình cân bằng tải được định cấu hình để dùng TLS, hãy dùng giao thức HTTPS. Bạn chỉ cần thêm cổng nếu bạn đang sử dụng cổng không theo chuẩn, nghĩa là cổng nào đó không phải là cổng 80 cho HTTP và cổng 443 cho HTTPS.

    Sau khi chỉnh sửa usergrid.propertiesportal.properties:

    1. Định cấu hình nút Ngăn xếp:
      /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure
    2. Khởi động lại ngăn xếp BaaS:
      /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
    3. Nếu bạn đã sửa đổi portal.properties, hãy định cấu hình nút Cổng thông tin:
      /opt/apigee/apigee-service/bin/apigee-service baas-portal configure
    4. Khởi động lại Cổng thông tin BaaS:
      /opt/apigee/apigee-service/bin/apigee-service baas-portal restart

    Giới thiệu tổ chức mới

    Giới thiệu là quá trình tạo một quản trị viên tổ chức và tổ chức. Sau tạo quản trị viên tổ chức và tổ chức, bạn có thể đăng nhập vào Cổng API BaaS Giao diện người dùng và gửi yêu cầu đến API BaaS REST.

    Khi bạn tạo một tổ chức, địa chỉ email của quản trị viên tổ chức:

    • Phải khác với địa chỉ email của quản trị viên hệ thống.
    • Phải là duy nhất trong tất cả các tổ chức khác. Điều đó có nghĩa là bạn không thể tạo hai tổ chức bằng cùng một địa chỉ email cho quản trị viên tổ chức. Tuy nhiên, sau khi tạo tổ chức của bạn, bạn có thể thêm quản trị viên bổ sung có thể bị trùng lặp trên nhiều quản trị viên tổ chức.

    Để thực hiện quy trình tham gia, hãy sử dụng tập lệnh Python create_org_and_user.py. Việc gọi tập lệnh này mà không có đối số dòng lệnh sẽ khiến tập lệnh nhắc bạn của bạn:

    python create_org_and_user.py

    Ngoài ra, bạn có thể chuyển bất kỳ hoặc tất cả tuỳ chọn dưới dạng đối số dòng lệnh. Bạn được nhắc nhập mọi thông tin mà bạn bỏ qua khỏi dòng lệnh:

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

    Cách tạo tổ chức:

    1. Thay đổi thư mục thành /opt/apigee/baas-usergrid/bin.
    2. Gọi tập lệnh Python create_org_and_user.py.

      Bạn được nhắc nhập tên người dùng và mật khẩu của quản trị viên hệ thống BaaS để chỉ hệ thống quản trị viên có thể chạy tệp đó.

    3. Đăng nhập vào Cổng API BaaS trong trình duyệt web bằng URL bạn đã ghi chú ở cuối Cài đặt URL Cổng thông tin API BaaS. Để truy cập vào cổng thông tin, hãy nhập URL của API BaaS Portal vào biểu mẫu:
      http://portalExternalIP:9000/
    4. Khi màn hình đăng nhập cổng thông tin xuất hiện, bạn có thể:
      • Đăng nhập bằng tên người dùng và mật khẩu của quản trị viên tổ chức.
      • Đăng nhập bằng tên người dùng và mật khẩu của quản trị viên hệ thống.

    Truy cập vào API BaaS REST

    Để truy cập vào API BaaS REST của API, hãy dùng một URL có dạng:

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

    Trong môi trường phát triển, bạn có thể cài đặt tất cả các thành phần API BaaS trên một nút duy nhất, tức là bạn có một Ngăn xếp API BaaS. Hoặc, bạn có thể có một môi trường nhỏ với một Nút API BaaS Stack và không có trình cân bằng tải. Trong các loại môi trường này, bạn có thể thực hiện lệnh gọi API trực tiếp đến nút Ngăn xếp API BaaS:

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

    Để biết thêm thông tin về cách bắt đầu sử dụng API BaaS Portal, hãy xem tài liệu về Apigee tại: http://apigee.com/docs/content/build-apps-home.