0Pricing
DevOps Bootcamp · 강의

SSH 파이프라이닝 및 연결 재사용

작업별 오버헤드를 줄입니다.

SSH 파이프라이닝 및 연결 재사용은(는) CoddyKit의 무료 DevOps Bootcamp 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 DevOps Bootcamp 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.

SSH 오버헤드는 누적됩니다

모든 작업에서 새로운 로그인, 파일 복사, SSH를 통한 실행이 필요할 수 있습니다. 이를 많은 작업과 호스트에 반복하면 오버헤드가 실행 시간의 대부분을 차지하게 됩니다.

작업이 일반적으로 실행되는 방식

기본적으로 앤서블은 모듈을 호스트에 복사하고 실행한 다음 정리합니다. 각 단계에는 SSH 왕복 통신 비용이 발생하지만, 이를 피할 수 있는 경우가 많습니다.

파이프라이닝으로 해결

파이프라이닝을 사용하면 앤서블은 먼저 임시 파일을 작성하는 대신 기존 SSH 세션을 통해 모듈을 스트리밍하므로 작업당 연결 횟수가 줄어듭니다.

[ssh_connection]
pipelining = True

requiretty라는 함정

파이프라이닝에는 TTY 없이 sudo를 사용해야 하므로 원격 sudoers가 requiretty를 강제해서는 안 됩니다. 최신 배포판에서는 문제가 없지만, 일부 보안 강화 배포판에서는 조정이 필요합니다.

연결 재사용

OpenSSH의 ControlPersist는 마스터 연결을 계속 열어 두고 이후 작업을 해당 연결을 통해 전달하므로, 매번 새로운 핸드셰이크를 수행하지 않아도 됩니다.

ssh_args 조정

앤서블은 ssh_args를 통해 연결 재사용을 활성화합니다. ControlPersist 값은 마지막 작업이 끝난 뒤 공유 소켓을 얼마 동안 유지할지 정합니다.

[ssh_connection]
ssh_args = -o ControlMaster=auto -o ControlPersist=60s

소켓이 위치하는 곳

공유 연결은 제어 경로 소켓 파일에 유지됩니다. 운영 체제의 소켓 이름 길이 제한을 피하려면 이 경로를 짧게 유지하십시오.

[ssh_connection]
control_path = %(directory)s/%%h-%%p-%%r

파이프라이닝과 재사용 비교

두 기능은 서로 다른 비용을 줄입니다. 파이프라이닝은 하나의 작업 안에서 왕복 통신을 줄이고, ControlPersist는 여러 작업에서 SSH 세션을 재사용합니다.

둘 다 함께 사용

파이프라이닝과 영구 연결은 함께 적용됩니다. 두 기능을 모두 활성화하는 것은 대규모 플레이북에 적용할 수 있는 가장 크면서도 위험이 적은 성능 향상 방법 중 하나입니다.

팩트 수집도 더 빠르게

팩트가 필요하지 않다면 gather_facts: false로 설정하여 설정 모듈을 건너뛰십시오. 그러면 모든 플레이 시작 시 발생하는 비용이 큰 단계를 제거할 수 있습니다.

개선 효과 측정

profile_tasks 콜백을 활성화하여 각 작업의 실행 시간을 측정하십시오. 이 기능은 시간이 정확히 어디에서 소요되는지 보여 주므로 조정한 설정이 실제로 도움이 되었는지 확인할 수 있습니다.

빠른 확인

SSH를 통해 실행하기 전에 각 작업이 임시 파일을 작성하지 않도록 하고 싶습니다.

정리

파이프라이닝을 켜서 왕복 통신을 줄이고, ControlPersist를 사용하여 SSH 세션을 재사용하십시오. 두 기능을 함께 사용하면 대규모 플레이에서 연결 오버헤드를 크게 줄일 수 있습니다. ⚡

자주 묻는 질문

“SSH 파이프라이닝 및 연결 재사용” 강의는 무료인가요?

네 — “SSH 파이프라이닝 및 연결 재사용” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 DevOps Bootcamp 강의 전체를 잠금 해제할 수 있습니다. DevOps Bootcamp 강의에는 총 4개의 강의가 포함되어 있습니다.

“SSH 파이프라이닝 및 연결 재사용”에서 뭘 배우나요?

작업별 오버헤드를 줄입니다. 브라우저에서 직접 실행하는 실습 코드로 DevOps Bootcamp을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

DevOps Bootcamp을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 DevOps Bootcamp은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.

“SSH 파이프라이닝 및 연결 재사용” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 DevOps Bootcamp 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 DevOps Bootcamp 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. forks 및 병렬 처리 조정
  2. 전략: linear, free 및 host_pinned
  3. SSH 파이프라이닝 및 연결 재사용
  4. serial 및 롤링 배치 실행
← DevOps Bootcamp(으)로 돌아가기