В этом документе описана процедура обновления существующей установки 4.16.01 для использования последних RPM и файлов поддержки от Apigee. Для обновления используется утилита update.sh.
Какие версии Edge можно обновить до последней версии 4.16.01
Вы можете обновить только существующую установку Apigee Edge версии 4.16.01.x до последней версии 4.16.01.
Если вы используете Edge версии 4.15.07.0x или более ранней, сначала необходимо перейти на версию 4.16.01. Информацию о том, как перейти на версию 4.16.01 с версии 4.15.07.0x или более ранней, можно найти в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
Кто может выполнить обновление
Пользователь, выполняющий обновление, должен быть тем же пользователем, который изначально установил Edge, или пользователем, работающим от имени root.
После установки RPM-пакетов Edge любой пользователь может их настроить.
Требования к свободному месту на диске для обновления
Перед обновлением убедитесь, что на диске есть не менее 1 ГБ свободного места.
Автоматическое распространение настроек ресурсов из версии 4.16.01.x
Если вы задали какие-либо свойства, отредактировав файлы .properties в каталоге /opt/apigee/customer/application, то эти значения сохраняются при обновлении.
Обновление предварительных требований
Прежде чем обновлять Apigee Edge, выполните следующие предварительные условия:
- Создайте резервные копии всех узлов
Перед обновлением рекомендуется создать резервные копии всех узлов. Выполните резервное копирование в соответствии с инструкциями для вашей версии Edge.
Это позволит вам иметь резервный план на случай, если обновление до новой версии не будет работать должным образом. Дополнительную информацию о резервном копировании можно найти в руководстве по операциям Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/. - Убедитесь, что Edge работает
Убедитесь, что Edge работает во время обновления, с помощью команды:
> /<inst_root>/apigee/apigee-service/bin/apigee-all status
Что делать, если обновление не удалось
Если обновление не удалось, попробуйте устранить проблему и снова запустить update.sh. Вы можете запускать обновление несколько раз, и оно будет продолжаться с того места, на котором остановилось.
Если в результате сбоя вам потребуется откатить обновление до предыдущей версии, ознакомьтесь с руководством по установке Apigee Edge 4.16.01, доступным на FTP-сайте Apigee: ftp://ftp.apigee.com/.
Запись информации об обновлении
По умолчанию утилита update.sh записывает информацию журнала в следующий файл:
/opt/apigee/var/log/apigee-setup/update.log
Если у пользователя, запустившего утилиту update.sh, нет доступа к этому каталогу, журнал записывается в каталог /tmp в виде файла с именем update_имя_пользователя.log.
Если у пользователя нет доступа к /tmp, утилита update.sh не будет работать.
Обновление без простоя
Обновление без простоев, или последовательное обновление, позволяет обновить Edge без отключения.
Чтобы выполнить обновление без простоев, нужно по очереди удалить каждый маршрутизатор из балансировщика нагрузки. Затем вы обновляете маршрутизатор и другие компоненты на том же компьютере, что и маршрутизатор, а затем снова добавляете маршрутизатор в балансировщик нагрузки.
- Обновите компьютеры в правильном порядке, как описано ниже в разделе "Порядок обновления компьютеров".
- Когда придет время обновить маршрутизаторы, выберите любой маршрутизатор и сделайте его недоступным, как описано в следующем разделе "Как сделать маршрутизатор и процессор сообщений недоступными".
- Обновите выбранный маршрутизатор и все остальные компоненты Edge на том же компьютере, что и маршрутизатор. Во всех конфигурациях Edge маршрутизатор и Message Processor находятся на одном узле.
- Сделайте маршрутизатор снова доступным.
- Повторите шаги 2–4 для остальных маршрутизаторов.
- Обновите оставшиеся компьютеры.
Как сделать маршрутизатор и обработчик сообщений недоступными
В рабочей среде у вас будет несколько маршрутизаторов и процессоров сообщений для достижения оптимальной производительности, и вы должны включить/отключить доступность этих маршрутизаторов и процессоров сообщений до/после обновления.
Следующий вызов API настраивает узел как доступный или недоступный:
> curl -u adminEmail:pWord -X POST "http://<ms_IP>:8080/v1/servers/UUID" -d "reachable=true|false"
где UUID – это UUID Message Processor или Router, а reachable имеет значение true или false.
Чтобы определить UUID маршрутизатора, используйте следующую команду cURL:
> curl http://<routerIP>:8081/v1/servers/self
Если вам нужно определить UUID обработчика сообщений, используйте следующую команду cURL:
> curl http://<mpIP>:8082/v1/servers/self
Перед обновлением или после него выполните следующие действия:
- На комбинированном узле Router и Message Processor:
- Перед обновлением выполните следующие действия:
- Сделайте маршрутизатор недоступным, используя вызов API, показанный выше.
- Сделайте Message Processor недоступным.
- После обновления выполните следующие действия:
- Сделайте Message Processor доступным.
- Сделайте маршрутизатор доступным.
- Перед обновлением выполните следующие действия:
- На одном узле маршрутизатора:
- Перед обновлением убедитесь, что маршрутизатор доступен.
- После обновления обеспечьте доступность маршрутизатора.
- На одном узле Message Processor:
- Перед обновлением сделайте Message Processor недоступным.
- После обновления обеспечьте доступность Message Processor.
Использование файла конфигурации для автоматической установки
В команду обновления необходимо передать файл конфигурации для автоматической установки. Файл конфигурации для автоматической установки должен быть тем же, который вы использовали для установки Edge 4.16.01.
Процедура обновления версии 4.16.01 на узле с внешним подключением к интернету
Чтобы обновить компоненты Edge на узле, выполните следующие действия:
- Если у вас есть задания CRON, настроенные на восстановление Cassandra, отключите их до завершения обновления.
- Войдите в узел как пользователь root, чтобы установить RPM-пакеты Edge.
Примечание. Для установки RPM-пакетов требуется доступ с правами root, но настроить Edge можно и без него. - Отключите SELinux, как описано в руководстве по установке Apigee Edge 4.16.01, которое можно найти на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Очистите все кеши Yum:
> sudo yum clean all - Скачайте последнюю версию файла bootstrap.sh для Edge в каталог /tmp/bootstrap.sh:
> curl https://software.apigee.com/bootstrap.sh -o /tmp/bootstrap.sh - Обновите утилиту Edge apigee-service и зависимости:
> sudo bash /tmp/bootstrap.sh apigeeuser=uName apigeepassword=pWord
где uName:pWord – имя пользователя и пароль, полученные от Apigee. Если вы не укажете pWord, вам будет предложено ввести его. - Используйте apigee-service, чтобы обновить утилиту apigee-setup:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
Это обновление apigee-service устанавливает утилиту update.sh в <inst_dir>/apigee/apigee-setup/bin. - Запустите утилиту обновления на узлах в порядке, описанном ниже в разделе "Порядок обновления компьютеров":
> /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
Единственное требование к файлу конфигурации – он должен быть доступен или доступен для чтения пользователю apigee. Например, поместите файл в каталог /tmp на узле.
Используйте параметр -c, чтобы указать компонент, который нужно обновить. Возможные компоненты:- ldap – OpenLDAP;
- cs – Cassandr;
- zk – Zookeeper;
- qpid = qpidd
- ps – PostgreSQL;
- edge – все компоненты Edge, кроме Edge UI: Management Server, Message Processor, Router, QPID Server, Postgres Server.
- ui – Edge UI.
- all – обновить все компоненты на компьютере (используйте только для профиля установки Edge aio или API BaaS asa).
- e – ElasticSearch;
- b – API BaaS Stack;
- p – портал API BaaS.
- ebp – ElasticSearch, API BaaS Stack и API BaaS Portal на одном узле.
- Протестируйте обновление, запустив утилиту apigee-validate в Message Processor, как описано в руководстве по установке Apigee Edge 4.16.01, доступном на FTP-сайте Apigee: ftp://ftp.apigee.com/.
Процедура обновления 4.16.01 из локального репозитория
Если узлы Edge находятся за брандмауэром или по какой-то другой причине не могут получить доступ к хранилищу Apigee через интернет, вы можете выполнить обновление из локального хранилища или зеркала хранилища Apigee.
После создания локального хранилища Edge у вас есть два варианта обновления Edge из локального хранилища:
- Создайте TAR-файл репозитория, скопируйте его на узел и обновите Edge из этого файла.
- Установите веб-сервер на узел с локальным репозиторием, чтобы другие узлы могли получить к нему доступ. Apigee предоставляет веб-сервер Nginx, но вы можете использовать и собственный.
Чтобы обновить из локального репозитория 4.16.01:
- Убедитесь, что у вас есть локальное хранилище версии 4.16.01, как описано в руководстве по установке Apigee Edge 4.16.01, доступном на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите локальный репозиторий:
- Скачайте последнюю версию файла bootstrap.sh для Edge в каталог /tmp/bootstrap.sh:
> curl https://software.apigee.com/bootstrap.sh -o /tmp/bootstrap.sh - Выполните синхронизацию:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
- Скачайте последнюю версию файла bootstrap.sh для Edge в каталог /tmp/bootstrap.sh:
-
Чтобы установить apigee-service из TAR-файла, выполните следующие действия:
- На узле с локальным хранилищем используйте следующую команду, чтобы упаковать локальное хранилище в один TAR-файл с названием /opt/apigee/data/apigee-mirror/apigee-4.16.01.tar.gz:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package - Скопируйте TAR-файл на узел, на котором вы хотите обновить Edge. Например, скопируйте его в каталог /tmp на новом узле.
- На новом узле распакуйте файл в каталог /tmp:
> tar -xzf apigee-4.16.01.tar.gz
Эта команда создает новый каталог с именем repos в каталоге, содержащем TAR-файл. например /tmp/repos. - Войдите в узел как пользователь root, чтобы установить RPM-пакеты Edge.
Примечание. Для установки RPM-пакетов требуется доступ с правами root, но настроить Edge можно и без него. - Отключите SELinux, как описано в руководстве по установке Apigee Edge 4.16.01, которое можно найти на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Установите утилиту Edge apigee-service и зависимости из каталога /tmp/repos:
> sudo bash /tmp/repos/bootstrap.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
Обратите внимание, что в этой команде вы указываете путь к каталогу repos.
- На узле с локальным хранилищем используйте следующую команду, чтобы упаковать локальное хранилище в один TAR-файл с названием /opt/apigee/data/apigee-mirror/apigee-4.16.01.tar.gz:
-
Чтобы установить apigee-service с помощью веб-сервера Nginx, выполните следующие действия:
- Настройте веб-сервер Nginx, как описано в разделе "Установка из репозитория с помощью веб-сервера Nginx" руководства по установке Edge 4.16.01, доступного на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- На удаленном узле скачайте файл Edge bootstrap.sh в /tmp/bootstrap.sh:
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap.sh -o /tmp/bootstrap.shwhere uName:pWord are the username and password you set above for the repo, and remoteRepo is the IP address or DNS name of the repo node.
- Log in to your node as root to install the Edge RPMs
Note: While RPM installation requires root access, you can perform Edge configuration without root access. - Disable SELinux as described in the Apigee Edge 4.16.01 Installation Guide, available on the Apigee FTP site: ftp://ftp.apigee.com/
- On the remote node, install the Edge apigee-service utility and
dependencies:
> sudo bash /tmp/bootstrap.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
where uName:pWord are the repo username and password.
- If present, disable any CRON jobs configured to perform a repair operation on Cassandra until after the update completes.
- Use apigee-service to update the apigee-setup utility:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
This update to apigee-service installs the update.sh utility in <inst_dir>/apigee/apigee-setup/bin. - Run the update utility on your nodes in the order described below in "Order of machine
update" below:
> /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile
The only requirement on the config file is that the configuration file must be accessible or readable by the "apigee" user. For example, put the file in the /tmp directory on the node.
Use the “-c” option to specify the component to update. The list of possible components includes:- ldap = OpenLDAP
- cs = Cassandr
- zk = Zookeeper
- qpid = qpidd
- ps = postgresql
- edge =All Edge components except Edge UI: Management Server, Message Processor, Router, QPID Server, Postgres Server
- ui = Edge UI
- all = update all components on machine (only use for an Edge aio installation profile or an API BaaS asa installation profile)
- e = ElasticSearch
- b = API BaaS Stack
- p = API BaaS Portal
- ebp = ElasticSearch, API BaaS Stack, and API BaaS Portal on the same node
- Test the update by running the apigee-validate utility on the Message Processor, as described in the Apigee Edge 4.16.01 Installation Guide, available on the Apigee FTP site: ftp://ftp.apigee.com/
Order of machine update
The order that you update the machines in an Edge installation is important. The most important considerations to an update are:
- You must update all Cassandra and ZooKeeper nodes before you update any other nodes.
- You must update all qpidd and postgresql nodes before you update any Router and Message Processor nodes.
- For any machine with multiple Edge components (Management Server, Message Processor, Router, QPID Server, Postgres Server), use the "-c edge" option to update them all at the same time.
- If a step specifies that it should be performed on multiple machines, perform it in the specified machine order.
- There is no separate step to update Monetization. It is updated when you specify the "-c edge" option.
- After you update a Router node, you must remove all files from the /opt/nginx/conf.d directory, and then restart the Router.
For a 1-host standalone installation
- Update machine 1:
> /opt/apigee/apigee-setup/bin/update.sh -c all -f configFile
- Удалите все файлы в каталоге /opt/nginx/conf.d:
> rm -f /opt/nginx/conf.d/* - Перезапустите Edge Router:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
Для автономной установки с двумя хостами
Список топологий Edge и номеров узлов приведен в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra и ZooKeeper на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- Обновите qpidd и postgresql на компьютере 2:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
- Обновите LDAP на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- Обновите компоненты Edge на компьютерах 1 и 2:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- На узле 1:
- Удалите все файлы в папке
/opt/nginx/conf.d:> rm -f /opt/nginx/conf.d/*
- Перезапустите пограничный маршрутизатор:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
- Удалите все файлы в папке
- Обновите интерфейс на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с пятью хостами
Список топологий Edge и номеров узлов можно найти в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra и ZooKeeper на компьютерах 1, 2 и 3:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- Обновите qpidd и postgresql на компьютерах 4 и 5:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
- Обновите LDAP на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- Обновите компоненты Edge на компьютерах 4, 5, 1, 2, 3:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- На узлах 2 и 3:
- Удалите все файлы в папке
/opt/nginx/conf.d:> rm -f /opt/nginx/conf.d/*
- Перезапустите пограничный маршрутизатор:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
- Удалите все файлы в папке
- Обновите интерфейс на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с девятью хостами
Список топологий Edge и номеров узлов приведен в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra и ZooKeeper на компьютерах 1, 2 и 3:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- Обновите qpidd на компьютерах 6 и 7:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- Обновите postgresql на компьютерах 8 и 9:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- Обновите LDAP на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- Обновите компоненты Edge на компьютерах 6, 7, 8, 9, 1, 4 и 5 в указанном порядке:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- На узлах 4 и 5:
- Удалите все файлы в папке
/opt/nginx/conf.d:> rm -f /opt/nginx/conf.d/*
- Перезапустите пограничный маршрутизатор:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
- Удалите все файлы в папке
- Обновите интерфейс на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с 13 хостами
Список топологий Edge и номеров узлов приведен в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra и ZooKeeper на компьютерах 1, 2 и 3:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- Обновите qpidd на машинах 12 и 13:
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile - Обновите postgresql на компьютерах 8 и 9:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile - Обновите LDAP на компьютерах 4 и 5:
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- Обновите компоненты Edge на компьютерах 12, 13, 8, 9, 6, 7, 10 и 11 в указанном порядке:
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- В Node 10 и 11:
- Удалите все файлы в папке
/opt/nginx/conf.d:> rm -f /opt/nginx/conf.d/*
- Перезапустите пограничный маршрутизатор:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
- Удалите все файлы в папке
- Обновите интерфейс на машинах 6 и 7:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с 12 хостами
Список топологий Edge и номеров узлов приведен в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra и ZooKeeper:
- На машинах 1, 2 и 3 в центре обработки данных 1:
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- На машинах 7, 8 и 9 в центре обработки данных 2
> /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
- На машинах 1, 2 и 3 в центре обработки данных 1:
- Обновите qpidd:
- Машины 4 и 5 в центре обработки данных 1
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- Машины 10 и 11 в центре обработки данных 2
> /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
- Машины 4 и 5 в центре обработки данных 1
- Обновите postgresql:
- 6 машин в центре обработки данных 1
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 12 машин в центре обработки данных 2
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
- 6 машин в центре обработки данных 1
- Обновите LDAP:
- Машины 1 в центре обработки данных 1
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- Машины 7 в центре обработки данных 2
> /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
- Машины 1 в центре обработки данных 1
- Обновите компоненты Edge:
- Машины 4, 5, 6, 1, 2, 3 в центре обработки данных 1
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- Машины 10, 11, 12, 7, 8, 9 в центре обработки данных 2
> /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
- На узлах 2, 3, 8 и 9:
- Удалите все файлы в папке
/opt/nginx/conf.d:> rm -f /opt/nginx/conf.d/*
- Перезапустите пограничный маршрутизатор:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
- Удалите все файлы в папке
- Машины 4, 5, 6, 1, 2, 3 в центре обработки данных 1
- Обновление интерфейса:
- Компьютер 1 в центре обработки данных 1
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
- Компьютер 7 в центре обработки данных 2
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
- Компьютер 1 в центре обработки данных 1
Для установки API BaaS на семи хостах
Список топологий Edge и номеров узлов приведен в руководстве по установке Apigee Edge 4.16.01 на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra на компьютерах 5, 6 и 7:
> /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
- Обновите ElasticSearch и API BaaS Stack на компьютерах 1, 2 и 3:
> /opt/apigee/apigee-setup/bin/update.sh -c e,b -f configFile
- Обновите портал API BaaS на компьютере 4:
> /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile
Для установки API BaaS на 10 хостах
Список топологий Edge и номеров узлов приведен в руководстве по установке Apigee Edge 4.16.01, которое можно найти на FTP-сайте Apigee: ftp://ftp.apigee.com/.
- Обновите Cassandra на компьютерах 8, 9 и 10:
> /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
- Обновите ElasticSearch на компьютерах 1, 2 и 3:
> /opt/apigee/apigee-setup/bin/update.sh -c e -f configFile
- Обновите стек API BaaS на компьютерах 4, 5 и 6:
> /opt/apigee/apigee-setup/bin/update.sh -c b -f configFile
- Обновите API BaaS Portal на компьютере 7:
> /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile
Нестандартная установка
Если у вас нестандартная установка, обновите компоненты Edge в следующем порядке:
- ZooKeeper
- Cassandra
- qpidd
- postgresql
- LDAP
- Edge, то есть профиль -c edge на всех узлах в следующем порядке: Qpid, Postgres, Management Server, Message Processor, Router.
- На всех узлах маршрутизатора:
- Удалите все файлы в папке
/opt/nginx/conf.d:> rm -f /opt/nginx/conf.d/*
- Перезапустите пограничный маршрутизатор:
> /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
- Удалите все файлы в папке
- Интерфейс