Edge for Private Cloud v. 4.17.01
Tổng quan về quá trình cài đặt
Sau khi bạn cài đặt Edge, tiện ích apigee-setup trên một nút, hãy sử dụng 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ó dạng:
> sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
Truyền tệp cấu hình đến tiện ích apigee-setup chứa thông tin về quá trình 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, tiện ích apigee-setup sẽ nhắc bạn nhập thông tin đó trên dòng lệnh.
Yêu cầu duy nhất là người dùng "api" phải truy cập hoặc đọc được tệp cấu hình.
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 setup.sh Apigee hỗ trợ một số lựa chọn để cài đặt các thành phần API BaaS. Hướng dẫn dưới đây 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 tuỳ theo cấu hình nút:
Tuỳ chọn |
Nội dung mô tả |
---|---|
e |
Chỉ cài đặt ElasticSearch. |
b |
Chỉ cài đặt API BaaS Stack, đồng thời cài đặt Tomcat. |
p |
Chỉ cài đặt Cổng API BaaS, đồng thời cài đặt bộ định tuyến Nginx để dùng làm máy chủ web. |
c |
Chỉ cài đặt Cassandra. |
eb |
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. |
asa |
Cài đặt tất cả thành phần API BaaS trên một nút (Cassandra, Elasticsearch, API BaaS Stack, API BaaS Portal, Tomcat). Chỉ sử dụng tuỳ chọn này cho hoạt động phát triển và kiểm thử, chứ không dành cho hoạt động phát hành chính thức. |
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 thường có thể 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 hình 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 hình đó. Để tham khảo đầy đủ về tệp cấu hình, hãy xem phần Tham khảo 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 nếu 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
Cách cài đặt API BaaS trên nút riêng:
- Cài đặt tiện ích apigee-setup của Edge trên nút bằng cách sử dụng quy trình Internet hoặc không phải Internet. Hãy xem phần Cài đặt tiện ích thiết lập apigee-setup của Edge để biết thêm thông tin.
- 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
Tuỳ chọn "-p asa" chỉ định cài đặt tất cả cá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).
Người dùng "apigee" phải truy cập hoặc đọc được tệp cấu hình. - Vì bạn đã cài đặt ElasticSearch trên một nút độc lập, hãy điều chỉnh tuỳ chọn bộ nhớ mặc định để tăng bộ nhớ được phân bổ cho ElasticSearch từ 4GB lên 6GB:
- Mở /opt/apigee/customer/application/elasticsearch.properties trong trình chỉnh sửa. Nếu tệp này không tồn tại, hãy tạo tệp.
- Đặt thuộc tính setenv_elasticsearch_max_mem_size thành 6g (giá trị mặc định là 4g):
setenv_elasticsearch_max_mem_size=6g - Lưu tệp.
- Chạy lệnh sau:
> /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
- 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 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. Điểm khác biệt duy nhất là đối với:
- Cài đặt 10 nút, bạn cài đặt 3 thành phần ElasticSearch và 3 thành phần API ngăn xếp BaaS trên các nút riêng biệt, tổng cộng là 6 nút. Đây là cấu hình được đề xuất để đạt được hiệu suất cao nhất vì ElasticSearch yêu cầu nhiều bộ nhớ và I/O của ổ đĩa.
- Khi cài đặt 7 nút, bạn sẽ cài đặt 3 thành phần ElasticSearch và 3 thành phần Ngăn xếp API BaaS trên cùng nút, tổng cộng là 3 nút.
Đối với cả phiên bản 7 và 10 nút của API BaaS, bạn phải kết nối với một cụm Cassandra. Nếu đã 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 cho một lượt cài đặt API BaaS gồm 10 nút. Nếu bạn đang cài đặt các thành phần ElasticSearch và API BaaS Stack trên cùng 3 nút, hãy 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. Để 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.
# 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
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 chưa cài đặt Edge, bạn có thể cài đặt Cassandra để API BaaS sử dụng (không bắt buộc).
Cụm Cassandra có thể sử dụng tính năng xác thực hoặc bạn có thể tắt tính năng xác thực Cassandra. Hãy xem phần Bật tính năng xác thực Cassandra để biết thêm thông tin.
- Cài đặt tiện ích apigee-setup của Edge trên nút bằng cách sử dụng quy trình Internet hoặc không phải Internet. Hãy xem phần Cài đặt tiện ích thiết lập apigee-setup của Edge để biết thêm thông tin.
- 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
Tuỳ chọn “-p c” chỉ định để cài đặt Cassandra.
Người dùng "apigee" phải truy cập hoặc đọc được tệp cấu hình.
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.
Xin lưu ý rằng JMX được bật theo mặc định cho Cassandra. Quyền truy cập từ xa 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 bài viết Cách theo dõi.
Thiết lập công việc cron của 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 để xoá để 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ù công việc cron trên mỗi máy chủ 5 phút để tất cả các nút không xả 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:
- 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 quy trình Internet hoặc không phải Internet. Hãy xem bài viết Cài đặt tiện ích thiết lập apigee của Edge để biết thêm thông tin.
- 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
Tuỳ chọn "-p e" chỉ định cài đặt ElasticSearch.
Người dùng "apigee" phải truy cập hoặc đọc được tệp cấu hình. - (Không bắt buộc) Nếu bạn cài đặt ElasticSearch trên một nút độc lập, tức là nút này không được cài đặt với API BaaS Stack, hãy điều chỉnh tuỳ chọn bộ nhớ mặc định để tăng bộ nhớ được phân bổ cho ElasticSearch từ 4 GB lên 6 GB:
- Mở /opt/apigee/customer/application/elasticsearch.properties trong trình chỉnh sửa. Nếu tệp này không tồn tại, hãy tạo tệp.
- Đặt thuộc tính setenv_elasticsearch_max_mem_size thành 6g (mặc định là 4g):
setenv_elasticsearch_max_mem_size=6g - Lưu tệp.
- Chạy lệnh sau:
> /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
Cấu hình hoàn tất 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:
- Cài đặt tiện ích thiết lập apigee Edge trên nút bằng cách sử dụng quy trình Internet hoặc không phải Internet. Hãy xem phần Cài đặt tiện ích thiết lập apigee-setup của Edge để biết thêm thông tin.
- 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
Tuỳ chọn "-p b" chỉ định cài đặt API BaaS Stack.
Người dùng "apigee" phải có thể truy cập hoặc đọc tệp cấu hình.
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 không gian khoá API 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 Cổng API BaaS: Máy 7
Cách cài đặt Cổng API BaaS:
- Cài đặt tiện ích thiết lập apigee Edge trên nút bằng cách sử dụng quy trình Internet hoặc không phải Internet. Hãy xem phần Cài đặt tiện ích thiết lập apigee-setup của Edge để biết thêm thông tin.
- 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
Tuỳ chọn "-p p" chỉ định cài đặt Cổng API BaaS.
Người dùng "apigee" phải có thể truy cập hoặc đọc tệp cấu hình.
Trình cài đặt khởi động máy chủ web Nginx, sau đó hoàn tất cấu hình Cổng thông tin API BaaS. - Bước tiếp theo của bạn sẽ phụ thuộc vào cách cài đặt.
- Nếu bạn có bộ cân bằng tải phía trước các nút Cổng hoặc Ngăn xếp, thì phần tiếp theo sẽ mô tả cách định cấu hình API BaaS cho bộ cân bằng tải.
- 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 triển khai một tổ chức theo mô tả ở bên dưới 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 bộ cân bằng tải Cổng hoặc Ngăn xếp
Nếu thêm trình cân bằng tải vào phía trước các nút Ngăn xếp hoặc Cổng, bạn phải định cấu hình các nút bằng 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 thông tin này khi:
- Đưa URL vào phản hồi trong các yêu cầu API BaaS.
- Thêm đường liên kết trong mẫu email khi đặt lại mật khẩu hoặc gửi thông báo khác.
- Chuyển hướng người dùng đến trang Cổng thông tin cụ thể.
Nếu bạn sử dụng bộ 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 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 đang sử dụng cổng không chuẩn, nghĩa là cổng không phải là cổng 80 cho HTTP và cổng 443 cho HTTPS.
Bạn cũng phải đặt thuộc tính sau trong /opt/apigee/customer/application/portal.properties nếu sử dụng bộ 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 bộ cân bằng tải trước nút Cổng thông tin, 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 để sử dụng TLS, hãy sử dụng giao thức HTTPS. Bạn chỉ cần thêm cổng nếu đang sử dụng cổng không chuẩn, nghĩa là cổng khác với cổng 80 cho HTTP và cổng 443 cho HTTPS.
Sau khi chỉnh sửa usergrid.properties và portal.properties:
- Định cấu hình nút Ngăn xếp:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid configure - Khởi động lại ngăn xếp BaaS:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
Lưu ý: Khi khởi động lại các nút trong ngăn xếp BaaS, hãy khởi động lại các nút đó theo thứ tự được liệt kê trong BAAS_CLUSTER_SEEDS. BAAS_CLUSTER_SEEDS liệt kê tối đa 2 trong số các nút Ngăn xếp. Sau khi khởi động lại hai nút đó theo thứ tự, bạn có thể khởi động lại các nút còn lại theo thứ tự bất kỳ.
- 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 - Khởi động lại Cổng 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 khi tạo tổ chức và quản trị viên tổ chức, bạn có thể đăng nhập vào giao diện người dùng Cổng API BaaS và gửi yêu cầu đến API REST API BaaS.
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 có 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, bạn có thể thêm quản trị viên bổ sung có thể bị trùng lặp trên nhiều tổ chức.
Để thực hiện quy trình làm quen, 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 này nhắc bạn cung cấp tất cả thông tin:
> python create_org_and_user.py
Ngoài ra, bạn có thể truyền bất kỳ hoặc tất cả các tuỳ chọn dưới dạng đối số dòng lệnh. Bạn sẽ được nhắc nhập bất kỳ thông tin nào mà bạn bỏ qua trong 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:
- Thay đổi thư mục thành /opt/apigee/baas-usergrid/bin.
- Gọi tập lệnh Python create_org_and_user.py.
Bạn sẽ đượ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ỉ quản trị viên hệ thống mới có thể chạy ứng dụng này. - Đăng nhập vào Cổng API BaaS trong trình duyệt web bằng URL mà bạn đã ghi lại ở cuối quá trình cài đặt URL Cổng API BaaS. Để truy cập vào cổng thông tin, hãy nhập URL Cổng thông tin BaaS API vào biểu mẫu:
http://{portalExternalIP}:9000/
Lưu ý: IP là địa chỉ IP bên ngoài/tên máy chủ của máy Cổng thông tin. Đảm bảo rằng cổng đang mở. - Khi màn hình đăng nhập vào 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 API, hãy sử dụng URL ở 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, nghĩa 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ó bộ cân bằng tải. Trong những 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 API BaaS Stack:
curl -v "http://portalExternalIP:8080/status"
Để biết thêm thông tin về cách bắt đầu sử dụng Cổng API BaaS, hãy xem tài liệu của Apigee tại: http://apigee.com/docs/content/build-apps-home.