Как установить утилиту apigee-setup для Edge

Чтобы установить Edge на узле, сначала установите утилиту apigee-setup Edge. Если ваши узлы не подключены к внешнему интернету, вам также необходимо установить локальную копию репозитория Apigee.

Каталог установки по умолчанию: /opt/apigee

Edge устанавливает все файлы в каталоге /opt/apigee. Этот каталог изменить нельзя. Однако при необходимости вы можете создать символическую ссылку, чтобы сопоставить /opt/apigee с другим местоположением. Подробнее о требованиях к установке…

Требование: отключите SELinux

Чтобы установить утилиту Edge apigee-setup или любые компоненты Edge, необходимо отключить SELinux или перевести его в разрешительный режим. При необходимости после установки Edge можно снова включить SELinux.

  • Чтобы временно перевести SELinux в разрешительный режим, выполните следующую команду:
    • В операционной системе Linux 6.x:
      sudo echo 0 > /selinux/enforce

      Чтобы снова включить SELinux после установки Edge:

      sudo echo 1 > /selinux/enforce
    • На устройстве с ОС Linux 7.x:
      sudo setenforce 0

      Чтобы снова включить SELinux после установки Edge:

      sudo setenforce 1
  • Чтобы навсегда отключить SELinux или перевести его в разрешающий режим:
    1. Откройте файл /etc/sysconfig/selinux в редакторе.
    2. Установите значение SELINUX=disabled или SELINUX=permissive.
    3. Сохраните изменения.
    4. Перезапустите узел.
    5. При необходимости после установки Edge снова включите SELinux, повторив описанную выше процедуру и задав значение SELINUX=enabled.

Требования: включите репозиторий EPEL

Чтобы установить или обновить Edge или создать локальный репозиторий, необходимо включить дополнительные пакеты для Enterprise Linux (EPEL). Команда зависит от версии RedHat/CentOS:

  • Если вы используете Red Hat Enterprise Linux (RHEL) 8.0, ознакомьтесь с предварительными требованиями для RHEL 8.

  • Для Red Hat/CentOS/Oracle 7.x:
    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    sudo rpm -ivh epel-release-latest-7.noarch.rpm
  • Для Red Hat/CentOS/Oracle 6.x:
    wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
    sudo rpm -ivh epel-release-latest-6.noarch.rpm
  • Для AWS-2:
    sudo amazon-linux-extras install epel -y
    sudo yum-config-manager --enable epel

Требования: проверьте версию библиотеки libdb4 на RedHat 7.4 и CentOS 7.4

На RedHat 7.4 и CentOS 7.4 перед установкой проверьте версию пакетов RPM libdb4. Для Edge требуется версия 4.8, а некоторые версии RedHat 7.4 и CentOS 7.4 поставляются с более поздней версией. Если у вас более поздняя версия, удалите ее, и установщик Edge установит версию 4.8.

Чтобы проверить версию, используйте следующую команду:

rpm -qa | grep libdb4

Если вы видите, что версия RPM libdb4 более поздняя, чем 4.8, удалите ее.

Требования для RHEL 8

Если вы устанавливаете Edge на сервер под управлением Red Hat Enterprise Linux (RHEL) 8, выполните следующие действия перед установкой:

  1. Включите Extra Packages for Enterprise Linux (EPEL):
    sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
  2. Отключите Postgres и Nginx:
    sudo dnf module disable postgresql
    sudo dnf module disable nginx
  3. Установите Python 2:
    sudo dnf install -y python2

Установите утилиту Edge apigee-setup на узле с внешним подключением к интернету.

Чтобы установить Edge на узле с внешним подключением к интернету:

  1. Получите у Apigee имя пользователя и пароль, которые вы используете для доступа к репозиторию Apigee. Если у вас есть учетные данные username:password для FTP-сайта Apigee, вы можете использовать их.
  2. Войдите в узел как root, чтобы установить пакеты RPM Edge.
  3. Установите yum-utils и yum-plugin-priorities.
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities
  4. Отключить SELinux.
  5. Включите репозиторий EPEL.
  6. Проверьте версию libdb4.
  7. Если вы устанавливаете ПО на RHEL 8, выполните предварительные требования для RHEL 8.
  8. Если вы устанавливаете продукт на Oracle 7.x, выполните следующую команду:
    sudo yum-config-manager --enable ol7_optional_latest
  9. Если вы устанавливаете ПО на AWS, выполните следующие команды yum-configure-manager:
    yum update rh-amazon-rhui-client.noarch
    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  10. Скачайте файл Edge bootstrap_4.52.01.sh в /tmp/bootstrap_4.52.01.sh:
    curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh
  11. Установите утилиту apigee-service Edge и зависимости:
    sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    где uName:pWord – имя пользователя и пароль, полученные от Apigee. Если вы не укажете pWord, вам будет предложено ввести его.

    По умолчанию установщик проверяет, установлена ли у вас Java 1.8. Если нет, он установит его. Используйте параметр JAVA_FIX, чтобы указать, как обрабатывать установку Java. JAVA_FIX принимает следующие значения:

    • I. Установите OpenJDK 1.8 (по умолчанию)
    • C: продолжить без установки Java
    • Q: Выйти. В этом случае вам нужно будет установить Java самостоятельно.

    Утилита apigee-service создает файл /etc/yum.repos.d/apigee.repo, в котором определяется репозиторий Apigee. Чтобы посмотреть файл определений, используйте команду:

    cat /etc/yum.repos.d/apigee.repo

    Чтобы посмотреть содержимое репозитория, используйте команду:

    sudo yum -v repolist 'apigee*'
  12. Используйте apigee-service, чтобы установить утилиту apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  13. Используйте apigee-setup, чтобы установить и настроить компоненты Edge на узле. Подробнее о том, как установить компоненты Edge на узле…

Устранение неполадок

При попытке установить ПО на узел с внешним подключением к интернету может возникнуть одна или несколько следующих ошибок:

Cannot open: https:// : @ software.apigee.com//apigee-repo-version.rpm

bootstrap.sh: Error: Repo configuration failed

error: package package_name is not installed

В таблице ниже приведены возможные решения для некоторых из этих ошибок.

Тип ошибки Возможные решения
Пароль содержит недопустимые символы. Не используйте в пароле Apigee специальные символы.
Проблемы с подключением

Проверьте подключение к сети, выполнив следующую команду: ncat

nc -v software.apigee.com 443

Вы увидите сообщение, похожее на приведенное ниже:

Connection to software.apigee.com 443 port [tcp/https] succeeded!

Если у вас не установлено приложение nc, выполните следующую команду telnet:

telnet software.apigee.com 443

Если команды выполнены успешно, вы можете использовать сочетание клавиш CTRL+C, чтобы прервать открытое подключение.

Если какая-либо из команд не выполнится, значит у вас ограниченное или отсутствующее подключение к сети. Обратитесь к администратору сети.

Неправильные учетные данные

Убедитесь, что вы правильно указали имя пользователя и пароль.

Например, проверьте, возникает ли ошибка при попытке использовать следующую команду с именем пользователя и паролем Apigee:

curl -i -u username:password https://software.apigee.com/apigee-repo.rpm
Проблемы с прокси-сервером В вашей локальной конфигурации используется исходящий прокси-сервер HTTP, и вы не распространили эту конфигурацию на менеджер пакетов yum. Проверьте переменные среды:
echo $http_proxy
echo $https_proxy

Для исходящего HTTP-прокси можно использовать один из следующих вариантов:

  • Добавьте конфигурацию HTTP-прокси в /etc/yum.conf.
  • Добавьте глобальную конфигурацию HTTP-прокси в /etc/environment

Как установить утилиту apigee-setup Edge на узел без внешнего подключения к интернету

Если узлы Edge находятся за брандмауэром или по какой-либо другой причине не могут получить доступ к интернету, вам необходимо создать несколько репозиториев или зеркал, содержащих файлы, которые понадобятся во время установки. Эти зеркала должны быть доступны всем узлам. После этого узлы смогут использовать локальные зеркала для установки Edge.

Для установки Apigee Edge на узлы без подключения к интернету требуется доступ к следующим локальным репозиториям:

Как создать локальное хранилище Apigee

Чтобы создать внутренний репозиторий Apigee, вам потребуется узел с внешним доступом к интернету, чтобы скачать RPM-пакеты Edge и зависимости. После создания внутреннего репозитория его можно перенести на другой узел или сделать этот узел доступным для узлов Edge для установки.

После создания локального репозитория Apigee может потребоваться обновить его, добавив файлы последней версии Edge. В следующих разделах рассказывается, как создать локальный репозиторий Apigee и обновить его.

Чтобы создать локальный репозиторий Apigee:

  1. Получите у Apigee имя пользователя и пароль, которые вы используете для доступа к репозиторию Apigee. Если у вас есть имя пользователя и пароль для FTP-сайта Apigee, вы можете использовать их.
  2. Войдите в узел как root, чтобы установить пакеты RPM Edge.
  3. Отключите SELinux, как описано выше.
  4. Скачайте файл Edge bootstrap_4.52.01.sh в /tmp/bootstrap_4.52.01.sh:
    curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh
  5. Установите утилиту apigee-service Edge и зависимости:
    sudo bash /tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    где uName:pWord – имя пользователя и пароль, полученные от Apigee. Если вы не укажете pWord, вам будет предложено ввести его.

  6. Установите утилиту apigee-mirror на узел:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror install
  7. Используйте утилиту apigee-mirror, чтобы синхронизировать репозиторий Apigee с каталогом /opt/apigee/data/apigee-mirror/repos/.

    Чтобы уменьшить размер репозитория, добавьте --only-new-rpms, чтобы скачать только последние RPM.

  8. Необязательно. Если вы хотите установить Edge из локального репозитория на тот же узел, на котором размещен этот репозиторий, сначала выполните следующие команды:
    1. Выполните команду bootstrap_4.52.01.sh из локального репозитория, чтобы установить утилиту apigee-service:
      sudo bash /opt/apigee/data/apigee-mirror/repos/bootstrap_4.52.01.sh apigeeprotocol="file://" apigeerepobasepath=/opt/apigee/data/apigee-mirror/repos
    2. Чтобы установить утилиту apigee-setup, используйте apigee-service:
      /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
    3. Используйте apigee-setup, чтобы установить и настроить компоненты Edge на узле. Подробнее о том, как установить компоненты Edge на узле…

Как установить apigee-setup на удаленном узле из локального репозитория

Установить Edge из локального репозитория можно двумя способами. Вы можете:

  • Создайте TAR-файл репозитория, скопируйте его в узел и установите Edge из этого файла.
  • Установите веб-сервер на узле с локальным репозиторием, чтобы другие узлы могли получить к нему доступ. Apigee предоставляет веб-сервер Nginx, но вы можете использовать и собственный веб-сервер.

Как установить приложение из файла .tar

Чтобы установить приложение из файла .tar:

  1. На узле с локальным репозиторием используйте следующую команду, чтобы упаковать локальный репозиторий в один файл .tar с именем /opt/apigee/data/apigee-mirror/apigee-4.52.01.tar.gz:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
  2. Скопируйте TAR-файл на узел, на котором вы хотите установить Edge. Например, скопируйте его в каталог /tmp на новом узле.
  3. На новом узле отключите SELinux, как описано выше.
  4. На новом узле убедитесь, что у вас есть доступ к локальному репозиторию утилиты Yum и репозиторию EPEL.
  5. Убедитесь, что все внешние репозитории отключены (так и должно быть, поскольку вы устанавливаете ПО на устройство без доступа к интернету):
    sudo yum repolist

    Все внешние репозитории должны быть отключены, а локальный репозиторий Apigee и внутренние репозитории – включены.

  6. На новом узле установите yum-utils и yum-plugin-priorities из локального репозитория.
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities

    Чтобы вы могли установить инструменты Yum, ваша команда по эксплуатации или другая группа в организации должна настроить локальный репозиторий.

  7. На новом узле проверьте версию libdb4, как описано выше.
  8. Если вы устанавливаете продукт на Oracle 7.x, выполните следующую команду:
    sudo yum-config-manager --enable ol7_optional_latest
  9. Если вы устанавливаете ПО на AWS, выполните следующую команду yum-configure-manager:
    sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
  10. На новом узле распакуйте файл в каталог /tmp:
    tar -xzf apigee-4.52.01.tar.gz

    Эта команда создаст новый каталог с именем repos в каталоге, содержащем файл .tar. Пример: /tmp/repos.

  11. Установите утилиту apigee-service Edge и зависимости из /tmp/repos:
    sudo bash /tmp/repos/bootstrap_4.52.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

    Обратите внимание, что в этой команде указан путь к каталогу repos.

  12. Чтобы установить утилиту apigee-setup, используйте apigee-service:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  13. Используйте apigee-setup, чтобы установить и настроить компоненты Edge на узле. Подробнее о том, как установить компоненты Edge на узле…

Установка из репозитория с помощью веб-сервера Nginx

Чтобы установить из репозитория с помощью веб-сервера Nginx:

  1. Установите веб-сервер Nginx на узле репозитория:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror nginxconfig
  2. По умолчанию Nginx настроен на использование localhost в качестве имени сервера и порта 3939. Чтобы изменить эти значения:
    1. Откройте файл /opt/apigee/customer/application/mirror.properties в редакторе. Создайте файл, если он не существует.
    2. При необходимости задайте следующие значения:
      conf_apigee_mirror_listen_port=3939
      conf_apigee_mirror_server_name=localhost
    3. Перезапустите Nginx:
      /opt/nginx/scripts/apigee-nginx restart
  3. По умолчанию для репозитория требуется имя пользователя и пароль admin:admin. Чтобы изменить эти учетные данные, задайте следующие переменные среды:
    MIRROR_USERNAME=uName
    MIRROR_PASSWORD=pWord
  4. На новом узле установите yum-utils и yum-plugin-priorities.
    sudo yum install yum-utils
    sudo yum install yum-plugin-priorities
  5. На новом узле отключите SELinux, как описано выше.
  6. На новом узле убедитесь, что локальный репозиторий EPEL включен.
  7. На новом узле проверьте версию libdb4, как описано выше.
  8. На удаленном узле скачайте файл Edge bootstrap_4.52.01.sh в каталог /tmp/bootstrap_4.52.01.sh:
    curl http://uName:pWord@remoteRepo:3939/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh

    где uName:pWord – это имя пользователя и пароль, которые вы задали выше для репозитория, а remoteRepo – IP-адрес или имя DNS узла репозитория.

  9. На удаленном узле установите утилиту Edge apigee-service и зависимости:
    sudo bash /tmp/bootstrap_4.52.01.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

    где uName:pWord – имя пользователя и пароль репозитория.

  10. На удаленном узле используйте apigee-service, чтобы установить утилиту apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup install
  11. Используйте apigee-setup, чтобы установить и настроить компоненты Edge на удаленном узле. Подробнее о том, как установить компоненты Edge на узле…

Как обновить локальный репозиторий Apigee

Чтобы обновить репозиторий, скачайте последнюю версию файла bootstrap_4.52.01.sh и выполните новую синхронизацию.

Чтобы обновить репозиторий:

  1. Скачайте файл Edge bootstrap_4.52.01.sh в /tmp/bootstrap_4.52.01.sh:
    curl https://software.apigee.com/bootstrap_4.52.01.sh -o /tmp/bootstrap_4.52.01.sh
  2. Запустите файл Edge bootstrap_4.52.01.sh:
    sudo bash/tmp/bootstrap_4.52.01.sh apigeeuser=uName apigeepassword=pWord

    где uName:pWord – имя пользователя и пароль, полученные от Apigee. Если вы не укажете pWord, вам будет предложено ввести его.

  3. Обновление apigee-mirror:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror update
  4. Выполните синхронизацию:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
  5. Если вы хотите скопировать весь репозиторий:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync

Как очистить локальный репозиторий Apigee

При очистке локального репозитория удаляются каталоги /opt/apigee/data/apigee-mirror и /var/tmp/yum-apigee-*.

Чтобы очистить локальный репозиторий, используйте следующую команду:

/opt/apigee/apigee-service/bin/apigee-service apigee-mirror clean

Как добавить или обновить Edge 4.16.0x/4.17.0x в репозитории 4.52.01

Если вам нужно поддерживать установку Edge 4.16.0x или 4.17.0x в репозитории 4.52.01, вы можете создать репозиторий, содержащий все версии. Из этого репозитория можно установить любую версию Edge.

Чтобы добавить 4.16.0x/4.17.0x в репозиторий 4.52.01:

  1. Убедитесь, что у вас установлена утилита apigee-mirror версии 4.52.01:
    /opt/apigee/apigee-service/bin/apigee-service apigee-mirror version

    Вы увидите результат в следующем формате, где xyz – номер сборки:

    apigee-mirror-4.52.01-0.0.xyz
  2. Используйте утилиту apigee-mirror для скачивания Edge 4.16.0x/4.17.0x в репозиторий. Обратите внимание, что перед командой нужно указать нужную версию:
    apigeereleasever=4.17.01 /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms

    Используйте эту же команду, чтобы позже обновить репозитории 4.16.0x/4.17.0x, указав необходимые номера версий.

  3. Проверьте структуру каталога /opt/apigee/data/apigee-mirror/repos:
    ls /opt/apigee/data/apigee-mirror/repos

    Вы увидите следующие файлы и каталоги:

    apigee
    apigee-repo-1.0-6.x86_64.rpm
    bootstrap_4.16.01.sh
    bootstrap_4.16.05.sh
    bootstrap_4.17.01.sh
    bootstrap_4.17.05.sh
    bootstrap_4.17.09.sh
    bootstrap_4.18.01.sh
    bootstrap_4.18.05.sh
    bootstrap_4.19.01.sh
    thirdparty

    Обратите внимание, что для всех версий Edge есть файл bootstrap. В каталоге apigee также есть отдельные каталоги для каждой версии Edge.

  4. Чтобы упаковать репозиторий в файл .tar, используйте следующую команду:
    apigeereleasever=4.17.01 /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package

    Эта команда упакует все репозитории версий 4.17.0x и 4.16.0x в один файл .tar. Нельзя упаковать только часть репозитория.

Чтобы установить Edge из локального репозитория или TAR-файла, запустите правильный файл bootstrap, используя одну из следующих команд. В этом примере устанавливается Edge 4.17.01:

  • Если вы устанавливаете приложение из файла TAR, запустите правильный файл bootstrap из репозитория:
    sudo bash /tmp/repos/bootstrap_4.17.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

    Чтобы завершить установку, выполните оставшиеся шаги из раздела "Установка из файла .tar" выше.

  • Если вы устанавливаете веб-сервер Nginx, скачайте и запустите правильный файл bootstrap из репозитория:
    /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.01.sh -o /tmp/bootstrap_4.17.01.sh
    sudo bash /tmp/bootstrap_4.17.01.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

    Чтобы завершить установку, выполните оставшиеся шаги из раздела "Установка из репозитория с помощью веб-сервера Nginx" выше.