본문 바로가기
WIKI 기술 지식 베이스

Squid 프록시 사용하기 (Using a Squid proxy)

원문 보기 위키 갱신

직접 인터넷 접근이 제한된 환경에서 Squid를 forward proxy로 설정해 Datadog Agent 트래픽을 HTTP/HTTPS 프록시 서버로 라우팅하는 방법을 알려드릴게요.

출처: 문서

본문

Squid는 HTTP, HTTPS, FTP 등을 지원하는 웹용 forward proxy예요. Windows를 포함해 대부분의 운영체제에서 실행되며 GNU GPL 라이선스로 배포돼요. 네트워크에 이미 실행 중인 웹 프록시가 없다면 Squid가 간단한 선택이에요. 이미 기존 프록시 서버가 있다면 Squid를 사용할 필요가 없어요. 대신 Agent 프록시 구성의 지침을 따르세요.

Squid로 프록시 전달

Squid를 구성해 트래픽을 Datadog으로 보내려면 아래 지침을 따라 Squid를 구성하고, squid 서비스를 시작한 뒤 Datadog Agent를 구성하고 재시작하세요.

트래픽을 Datadog으로만 보내도록 Squid 구성하기

내부 Agent와 Datadog 양쪽에 연결이 가능한 호스트에 Squid를 설치하세요. 운영체제의 패키지 매니저를 사용하거나 Squid 프로젝트 페이지에서 직접 소프트웨어를 설치하세요.

Squid를 구성하려면 구성 파일을 편집하세요. 이 파일은 보통 Linux의 /etc/squid/squid.conf 또는 Windows의 C:\squid\etc\squid.conf에 있어요. 다른 운영체제는 Agent 구성 디렉터리를 참고하세요.

Squid가 로컬 트래픽을 수락하고 필요한 Datadog intake로 전달할 수 있도록 squid.conf 구성 파일을 편집하세요.

가장 간단한 방법은 와일드카드를 사용해 Datadog 사이트의 모든 하위 도메인을 허용하는 거예요:

http_port 0.0.0.0:3128

acl local src 127.0.0.1/32

acl Datadog dstdomain .<YOUR_DATADOG_SITE>

http_access allow Datadog
http_access allow local manager

또는 더 세밀한 제어가 필요하다면 와일드카드 대신 각 Datadog 엔드포인트를 명시적으로 나열할 수 있어요. Agent가 도달해야 하는 전체 도메인 및 IP 범위 목록은 네트워크 트래픽을 참고하세요. 예:

아래 예시에는 Datadog 엔드포인트의 일부만 포함돼 있어요. 사용하는 Datadog 기능에 필요한 모든 도메인을 포함해야 해요. 전체 목록은 Network Traffic을 참고하세요.

http_port 0.0.0.0:3128

acl local src 127.0.0.1/32

acl Datadog dstdomain agent.<YOUR_DATADOG_SITE>
acl Datadog dstdomain process.<YOUR_DATADOG_SITE>
acl Datadog dstdomain logs.<YOUR_DATADOG_SITE>
acl Datadog dstdomain api.<YOUR_DATADOG_SITE>

http_access allow Datadog
http_access allow local manager

Squid 시작하기

새 구성이 적용되도록 Squid를 시작(또는 재시작)하세요.

Linux

sudo systemctl start squid

Squid가 이미 실행 중이라면 다음 명령어로 대신 Squid를 재시작하세요:

sudo systemctl restart squid

Windows

Windows에서 Squid를 구성한다면 먼저 Squid를 시스템 서비스로 구성해야 해요. 그런 다음 관리자 명령 프롬프트에서 다음을 실행할 수 있어요:

net start squid

Squid가 이미 실행 중이라면 다음 명령어로 대신 Squid를 재시작하세요:

net stop squid
net start squid

Datadog Agent 구성하기

호스트 — Agent의 구성 파일(datadog.yaml)을 수정해 다음을 포함하세요:

proxy:
  http: http://127.0.0.1:3128
  https: http://127.0.0.1:3128

이 변경 사항을 저장한 뒤 Agent를 재시작하세요.

Operator — DatadogAgent CR을 수정해 다음을 포함하세요:

spec:
  global:
    proxy:
      http: http://squid-proxy.proxy-namespace.svc.cluster.local:3128
      https: http://squid-proxy.proxy-namespace.svc.cluster.local:3128

Helm — values.yaml을 수정해 다음을 포함하세요:

datadog:
  env:
    - name: DD_PROXY_HTTP
      value: http://squid-proxy.proxy-namespace.svc.cluster.local:3128
    - name: DD_PROXY_HTTPS
      value: http://squid-proxy.proxy-namespace.svc.cluster.local:3128

Infrastructure Overview를 확인해 Datadog이 Agent에서 데이터를 받고 있는지 검증하세요.

더 알아보기 (Learn more)

도움이 되는 추가 문서, 링크, 글: