Мне нужна помощь с запросом ClickHouse, которому требуется доступ к данным Google Cloud Storage (GCS) из изолированной среды AWS. Вот подробное описание проблемы:
Текущая настройка
Среда : кластер AWS с воздушным зазором.
Прокси: собственный прокси-сервер Golang, работающий на экземпляре EC2 с доступом в Интернет< /p>
Прокси Конфигурация: HTTPS_PROXY=http://10.0.x.x:8080
Запрос
Мы пытаемся выполнить следующий запрос ClickHouse, чтобы вставить данные из сегмента GCS:
INSERT INTO my_clickhouse_table (
column_1, column_2, column_3 ... column_n
)
SELECT
column_1, column_2, column_3 ... column_n
FROM gcs(
'https://storage.googleapis.com/test_buc ... 82.parquet',
'access_key_id',
'secret_access_key'
)
Проблема
Хотя конфигурация прокси работает для создания клиентов BigQuery и GCS в приложениях на основе Python внутри модуля , происходит сбой при выполнении вышеуказанного запроса ClickHouse. Запрос не может получить доступ к сегменту GCS. Вызов API https://storage.googleapis.com не проходит через прокси-сервер и блокируется.
Требование
Мой запрос должен быть выполнен и получить данные из файла GCS. Поскольку это защищенная среда, связь https://storage.googleapis.com должна осуществляться через прокси.
Нужны ли какие-либо конкретные настройки или конфигурации в ClickHouse для маршрутизации запросов GCS через прокси-сервер? ? Я не смог найти ничего в документе.
Вот ссылка из документа, которая бесполезна в приведенном выше сценарии:
Поддержка HTTP-прокси
ClickHouse Connect добавляет базовую поддержку HTTP-прокси с использованием библиотеки urllib 3
. Он распознает стандартные переменные среды HTTP_PROXY и HTTPS_PROXY
. Обратите внимание, что использование этих переменных среды
будет применяться к любому клиенту, созданному с помощью метода
clickhouse_connect.get_client. В качестве альтернативы, чтобы настроить
клиент, вы можете использовать аргументы http_proxy или https_proxy` метода
get_client. Подробную информацию о реализации поддержки HTTP-прокси
см. в документации urllib3.
Ссылка: https://clickhouse.com/docs/ en/integrations/python#http-proxy-support
В AWS (с воздушным зазором — нет внешнего доступа в Интернет, но есть доступ через прокси):
Приложение в модуле K8S
Сервер Clickhouse в настройке K8S
В GCP :
Корзина GCS, в которой находятся данные.
Случай использования — получение данных из этой области. GCS в Clickhouse через прокси
Я также пробовал использовать приведенный ниже код, но он не сработал:
ch_client = clickhouse_connect.get_client(
host = 'localhost',
port = 8123,
username = 'default',
password = '',
http_proxy='http://10.0.x.x:8080',
https_proxy='http://10.0.x.x:8080'
)
query = """
select * FROM
gcs('https://storage.googleapis.com/test_buc ... der/16-01-
2025_18:08:35/data-127823782.parquet', 'access-key', 'secret-key')
"""
result = ch_client.query(query)
Также пробовал установить переменную env, но безрезультатно.
os.environ['HTTPS_PROXY'] = "http://10.0.x.x:8080"
Подробнее здесь: https://stackoverflow.com/questions/793 ... -via-proxy
Интеграция ClickHouse GCS в изолированный кластер AWS через прокси ⇐ Python
Программы на Python
-
Anonymous
1737399468
Anonymous
Мне нужна помощь с запросом ClickHouse, которому требуется доступ к данным Google Cloud Storage (GCS) из изолированной среды AWS. Вот подробное описание проблемы:
[b]Текущая настройка[/b]
[b]Среда[/b] : кластер AWS с воздушным зазором.
[b]Прокси[/b]: собственный прокси-сервер Golang, работающий на экземпляре EC2 с доступом в Интернет< /p>
[b]Прокси Конфигурация[/b]: HTTPS_PROXY=http://10.0.x.x:8080
[b]Запрос[/b]
Мы пытаемся выполнить следующий запрос ClickHouse, чтобы вставить данные из сегмента GCS:
INSERT INTO my_clickhouse_table (
column_1, column_2, column_3 ... column_n
)
SELECT
column_1, column_2, column_3 ... column_n
FROM gcs(
'https://storage.googleapis.com/test_bucket/my_folder/16-01-2025_18:08:35/data-127823782.parquet',
'access_key_id',
'secret_access_key'
)
[b]Проблема[/b]
Хотя конфигурация прокси работает для создания клиентов BigQuery и GCS в приложениях на основе Python внутри модуля , происходит сбой при выполнении вышеуказанного запроса ClickHouse. Запрос не может получить доступ к сегменту GCS. Вызов API https://storage.googleapis.com не проходит через прокси-сервер и блокируется.
[b]Требование[/b]
Мой запрос должен быть выполнен и получить данные из файла GCS. Поскольку это защищенная среда, связь https://storage.googleapis.com должна осуществляться через прокси.
Нужны ли какие-либо конкретные настройки или конфигурации в ClickHouse для маршрутизации запросов GCS через прокси-сервер? ? Я не смог найти ничего в документе.
Вот ссылка из документа, которая бесполезна в приведенном выше сценарии:
[b]Поддержка HTTP-прокси[/b]
ClickHouse Connect добавляет базовую поддержку HTTP-прокси с использованием библиотеки urllib 3
. Он распознает стандартные переменные среды HTTP_PROXY и HTTPS_PROXY
. Обратите внимание, что использование этих переменных среды
будет применяться к любому клиенту, созданному с помощью метода
clickhouse_connect.get_client. В качестве альтернативы, чтобы настроить
клиент, вы можете использовать аргументы http_proxy или https_proxy` метода
get_client. Подробную информацию о реализации поддержки HTTP-прокси
см. в документации urllib3.
Ссылка: https://clickhouse.com/docs/ en/integrations/python#http-proxy-support
[b]В AWS (с воздушным зазором — нет внешнего доступа в Интернет, но есть доступ через прокси):[/b]
Приложение в модуле K8S
Сервер Clickhouse в настройке K8S
[b]В GCP :[/b]
Корзина GCS, в которой находятся данные.
[b]Случай использования — получение данных из этой области. GCS в Clickhouse через прокси[/b]
Я также пробовал использовать приведенный ниже код, но он не сработал:
ch_client = clickhouse_connect.get_client(
host = 'localhost',
port = 8123,
username = 'default',
password = '',
http_proxy='http://10.0.x.x:8080',
https_proxy='http://10.0.x.x:8080'
)
query = """
select * FROM
gcs('https://storage.googleapis.com/test_bucket/my_folder/16-01-
2025_18:08:35/data-127823782.parquet', 'access-key', 'secret-key')
"""
result = ch_client.query(query)
Также пробовал установить переменную env, но безрезультатно.
os.environ['HTTPS_PROXY'] = "http://10.0.x.x:8080"
Подробнее здесь: [url]https://stackoverflow.com/questions/79372313/clickhouse-gcs-integration-in-air-gapped-aws-cluster-via-proxy[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия