Edge для частного облака версии 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_имя_пользователя.log.
Если у пользователя нет доступа к /tmp, утилита update.sh не будет работать.
Обновление без простоя
Обновление без простоя, или последовательное обновление, позволяет обновить установку Edge, не отключая Edge.
Обновление без простоев возможно только при конфигурации с пятью узлами и более.
Чтобы обновить маршрутизатор без простоя, удалите каждый маршрутизатор по очереди из балансировщика нагрузки. Затем обновите маршрутизатор и другие компоненты на том же компьютере, что и маршрутизатор, а затем добавьте маршрутизатор обратно в балансировщик нагрузки.
- Обновите машины в правильном порядке, как описано в разделе "Порядок обновления машин" ниже.
- Когда придет время обновить маршрутизаторы, выберите любой из них и сделайте его недоступным, как описано в следующем разделе "Как сделать маршрутизатор и обработчик сообщений недоступными".
- Обновите выбранный маршрутизатор и все остальные компоненты Edge на том же компьютере, что и маршрутизатор. Во всех конфигурациях Edge маршрутизатор и Message Processor находятся на одном узле.
- Сделайте маршрутизатор снова доступным.
- Повторите шаги 2–4 для остальных маршрутизаторов.
- Продолжите обновление на остальных компьютерах.
Как сделать недоступными маршрутизатор и Message Processor
В рабочей среде у вас будет несколько маршрутизаторов и процессоров сообщений для достижения оптимальной производительности, и вы должны включить/отключить доступность этих маршрутизаторов и процессоров сообщений до/после обновления.
Следующий вызов API позволяет настроить доступность или недоступность узла:
> curl -u adminEmail:pWord -X POST "http://<ms_IP>:8080/v1/servers/UUID" -d "reachable=true|false"
где UUID – это UUID Message Processor или маршрутизатора, а для параметра reachable задано значение true или false.
Если вам нужно определить UUID маршрутизатора, используйте следующую команду cURL:
> curl http://<routerIP>:8081/v1/servers/self
Если вам нужно определить UUID Message Processor, используйте следующую команду cURL:
> curl http://<mpIP>:8082/v1/servers/self
Что нужно сделать до и после обновления:
- На комбинированном узле маршрутизатора и обработчика сообщений:
- Перед обновлением выполните следующие действия:
- Сделайте маршрутизатор недоступным, используя вызов API, показанный выше.
- Сделайте 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, как описано в разделе Установка утилиты Edge apigee-setup.
- Очистите все кеши Yum:
> sudo yum clean all - Скачайте последнюю версию файла 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-setup, используйте apigee-service:
> /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: сервер управления, процессор сообщений, маршрутизатор, сервер QPID, сервер Postgres
- ui = Edge UI
- all – обновить все компоненты на компьютере (используйте только для профиля установки Edge aio или профиля установки API BaaS asa).
- e = ElasticSearch
- b – стек API BaaS;
- 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, как описано в разделе Установка утилиты Edge apigee-setup.
- Установите утилиту apigee-service Edge и зависимости из каталога /tmp/repos:
> sudo bash /tmp/repos/bootstrap_4.16.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
Обратите внимание, что в этой команде указан путь к каталогу репозиториев.
- На узле с локальным репозиторием используйте следующую команду, чтобы упаковать локальный репозиторий
в один TAR-файл с именем /opt/apigee/data/apigee-mirror/apigee-4.16.05.tar.gz:
-
Чтобы установить apigee-service с помощью веб-сервера Nginx:
- Настройте веб-сервер Nginx, как описано в разделе "Установка из репозитория с помощью веб-сервера Nginx" статьи Установка компонентов Edge на узле.
- На удаленном узле скачайте файл Edge bootstrap_4.16.05.sh в каталог /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, как описано в разделе Установка утилиты Edge apigee-setup.
- На удаленном узле установите утилиту apigee-service Edge и зависимости:
> sudo bash /tmp/bootstrap_4.16.05.sh apigeerepohost=remoteRepo:3939 apigeeuser=uNamea pigeepassword=pWord apigeeprotocol=http://
где uName:pWord – имя пользователя и пароль репозитория.
- Если они есть, отключите все задания CRON, настроенные на выполнение операции восстановления в Cassandra, до завершения обновления.
- Чтобы обновить утилиту apigee-setup, используйте apigee-service:
> /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: сервер управления, процессор сообщений, маршрутизатор, сервер QPID, сервер Postgres
- ui = Edge UI
- all – обновить все компоненты на компьютере (используйте только для профиля установки Edge aio или профиля установки API BaaS asa).
- e = ElasticSearch
- b – стек API BaaS;
- p = API BaaS Portal
- ebp = ElasticSearch, API BaaS Stack и API BaaS Portal на одном узле
- Проверьте обновление, запустив утилиту apigee-validate, Test the install (Проверить установку).
Порядок обновления машин
Порядок обновления машин в установке Edge имеет важное значение. При обновлении важно учитывать следующие факторы:
- Прежде чем обновлять другие узлы, необходимо обновить все узлы Cassandra и ZooKeeper.
- Перед обновлением узлов маршрутизатора и Message Processor необходимо обновить все узлы qpidd и postgresql.
- Для любого компьютера с несколькими компонентами Edge (сервер управления, обработчик сообщений, маршрутизатор, сервер QPID, сервер Postgres) используйте параметр "-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/* - Перезапустите пограничный маршрутизатор:
> /<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 на компьютере 2 и компьютере 1:
> /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 - На узлах 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/* - Перезапустите маршрутизатор Edge:
> /<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 на 7 хостов
Список топологий 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, сервер управления, Message Processor, маршрутизатор.
- На всех узлах маршрутизатора:
- Удалите все файлы в каталоге /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:
- Интерфейс