Skip to main content

Поддержка этой версии GitHub Enterprise была прекращена 2023-01-18. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, укрепления безопасности и новых функций установите последнюю версию GitHub Enterprise. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.

Установка сервера GitHub Enterprise на Google Cloud Platform

Чтобы установить GitHub Enterprise Server на платформу Google Cloud Platform, необходимо развернуть на компьютере поддерживаемого типа и использовать постоянный стандартный диск или постоянный SSD.

Предварительные требования

Рекомендации по оборудованию

Минимальные требования

Мы рекомендуем использовать разные конфигурации оборудования в зависимости от количества пользовательских лицензий для your GitHub Enterprise Server instance. Если подготовить больше ресурсов, чем минимальные требования, экземпляр будет работать и масштабировать лучше.

Пользовательские лицензииЧисло виртуальных ЦППамятьКорневое хранилищеПодключенное хранилище (data)
Пробная версия, демонстрационная версия или 10 облегченных пользователей432 ГБ200 ГБ150 ГБ
от 10 до 3000848 ГБ200 Мб300 ГБ
от 3000 до 50001264 ГБ200 ГБ500 ГБ
от 5000 до 80001696 ГБ200 ГБ750 ГБ
от 8000 до 10000 и выше20160 ГБ200 ГБ1000 ГБ

Если вы планируете включить GitHub Actions для пользователей экземпляра, требуются дополнительные ресурсы.

Число виртуальных ЦППамятьМаксимальный параллелизм
864 ГБ300 заданий
16128 ГБ700 заданий
32160 ГБ1300 заданий
64256 ГБ2000 заданий
96384 ГБ4000 заданий

Дополнительные сведения об этих требованиях см. в разделе Начало работы с GitHub Actions для GitHub Enterprise Server.

Дополнительные сведения о настройке ресурсов для существующего экземпляра см. в разделах Увеличение емкости хранилища и Увеличение ресурсов ЦП или памяти.

Память

Рекомендуется использовать высокопроизводительный SSD с высокой скоростью операций ввода-вывода в секунду (IOPS) и низкой задержкой для GitHub Enterprise Server. Рабочие нагрузки интенсивно используют ввод-вывод. Если используется гипервизор без операционной системы, рекомендуется напрямую подключить диск или использовать диск из сети хранения данных (SAN).

Для экземпляра требуется постоянный диск данных, отделенный от корневого диска. Подробнее см. в статье Обзор системы.

Чтобы настроить GitHub Actions, необходимо предоставить внешнее хранилище BLOB-объектов. Дополнительные сведения см. в разделе Начало работы с GitHub Actions для GitHub Enterprise Server.

Доступное пространство в корневой файловой системе будет составлять 50 % от общего размера диска. Можно изменить размер корневого диска экземпляра, создав новый экземпляр или используя существующий. Дополнительные сведения см. в разделе Обзор системы и Увеличение емкости хранилища.

ЦП и память

Ресурсы ЦП и памяти, необходимые GitHub Enterprise Server, зависят от уровней действий пользователей, автоматизации и интеграции.

Если планируется включить GitHub Actions для пользователей экземпляра GitHub Enterprise Server, может потребоваться подготовка дополнительных ресурсов ЦП и памяти для экземпляра. Дополнительные сведения см. в разделе Начало работы с GitHub Actions для GitHub Enterprise Server.

При увеличении объема ресурсов ЦП рекомендуется добавить не менее 6,5 ГБ памяти для каждого виртуального ЦП (до 16 виртуальных ЦП), подготовленных для экземпляра. Если используется более 16 виртуальных ЦП, вам не нужно добавлять 6,5 ГБ памяти для каждого виртуального ЦП, но необходимо отслеживать экземпляр, чтобы обеспечить достаточный объем памяти.

Предупреждение. Пользователям рекомендуется настраивать события веб-перехватчика для уведомления внешних систем о действиях на GitHub Enterprise Server. Автоматические проверки изменений или опрос будут негативно влиять на производительность и масштабируемость экземпляра. Дополнительные сведения см. в статье Сведения о веб-перехватчиках.

Дополнительные сведения о мониторинге емкости и производительности GitHub Enterprise Server см. в разделе Мониторинг устройства.

Ресурсы ЦП или памяти экземпляра можно увеличить. Дополнительные сведения см. в разделе Увеличение объема ресурсов ЦП или памяти.

Определение типа компьютера

Перед запуском your GitHub Enterprise Server instance на Google Cloud Platform необходимо определить тип компьютера, который лучше всего соответствует потребностям вашей организации. Минимальные требования для GitHub Enterprise Server см. в статье Минимальные требования.

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

GitHub рекомендует компьютер с высокой памятью общего назначения для GitHub Enterprise Server. Дополнительные сведения см. в разделе Типы компьютеров в документации по Google Compute Engine.

Выбор образа GitHub Enterprise Server

  1. С помощью программы командной строки вычислений gcloud выведите список общедоступных образов GitHub Enterprise Server:

    $ gcloud compute images list --project github-enterprise-public --no-standard-images
  2. Запишите имя образа для последнего образа GCE GitHub Enterprise Server.

Настройка брандмауэра

Виртуальные машины GCE создаются как член сети, которая имеет брандмауэр. Для сети, связанной с виртуальной машиной GitHub Enterprise Server, необходимо настроить брандмауэр, чтобы разрешить необходимые порты, перечисленные в таблице ниже. Дополнительные сведения о правилах брандмауэра на Google Cloud Platform см. в руководстве Google Обзор правил брандмауэра.

  1. Создайте сеть с помощью средства командной строки вычислений gcloud. Дополнительные сведения см. в разделе Создание сетей для вычислений gcloud в документации Google.

    $ gcloud compute networks create NETWORK-NAME --subnet-mode auto
  2. Создайте правило брандмауэра для каждого порта в таблице ниже. Дополнительные сведения см. в разделе Правила брандмауэра для вычислений gcloud в документации Google.

    $ gcloud compute firewall-rules create RULE-NAME \
       --network NETWORK-NAME \
       --allow tcp:22,tcp:25,tcp:80,tcp:122,udp:161,tcp:443,udp:1194,tcp:8080,tcp:8443,tcp:9418,icmp

    В этой таблице определены необходимые порты и то, для чего используется каждый порт.

    ПортСлужбаОписание
    22SSHДоступ к Git по протоколу SSH. Клонирование, получение и отправка операций в поддерживаемые общедоступные и частные репозитории.
    25SMTPПоддержка SMTP с шифрованием (STARTTLS).
    80HTTPДоступ к веб-приложениям. Все запросы перенаправляются на HTTPS-порт при включении SSL.
    122SSHДоступ к оболочке экземпляра. Порт SSH по умолчанию (22) предназначен для сетевого трафика Git+SSH приложения.
    161/UDPSNMPТребуется для работы протокола мониторинга сети.
    443HTTPSДоступ к веб-приложению и Git по протоколу HTTPS.
    1194/UDPVPNБезопасный туннель сети репликации в конфигурации высокого уровня доступности.
    8080HTTPВеб-сайт на основе обычного текста Management Console. Не требуется, если только SSL не отключен вручную.
    8443HTTPSБезопасный веб-доступ Management Console. Требуется для базовой установки и настройки.
    9418GitПростой порт протокола Git. Клонирование и получение операций только в общедоступные репозитории. Взаимодействие по сети без шифрования Если в вашем экземпляре включен частный режим, то открытие этого порта требуется только в том случае, если вы также включили анонимный доступ для чтения Git. Дополнительные сведения см. в разделе Применение политик управления репозиториями в организации.

Выделение статического IP-адреса и его назначение виртуальной машине

Если это производственное устройство, настоятельно рекомендуется зарезервировать статический внешний IP-адрес и назначить его виртуальной машине GitHub Enterprise Server. В противном случае общедоступный IP-адрес виртуальной машины не будет сохранен после перезапуска. Дополнительные сведения см. в руководстве Google Резервирование статического внешнего IP-адреса.

В конфигурациях высокого уровня доступности в рабочей среде основное устройство и устройство-реплика должны назначаться отдельным статическим IP-адресам.

Создание экземпляра GitHub Enterprise Server

Чтобы создать экземпляр GitHub Enterprise Server, необходимо создать экземпляр GCE с вашим образом GitHub Enterprise Server и подключить дополнительный том хранилища для данных экземпляра. Дополнительные сведения см. в разделе Рекомендации в отношении оборудования.

  1. С помощью инструмента командной строки вычислений gcloud создайте диск данных, который будет использоваться в качестве подключенного тома хранилища для данных вашего экземпляра, и настройте размер в зависимости от количества пользовательских лицензий. Дополнительные сведения см. в разделе Создание дисков для вычислений gcloud в документации Google.

    $ gcloud compute disks create DATA-DISK-NAME --size DATA-DISK-SIZE --type DATA-DISK-TYPE --zone ZONE
  2. Затем создайте экземпляр, используя имя образа GitHub Enterprise Server, который вы выбрали, и подключите диск с данными. Дополнительные сведения см. в разделе Создание экземпляров для вычислений gcloud в документации Google.

    $ gcloud compute instances create INSTANCE-NAME \
    --machine-type n1-standard-8 \
    --image GITHUB-ENTERPRISE-IMAGE-NAME \
    --disk name=DATA-DISK-NAME \
    --metadata serial-port-enable=1 \
    --zone ZONE \
    --network NETWORK-NAME \
    --image-project github-enterprise-public

Настройка экземпляра

  1. Скопируйте общедоступное DNS-имя виртуальной машины и вставьте его в адресную строку веб-браузера. 2. В командной строке отправьте файл лицензии и задайте пароль консоли управления. Дополнительные сведения см. в разделе Управление лицензией для GitHub Enterprise. 3. В Management Console настройте и сохраните нужные параметры. Дополнительные сведения см. в разделе Настройка устройства GitHub Enterprise Server.
  2. Экземпляр будет перезапущен автоматически. 1. Нажмите Перейти к экземпляру.

Дополнительные материалы