Edge for Private Cloud w wersji 4.17.05
Omówienie instalacji
Po zainstalowaniu narzędzia Edge apigee-setup w węźle używaj tego do zainstalowania co najmniej jednego komponentu BaaS w węźle.
Narzędzie apigee-setup zawiera formularz:
> sudo /opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
Przekaż plik konfiguracji do narzędzia apigee-setup, który zawiera informacje na temat instalacji. Jeśli w pliku konfiguracji brakuje jakichkolwiek wymaganych parametr apigee-setup, zobaczysz prośbę o wpisanie go w wierszu poleceń.
Jedynym wymaganiem jest to, aby plik konfiguracji był dostępny i czytelny dla „apigee” użytkownika.
Możesz na przykład zainstalować stos BaaS API za pomocą następującego polecenia:
> sudo /opt/apigee/apigee-setup/bin/setup.sh -p b -f myConfig
Określanie komponentów do zainstalowania
Narzędzie Apigee setup.sh obsługuje kilka opcji instalacji komponentów BaaS API. Poniższe instrukcje dotyczą samodzielnych opcji (c, e, b i p), ale można użyć różnych opcji w zależności od węzła Konfiguracja:
Opcja |
Opis |
---|---|
e |
Zainstaluj tylko ElasticSearch. |
b |
Zainstaluj tylko stos BaaS API, który instaluje też Tomcat. |
p |
Zainstaluj tylko portal API BaaS, który instaluje też router Nginx do używania jako sieć serwera. |
C |
Zainstaluj tylko Cassandra. |
eb |
Zainstaluj w węźle ElasticSearch, stos BaaS API i Tomcat. |
ebp |
Zainstaluj ElasticSearch, portal BaaS API, stos BaaS API i Tomcat, ale nie Cassandra. Portal jest tak uproszczony, że nie wymaga do tego dodatkowych zasobów. |
Asa |
Zainstaluj wszystkie komponenty BaaS interfejsów API w jednym węźle (Cassandra, Elasticsearch, API BaaS) Stos, Portal BaaS API, Tomcat). Używaj tej opcji tylko do programowania i testowania, nie do produkcji. |
Tworzenie pliku konfiguracji
Plik konfiguracji zawiera wszystkie informacje niezbędne do zainstalowania interfejsu API BaaS. Dostępne opcje często używają tego samego pliku konfiguracji do zainstalowania wszystkich komponentów w instalacji BaaS.
Każda opisana poniżej topologia instalacji zawiera przykładowy plik konfiguracyjny dla tej topologii. Dla: pełne informacje na temat pliku konfiguracji znajdziesz w dokumentacji pliku konfiguracji BaaS (w języku angielskim).
Zainstaluj API BaaS w jednym węźle
Poniżej znajduje się plik konfiguracyjny instalacji interfejsu API BaaS w jednym węźle. Edytuj ten plik jako niezbędne do konfiguracji. Pełne informacje na temat pliku konfiguracyjnego znajdziesz w artykule Odniesienie do pliku konfiguracji bazy danych.
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
Aby zainstalować interfejs API BaaS w jego własnym węźle:
- Zainstaluj narzędzie Edge apigee-setup na węźle, korzystając z przez internet lub poza internetem. Zapoznaj się z sekcją Instalowanie narzędzia Edge apigee-setup, i innych.
- W wierszu polecenia uruchom skrypt konfiguracji:
> /opt/apigee/apigee-setup/bin/setup.sh -p asa -f configFile
Opcja „-p asa” określa, czy należy zainstalować wszystkie komponenty BaaS interfejsu API w 1 węźle (Cassandra, Elasticsearch, stos API BaaS, portal API BaaS, Tomcat).
Plik konfiguracji musi być dostępny lub czytelny dla „apigee” użytkownika. - Ponieważ zainstalowano ElasticSearch w samodzielnym węźle, dostosuj pamięć domyślną
opcja zwiększenia pamięci przeznaczonej dla ElasticSearch z 4 GB do 6 GB:
- Otwórz plik /opt/apigee/customer/application/elasticsearch.properties w redaktorem. Jeśli ten plik nie istnieje, utwórz go.
- Ustaw właściwość setenv_elasticsearch_max_mem_size
do 6 g (domyślna wartość to 4g):
setenv_elasticsearch_max_mem_size=6g - Zapisz plik.
- Uruchom to polecenie:
> /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
- Zarejestruj organizację w sposób opisany poniżej w sekcji Wprowadzanie nowej organizacji.
Konfiguracja kończy konfigurację w węźle.
Zainstaluj API BaaS w 7 lub 10 węzłach
Procedura instalacji wersji interfejsu API BaaS z 7 lub 10 węzłami jest bardzo podobna. Jedyna różnica jest taka, że w przypadku:
- instalując 10 węzłów, instalujesz 3 komponenty ElasticSearch i 3 interfejsy API; Komponenty stosu BaaS w oddzielnych węzłach. Łącznie daje to 6 węzłów. To jest zalecana konfiguracja pozwala uzyskać najwyższą wydajność, ponieważ ElasticSearch wymaga dużych ilości operacji wejścia-wyjścia dysku i pamięci.
- 7 węzłów, instalujesz 3 komponenty ElasticSearch i 3 interfejsy API BaaS. Ułóż komponenty w tych samych węzłach, łącznie węzłów.
W przypadku wersji BaaS z 7 i 10 węzłami musisz połączyć się z klastrem Cassandra. Jeśli masz już zainstalowaną przeglądarkę Edge, możesz połączyć się z jej klastrem Cassandra, co oznacza, że nie musi zainstalować Cassandra w ramach instalowania interfejsów API BaaS.
Poniżej znajduje się przykładowy plik konfiguracji cichej dla instalacji BaaS interfejsu API z 10 węzłami. Jeśli instalujesz komponenty stosu BaaS ElasticSearch i interfejsu API w tych samych 3 węzłach, przeredagować plik tak, aby:
- Adres IP1 i IP4 są ustawione na ten sam adres IP
- IP2 i IP5 są ustawione na ten sam adres IP
- IP3 i IP6 są ustawione na ten sam adres IP
Zmodyfikuj ten plik zgodnie ze swoją konfiguracją. Pełne informacje na temat: pliku konfiguracyjnego. Więcej informacji znajdziesz w sekcji BaaS Odniesienie do pliku konfiguracji.
# 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
Opcjonalnie – zainstaluj Cassandra: maszyna 8, 9 i 10
Możesz połączyć API BaaS z tym samym klastrem Cassandra, którego używa Edge. Jeśli nie masz jeszcze Edge, możesz opcjonalnie zainstalować Cassandra do użytku przez API BaaS.
Klaster Cassandra może używać uwierzytelniania lub wyłączyć uwierzytelnianie Cassandra. Zobacz Włącz uwierzytelnianie Cassandra dla: i innych.
- Zainstaluj narzędzie Edge apigee-setup na węźle, korzystając z za pomocą internetu, czy też poza internetem. Zapoznaj się z sekcją Instalowanie narzędzia Edge apigee-setup, i innych.
- W wierszu polecenia uruchom skrypt konfiguracji:
> /opt/apigee/apigee-setup/bin/setup.sh -p c -f configFile
Opcja „-p c” określa, czy należy zainstalować system Cassandra.
Plik konfiguracji musi być dostępny lub czytelny dla „apigee” użytkownika.
Konfiguracja kończy proces konfiguracji magazynu danych w węźle.
Zwróć uwagę, że standard JMX jest domyślnie włączony dla Cassandra. Zdalny dostęp JMX do Cassandra nie wymagać hasła. Możesz skonfigurować Cassandra tak, aby używała uwierzytelniania dla JMX. Więcej informacji: Jak monitorować dane.
Konfigurowanie zadania Cassandra cron
Jeśli musisz zainstalować system Cassandra, skonfiguruj zadanie cron, które korzysta z narzędzia nodetool do czyszczenia pamięci blokad co godzinę w każdym węźle Cassandra.
Jeśli masz wiele węzłów Cassandra, przesuń zadanie cron na każdym serwerze o pięć minut, aby nie opróżniać wszystkich węzłów w tym samym czasie.
Zadanie cron musi wykonać to polecenie:
/opt/apigee/apigee-cassandra/bin/nodetool -h IP_address flush Apigee_Baas_Locks
gdzie IP_address to adres IP węzła Cassandra.
Zainstaluj ElasticSearch: Maszyna 1, 2 i 3
Aby zainstalować ElasticSearch w osobnym węźle:
- Zainstaluj narzędzie Edge apigee-setup w węźle, korzystając z internetu lub spoza internetu . Zobacz Instalowanie Edge apigee-setup .
- W wierszu polecenia uruchom skrypt konfiguracji:
> /opt/apigee/apigee-setup/bin/setup.sh -p e -f configFile
Opcja „-p e” wskazuje, że należy zainstalować ElasticSearch.
Plik konfiguracji musi być dostępny lub czytelny dla „apigee” użytkownika. - (Opcjonalnie) Jeśli zainstalujesz ElasticSearch w samodzielnym węźle, czyli nie jest on zainstalowany
za pomocą stosu BaaS API, a następnie dostosować domyślną opcję pamięci, aby zwiększyć ilość pamięci przydzielonej
ElasticSearch od 4 GB do 6 GB:
- Otwórz /opt/apigee/customer/application/elasticsearch.properties w edytorze. Jeśli ten plik nie istnieje, utwórz go.
- Ustaw setenv_elasticsearch_max_mem_size
do 6g (wartość domyślna to 4g):
setenv_elasticsearch_max_mem_size=6g - Zapisz plik.
- Uruchom to polecenie:
> /opt/apigee/apigee-service/bin/apigee-service apigee-elasticsearch restart
Konfiguracja kończy konfigurację w węźle.
Zainstaluj stos BaaS API: Maszyna 4, 5 i 6
Aby zainstalować stos BaaS API w osobnym węźle:
- Zainstaluj narzędzie Edge apigee-setup w węźle, korzystając z internetu lub spoza internetu . Zobacz Instalowanie Edge apigee-setup .
- W wierszu polecenia uruchom skrypt konfiguracji:
> /opt/apigee/apigee-setup/bin/setup.sh -p b -f configFile
Opcja „-p b” określa, czy należy zainstalować stos BaaS API.
Plik konfiguracji musi być dostępny lub czytelny dla „apigee” użytkownika.
Po pobraniu prawidłowych danych logowania administratora instalator instaluje rozszerzenie Tomcat i tworzy interfejs API. i skonfigurować stos BaaS API na serwerze. Protokół SMTP jest skonfigurowany tak, aby zezwalać na wysyłania e-maili z potwierdzeniem hasła.
Zainstaluj portal API BaaS: maszyna 7.
Aby zainstalować portal BaaS API:
- Zainstaluj narzędzie Edge apigee-setup w węźle, korzystając z internetu lub spoza internetu . Zobacz Instalowanie Edge apigee-setup .
- W wierszu polecenia uruchom skrypt konfiguracji:
> /opt/apigee/apigee-setup/bin/setup.sh -p p -f configFile
Opcja „-p p” wskazuje, że należy zainstalować portal BaaS API.
Plik konfiguracji musi być dostępny lub czytelny dla „apigee” użytkownika.
Instalator uruchamia serwer internetowy Nginx, a następnie kończy portal API BaaS. konfiguracji. - Następny krok zależy od instalacji.
- Jeśli przed węzłami stosu portali lub stosów masz system równoważenia obciążenia, następna sekcja opisuje, jak skonfigurować interfejs BaaS API pod kątem systemów równoważenia obciążenia.
- Jeśli nie masz systemu równoważenia obciążenia przed węzłami stosu portali lub stosów, rozpocznij organizacji, jak opisano poniżej w sekcji Wprowadzenie a konkretnie do nowej organizacji.
Zanotuj adres URL portalu BaaS API. Jest to adres URL, który musisz wpisać w przeglądarce, aby uzyskać dostęp do Interfejs API BaaS Portal.
Skonfiguruj Węzły BaaS interfejsu API na potrzeby systemu równoważenia obciążenia stosu lub portalu
Jeśli umieścisz system równoważenia obciążenia przed węzłami stosu lub portalu, musisz skonfigurować węzłów z prawidłowym adresem URL systemu równoważenia obciążenia. Na przykład węzły stosu wymagają tego , gdy:
- Umieszczanie adresu URL w odpowiedziach w żądaniach do interfejsu BaaS API.
- dodawania linków w szablonach e-maili podczas resetowania hasła lub wysyłania innych wiadomości, powiadomienia.
- Przekierowywanie użytkowników na strony konkretnych portali.
Jeśli używasz systemu równoważenia obciążenia przed węzłami stosu, ustaw następującą właściwość w /opt/apigee/customer/application/usergrid.properties:
usergrid-deployment_usergrid.api.url.base=http://localhost:8080
Zastąp ciąg http://localhost:8080 adresem URL wczytywania. systemu równoważenia obciążenia. Jeśli system równoważenia obciążenia jest skonfigurowany do używania protokołu TLS, użyj protokołu HTTPS. Tylko Ty musisz uwzględnić port, jeśli używasz portu niestandardowego, czyli innego niż port 80 w przypadku HTTP i port 443 w przypadku HTTPS.
Musisz też ustawić tę właściwość w /opt/apigee/customer/application/portal.properties , jeśli: używasz systemu równoważenia obciążenia przed węzłami stosu:
baas.portal.config.overrideUrl=http://localhost:8080
Zastąp http://localhost:8080 adresem URL systemu równoważenia obciążenia dla stosu.
Jeśli używasz systemu równoważenia obciążenia przed węzłem Portalu, ustaw te właściwości w usergrid.properties:
usergrid-deployment_portal.url=http://localhost:9000
Zastąp http://localhost:9000 adresem URL systemu równoważenia obciążenia. Jeśli system równoważenia obciążenia jest skonfigurowany do używania protokołu TLS, użyj protokołu HTTPS. Ty uwzględniaj go tylko wtedy, gdy korzystasz z portu niestandardowego, czyli innego niż port 80 w przypadku HTTP i 443 w przypadku HTTPS.
Po zakończeniu edytowania plików usergrid.properties i portal.properties:
- Skonfiguruj węzeł stosu:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid setup - Uruchom ponownie stos BaaS:
> /opt/apigee/apigee-service/bin/apigee-service baas-usergrid restart
Uwaga: podczas ponownego uruchamiania węzłów stosu BaaS uruchamiaj je w tej samej kolejności. że są one wymienione w grupie BAAS_CLUSTER_SEEDS. BAAS_CLUSTER_SEEDS wyświetla maksymalnie dwie z tych list: węzłów stosu. Po ponownym uruchomieniu tych 2 węzłów możesz ponownie uruchomić pozostałe węzłów w dowolnej kolejności.
- Jeśli zmodyfikowano plik portal.properties, skonfiguruj
węzeł portalu:
/opt/apigee/apigee-service/bin/apigee-service baas-portal konfiguracja - Uruchom ponownie portal BaaS:
> /opt/apigee/apigee-service/bin/apigee-service baas-portal restart
Wprowadzanie nowej organizacji
Rejestracja to proces tworzenia organizacji i jej administratora. Po utworzenie administratora organizacji lub organizacji, możesz zalogować się w portalu BaaS API Interfejs użytkownika i wysyłanie żądań do interfejsu API BaaS typu REST.
Gdy utworzysz organizację, adres e-mail jej administratora:
- Musi być inny niż adres e-mail administratora systemu.
- Musi być niepowtarzalna wśród wszystkich innych organizacji. Oznacza to, że nie można utworzyć dwóch organizacji. z tym samym adresem e-mail co administrator organizacji. Po utworzeniu jednak organizacji, można dodać kolejnych administratorów, których organizacji non-profit.
Aby przeprowadzić wprowadzenie, użyj skryptu Pythona create_org_and_user.py. Wywoływanie tego skryptu bez argumentów wiersza poleceń powoduje, że wyświetla się prośba o informacje:
> python create_org_and_user.py
Jako argument wiersza poleceń możesz też przekazać wszystkie lub wszystkie opcje. Pojawi się prośba o wszelkie informacje pominięte w wierszu poleceń:
> 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>'
Aby utworzyć organizację:
- Zmień katalog na /opt/apigee/baas-usergrid/bin.
- Wywołaj skrypt Pythona create_org_and_user.py.
Zostanie wyświetlony monit o podanie nazwy użytkownika i hasła administratora systemu BaaS, aby tylko może ją uruchomić administrator. - Zaloguj się w portalu API BaaS w przeglądarce, korzystając z adresu URL podanego na końcu
Instalacja adresu URL portalu API BaaS. Aby uzyskać dostęp do portalu, wpisz URL portalu BaaS API w polu
formularz:
http://{portalExternalIP}:9000/
Uwaga: adres IP to zewnętrzny adres IP/nazwa hosta maszyny portalu. Sprawdź, czy ten port jest otwarty. - Gdy pojawi się ekran logowania do portalu, możesz:
- Zaloguj się przy użyciu nazwy użytkownika i hasła administratora organizacji.
- Zaloguj się przy użyciu nazwy użytkownika i hasła administratora systemu.
Dostęp do interfejsu API BaaS typu REST
Aby uzyskać dostęp do interfejsu API BaaS typu REST, użyj adresu URL w formacie:
https://{loadBalancerIP}:8080/{your-org}/{your-app}
W środowisku programistycznym możesz zainstalować wszystkie komponenty BaaS API w jednym węźle, co oznacza, że masz pojedynczy stos BaaS API. Innym przykładem może być małe środowisko z Węzeł stosu BaaS API i brak systemu równoważenia obciążenia. W tego typu środowiskach możesz wykonywać wywołania interfejsu API bezpośrednio do węzła stosu BaaS API:
curl -v "http://portalExternalIP:8080/status"
Aby dowiedzieć się, jak zacząć korzystać z portalu API BaaS, zapoznaj się z dokumentacją Apigee na stronie: http://apigee.com/docs/content/build-apps-home.