Edge for Private Cloud версии 4.16.05
В этом документе описана процедура обновления существующей установки 4.16.05 для использования последних RPM и файлов поддержки от Apigee. Для обновления используется утилита update.sh.
Какие версии Edge можно обновить до последней версии 4.16.05
Вы можете обновить только существующую установку Apigee Edge версии 4.16.05.x до последней версии 4.16.05.
Если вы используете Edge версии 4.16.01.0x или более ранней, сначала необходимо перейти на версию 4.16.05. Информацию о том, как перейти на версию 4.16.05, можно найти в статье Как обновить Apigee Edge с версии 4.16.01 до 4.16.05.
Кто может выполнить обновление
Пользователь, выполняющий обновление, должен быть тем же пользователем, который изначально установил Edge, или пользователем, работающим от имени root.
После установки RPM-пакетов Edge любой пользователь может их настроить.
Требования к свободному месту на диске для обновления
Перед обновлением убедитесь, что на диске есть не менее 1 ГБ свободного места.
Автоматическое распространение настроек ресурсов из версии 4.16.05.x
Если вы задали какие-либо свойства, отредактировав файлы .properties в каталоге /opt/apigee/customer/application, то эти значения сохраняются при обновлении.
Обновление предварительных требований
Прежде чем обновлять Apigee Edge, выполните следующие предварительные условия:
- Создайте резервные копии всех узлов
Перед обновлением рекомендуется создать резервные копии всех узлов. Выполните резервное копирование в соответствии с инструкциями для вашей версии Edge.
Это позволит вам иметь резервный план на случай, если обновление до новой версии не будет работать должным образом. Подробнее о резервном копировании и восстановлении… - Убедитесь, что Edge работает
Убедитесь, что Edge работает во время обновления, с помощью команды:
> /<inst_root>/apigee/apigee-service/bin/apigee-all status
Что делать, если обновление не удалось
Если обновление не удалось, попробуйте устранить проблему и снова запустить update.sh. Вы можете запускать обновление несколько раз, и оно будет продолжаться с того места, на котором остановилось.
Если в результате сбоя вам потребуется выполнить откат обновления до предыдущей версии, ознакомьтесь с разделом Процесс отката до версии 4.16.05.
Запись информации об обновлении
По умолчанию утилита update.sh записывает информацию журнала в следующий файл:
/opt/apigee/var/log/apigee-setup/update.log
Если у пользователя, запустившего утилиту update.sh, нет доступа к этому каталогу, журнал записывается в каталог /tmp в виде файла с именем update_username.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 процессора сообщений или маршрутизатора, а 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.05.
Процедура обновления версии 4.16.05 на узле с внешним подключением к интернету
Чтобы обновить компоненты Edge на узле, выполните следующие действия:
- Если у вас есть задания CRON, настроенные на восстановление Cassandra, отключите их до завершения обновления.
- Войдите в узел как пользователь root, чтобы установить RPM-пакеты Edge.
Примечание. Для установки RPM-пакетов требуется доступ с правами root, но настроить Edge можно и без него. - Отключите SELinux, как описано в разделе Установка утилиты apigee-setup для Edge.
- Очистите все кеши Yum:
> sudo yum clean all - Скачайте последнюю версию файла Edge bootstrap_4.16.05.sh в каталог /tmp/bootstrap_4.16.05.sh:
> curl https://software.apigee.com/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh - Обновите утилиту apigee-service и зависимости Edge:
> sudo bash /tmp/bootstrap_4.16.05.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 – стек BaaS API;
- p = API BaaS Portal
- ebp – ElasticSearch, API BaaS Stack и API BaaS Portal на одном узле.
- Протестируйте обновление, запустив утилиту apigee-validate, Протестируйте установку.
Процедура обновления 4.16.05 из локального репозитория
Если узлы Edge находятся за брандмауэром или по какой-то другой причине не могут получить доступ к хранилищу Apigee через интернет, вы можете выполнить обновление из локального хранилища или зеркала хранилища Apigee.
После создания локального хранилища Edge у вас есть два варианта обновления Edge из локального хранилища:
- Создайте TAR-файл репозитория, скопируйте его на узел и обновите Edge из этого файла.
- Установите веб-сервер на узел с локальным репозиторием, чтобы другие узлы могли получить к нему доступ. Apigee предоставляет веб-сервер Nginx, но вы можете использовать и собственный.
Чтобы обновить из локального репозитория 4.16.05:
- Убедитесь, что у вас есть локальное хранилище версии 4.16.05, как описано в статье Как установить компоненты Edge на узел.
- Обновите локальный репозиторий:
- Скачайте последнюю версию файла Edge bootstrap_4.16.05.sh в каталог /tmp/bootstrap_4.16.05.sh:
> curl https://software.apigee.com/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh - Выполните синхронизацию:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
- Скачайте последнюю версию файла Edge bootstrap_4.16.05.sh в каталог /tmp/bootstrap_4.16.05.sh:
-
Чтобы установить apigee-service из TAR-файла, выполните следующие действия:
- На узле с локальным репозиторием используйте следующую команду, чтобы упаковать локальный репозиторий в один файл .tar с именем /opt/apigee/data/apigee-mirror/apigee-4.16.05.tar.gz:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package - Скопируйте TAR-файл на узел, на котором вы хотите обновить Edge. Например, скопируйте его в каталог /tmp на новом узле.
- На новом узле распакуйте файл в каталог /tmp:
> tar -xzf apigee-4.16.05.tar.gz
Эта команда создает новый каталог с именем repos в каталоге, содержащем файл .tar. Например, /tmp/repos. - Войдите в узел как пользователь root, чтобы установить RPM-пакеты Edge.
Примечание. Для установки RPM-пакетов требуется доступ с правами root, но настроить Edge можно и без него. - Отключите SELinux, как описано в разделе Установка утилиты apigee-setup для Edge.
- Установите утилиту apigee-service и зависимости из каталога /tmp/repos:
> sudo bash /tmp/repos/bootstrap_4.16.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
Обратите внимание, что в этой команде вы указываете путь к каталогу repos.
- На узле с локальным репозиторием используйте следующую команду, чтобы упаковать локальный репозиторий в один файл .tar с именем /opt/apigee/data/apigee-mirror/apigee-4.16.05.tar.gz:
-
Чтобы установить apigee-service с помощью веб-сервера Nginx, выполните следующие действия:
- Настройте веб-сервер Nginx, как описано в разделе "Установка из репозитория с помощью веб-сервера Nginx" статьи Как установить компоненты Edge на узел.
- На удаленном узле скачайте файл bootstrap_4.16.05.sh для Edge в папку /tmp/bootstrap_4.16.05.sh:
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh
где uName:pWord – имя пользователя и пароль, заданные выше для хранилища, а remoteRepo – IP-адрес или DNS-имя узла хранилища. - Войдите в узел как пользователь root, чтобы установить RPM-пакеты Edge.
Примечание. Для установки RPM-пакетов требуется доступ с правами root, но настроить Edge можно и без него. - Отключите SELinux, как описано в разделе Установка утилиты apigee-setup для Edge.
- На удаленном узле установите утилиту apigee-service и зависимости:
> sudo bash /tmp/bootstrap_4.16.05.sh apigeerepohost=remoteRepo:3939 apigeeuser=uNamea pigeepassword=pWord apigeeprotocol=http://
где uName:pWord – имя пользователя и пароль хранилища.
- Если у вас есть задания CRON, настроенные на восстановление Cassandra, отключите их до завершения обновления.
- Используйте 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 – стек BaaS API;
- p = API BaaS Portal
- ebp – ElasticSearch, API BaaS Stack и API BaaS Portal на одном узле.
- Протестируйте обновление, запустив утилиту apigee-validate, Протестируйте установку.
Порядок обновления машин
Порядок обновления компьютеров в установке Edge важен. При обновлении важно учитывать следующее:
- Прежде чем обновлять другие узлы, необходимо обновить все узлы Cassandra и ZooKeeper.
- Вы должны обновить все узлы qpidd и postgresql, прежде чем обновлять узлы Router и Message Processor.
- Для любого компьютера с несколькими компонентами Edge (Management Server, Message Processor, Router, QPID Server, Postgres Server) используйте параметр -c edge, чтобы обновить их все одновременно.
- Если в инструкции указано, что действие нужно выполнить на нескольких компьютерах, делайте это в заданном порядке.
- Отдельного шага для обновления монетизации нет. Он обновляется, если вы указываете параметр -c edge.
- После обновления узла маршрутизатора необходимо удалить все файлы из каталога /opt/nginx/conf.d, а затем перезапустить маршрутизатор.
Для автономной установки на одном хосте
- Обновите компьютер 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 и номеров узлов приведен в разделе Топологии установки.
- Обновите 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
- Удалите все файлы в каталоге /opt/nginx/conf.d:
- Обновите пользовательский интерфейс на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с пятью хостами
Список топологий Edge и номеров узлов приведен в разделе Топологии установки.
- Обновите 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
- Удалите все файлы в каталоге /opt/nginx/conf.d:
- Обновите пользовательский интерфейс на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с девятью хостами
Список топологий Edge и номеров узлов приведен в разделе Топологии установки.
- Обновите 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
- Удалите все файлы в каталоге /opt/nginx/conf.d:
- Обновите пользовательский интерфейс на компьютере 1:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с 13 хостами
Список топологий Edge и номеров узлов приведен в разделе Топологии установки.
- Обновите 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
- Удалите все файлы в каталоге /opt/nginx/conf.d:
- Обновите пользовательский интерфейс на компьютерах 6 и 7:
> /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
Для кластерной установки с 12 хостами
Список топологий Edge и номеров узлов приведен в разделе Топологии установки.
- Обновите 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
- Удалите все файлы в каталоге /opt/nginx/conf.d:
- Машины 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 и номеров узлов приведен в разделе Топологии установки.
- Обновите 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 и номеров узлов приведен в разделе Топологии установки.
- Обновите 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 Stack на компьютерах 4, 5 и 6:
> /opt/apigee/apigee-setup/bin/update.sh -c b -f configFile - Обновите портал API BaaS на компьютере 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
- Удалите все файлы в каталоге /opt/nginx/conf.d:
- Интерфейс