디버깅은 왜부터 시작
BashPilot은 뭔가 건드리기 전에 이벤트, 로그, 영향받은 워크로드의 설명을 읽습니다. 맹목적인 재시작이 아닌 실제 원인을 얻으며, 수정은 같은 대화에서 진단 후입니다.
직접 편집할 YAML도 없고 기억할 kubectl도 없습니다. 결과를 설명하면 BashPilot는 주의 깊은 운영자가 걷는 것과 동일한 길을 걷습니다.
"checkout-api를 6으로 확장하고 롤아웃을 확인하세요." 팀원에게 말하는 방식으로 평범한 말입니다.
무엇이든 만지기 전에 API에서 바로 포드, 이벤트 및 현재 복제본을 가져옵니다.
검토된 카탈로그에서 정확한 작업을 선택합니다. 즉석에서 만든 YAML도 없고 추측도 없습니다.
노드를 드레이닝하거나 워크로드를 삭제하면 먼저 명시적인 예가 나올 때까지 기다립니다.
범위가 지정된 서비스 계정을 통해 클러스터에 변경사항을 적용합니다.
포드가 준비될 때까지 관찰한 다음 변경된 내용을 정확하게 보여줍니다.
매일 만지는 물체에 대한 심층적인 기본 적용 범위. 이것은 전체 목록이 아닌 맛보기입니다.
모든 Kubernetes 운영자는 실패를 알고 있습니다. BashPilot는 실제 증거를 읽고 원인을 수정한 후 회복을 확인합니다.
이벤트와 마지막 로그를 읽고, 실제 원인을 찾고, 수정 사항을 적용하고 포드가 계속 작동하는 것을 지켜봅니다.
메모리 제한 적중을 발견하고 요청 및 제한 크기를 적절하게 조정한 다음 롤아웃을 깔끔하게 다시 시작합니다.
이미지 태그, 레지스트리 인증 및 가져오기 비밀을 확인하고 가져오기를 차단하는 모든 항목을 삭제합니다.
롤아웃 상태와 실패한 Pod를 검사한 다음 차단을 해제하거나 마지막 양호한 버전으로 롤백합니다.
리소스 부족, 오염, PVC 누락 등 일정을 계획하지 않는 이유를 찾아 삭제합니다.
노드 상태를 읽고 이를 안전하게 차단하고 비운 다음 다른 곳에서 워크로드 일정을 다시 조정합니다.
BashPilot은 뭔가 건드리기 전에 이벤트, 로그, 영향받은 워크로드의 설명을 읽습니다. 맹목적인 재시작이 아닌 실제 원인을 얻으며, 수정은 같은 대화에서 진단 후입니다.
롤아웃은 안정될 때까지 지켜보며, 롤백은 한 문장입니다. 노드 드레인처럼 실행 중인 서비스를 중단할 수 있는 모든 것은 먼저 승인을 멈추고 기다립니다.
에이전트는 컨트롤 플레인에 이미 있는 클러스터 인증 정보를 사용합니다. 업로드되지 않으며, 복사되지 않으며, 에이전트를 제거하면 접근이 끝납니다.
팀이 라이브 클러스터 근처에 BashPilot를 두는 이유는 범위가 지정되고 중단되기 전에 묻고 모든 변경 사항을 증명하기 때문입니다.
에이전트는 제어 영역 노드에서 실행되며 이미 거기에 있는 사용자 인증 정보를 사용합니다. 아무것도 업로드되지 않았고, 아무것도 복사되지 않았습니다.
서비스 계정에서 허용하는 작업만 수행할 수 있습니다. 당신이 편안하게 느끼는 범위를 정확하게 부여하고, 그 범위를 초과할 수 없습니다.
노드 드레이닝, 워크로드 삭제 또는 0으로 크기 조정은 명시적인 확인을 위해 항상 일시 중지됩니다.
모든 변경 후에는 출시 및 리소스 상태를 다시 읽습니다. 완료는 깨끗한 종료 코드가 아니라 클러스터에서 준비가 완료되었음을 의미합니다.
모든 작업과 그 결과가 기록되므로 무엇이 변경되었는지, 언제, 왜 변경되었는지 항상 알 수 있습니다.
에이전트는 TLS를 통해 폴링하고 인바운드 포트를 열지 않습니다. 클러스터에는 스캐너가 도달할 수 있는 것이 없습니다.
에이전트가 컨트롤 플레인 노드에서 로컬 kubectl 접근으로 실행할 수 있는 어떤 클러스터든: k3s, kubeadm 클러스터, 싱글 노드 랩, 자체 관리 프로덕션 설정 등.
아니요. 이것이 설계의 요점입니다. 에이전트는 이미 컨트롤 플레인에 있는 인증 정보를 사용하고, 머신을 떠나지 않습니다.
승인 후에만 가능합니다. 배포 삭제나 노드 드레인처럼 파괴적인 작업은 실행 전에 항상 확인 카드를 표시합니다.
일상 작업으로는 대부분 그렇습니다. 원할 때 kubectl을 계속 사용할 수 있습니다. BashPilot은 일상을 더 빠르고 변경 기록을 유지합니다.