Spec-Zone.ru › Chef 17

Работа с прокси

[редактировать на GitHub]

В среде, требующей прокси для выхода в Интернет, многие команды Chef не будут работать, пока они не будут правильно настроены. Чтобы настроить Chef для работы в среде, требующей прокси, установите переменные окружения http_proxy, https_proxy, ftp_proxy, и/или no_proxy, чтобы указать настройки прокси с использованием строчных значений.

Microsoft Windows

Для определения текущего прокси-сервера на платформе Microsoft Windows:

  1. Откройте Свойства Интернета.
  2. Откройте Подключения.
  3. Откройте Параметры сети LAN.
  4. Просмотрите параметр Прокси-сервер. Если это поле пустое, прокси-сервер может быть недоступен.

Для настройки прокси-настроек в Microsoft Windows:

  1. Откройте Свойства системы.
  2. Откройте Переменные среды.
  3. Откройте Системные переменные.
  4. Установите http_proxy и https_proxy в расположение вашего прокси-сервера. Это значение ДОЛЖНО быть строчным.

Linux

Для определения текущего прокси-сервера на платформах macOS и Linux проверьте переменные окружения. Выполните следующее:

env | grep -i http_proxy

Если переменная окружения установлена, она ДОЛЖНА быть строчной. Если нет, добавьте строчную версию этой переменной прокси в оболочку (например, ~/.bashrc) с помощью одной (или нескольких) из следующих команд.

Для HTTP:

export http_proxy=http://myproxy.com:3168

Для HTTPS:

export https_proxy=http://myproxy.com:3168

Для FTP:

export ftp_proxy=ftp://myproxy.com:3168

Настройки прокси

Настройки прокси определяются в конфигурационных файлах для Chef Infra Client и для knife и могут быть указаны для HTTP, HTTPS и FTP.

HTTP

Используйте следующие настройки в файлах client.rb или config.rb для сред, использующих прокси HTTP:

Настройка Описание
http_proxy Прокси-сервер для подключений HTTP. Значение по умолчанию: nil.
http_proxy_pass Пароль для прокси-сервера при использовании прокси-сервером подключения HTTP. Значение по умолчанию: nil.
http_proxy_user Имя пользователя прокси-сервера при использовании прокси-сервером подключения HTTP. Значение по умолчанию: nil.

HTTPS

Используйте следующие настройки в файлах client.rb или config.rb для сред, использующих прокси HTTPS:

Настройка Описание
https_proxy Прокси-сервер для подключений HTTPS. Значение по умолчанию: nil.
https_proxy_pass Пароль для прокси-сервера при использовании прокси-сервером подключения HTTPS. Значение по умолчанию: nil.
https_proxy_user Имя пользователя прокси-сервера при использовании прокси-сервером подключения HTTPS. Значение по умолчанию: nil.

FTP

Используйте следующие настройки в файлах client.rb или config.rb для сред, использующих прокси FTP:

Настройка Описание
ftp_proxy Прокси-сервер для подключений FTP.
ftp_proxy_pass Пароль для прокси-сервера при использовании прокси-сервером подключения FTP. Значение по умолчанию: nil.
ftp_proxy_user Имя пользователя прокси-сервера при использовании прокси-сервером подключения FTP. Значение по умолчанию: nil.

Без прокси

Настройка no_proxy используется для указания адресов, для которых прокси не должен использоваться. Это может быть один адрес или список адресов, разделенных запятыми.

Пример:

no_proxy 'test.example.com,test.example2.com,test.example3.com'

Примечание

В списке no_proxy могут использоваться подстановочные знаки, например no_proxy '*.*.example.*', однако во многих ситуациях необходимо явно указывать имена хостов (то есть «без подстановочных знаков»).

Переменные окружения

Рассмотрите следующие моменты для ситуаций, когда переменные окружения используются для установки прокси:

  • Настройки прокси могут не поддерживаться всеми приложениями. Например, настройки прокси могут игнорироваться основным приложением при указании источника ftp с ресурсом remote_file. Рассмотрите обходной путь. Например, в этой ситуации попробуйте выполнить wget с URL ftp вместо.
  • Настройки прокси могут поддерживаться приложениями несогласованно. Например, поведение настройки no_proxy может не работать с определёнными приложениями при использовании подстановочных знаков. Рассмотрите указание имён хостов без использования подстановочных знаков.

ENV

Если http_proxy, https_proxy, ftp_proxy, или no_proxy установлены в файле client.rb, но не установлены в ENV, Chef Infra Client настраивает переменную ENV на основе этих (и связанных) настроек. Например:

http_proxy 'http://proxy.example.org:8080'
http_proxy_user 'myself'
http_proxy_pass 'Password1'

Или альтернативный способ определения прокси (если предыдущий вариант не работает):

http_proxy 'http://myself:Password1@proxy.example.org:8080'

будет установлено в:

ENV['http_proxy'] = 'http://myself:Password1@proxy.example.org:8080'

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/proxies/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API