DevOps는 특정 도구 하나를 뜻하는 말이 아니다. 개발, 빌드, 배포, 운영이 하나의 흐름으로 이어지는 방식을 의미한다. 이 흐름을 제대로 이해하려면 Docker나 Kubernetes보다 먼저 Linux, Shell, CLI, Git 감각을 익히는 편이 훨씬 자연스럽다.
최근에는 여기에 AI까지 결합되면서 Agentic DevOps라는 흐름도 등장하고 있다. AI 에이전트가 명령 초안, 코드 생성, 파이프라인 보조를 수행할 수 있지만, 최종 검증과 판단은 여전히 사람이 해야 한다.
AI 에이전트가 파이프라인 단계를 보조하는 방식이다. 예를 들어 배포 스크립트 초안 작성, 로그 분석, 장애 대응 가이드 생성 같은 작업을 자동화할 수 있다.
하지만 중요한 원칙은 분명하다.
즉, AI 초안 + 인간 검증이 기본 원칙이다.
Docker와 Kubernetes도 결국 터미널 위에서 명령을 실행하고, Git 저장소를 기준으로 변경 이력을 관리한다. CLI와 Git 감각이 없으면 컨테이너 환경을 다루더라도 표면만 사용하는 수준에 머물기 쉽다.
docker build, docker run 같은 작업은 모두 CLI 명령이다.현대 DevOps 도구 대부분은 Linux 관점에서 이해하는 것이 가장 자연스럽다. 클라우드 서버, 컨테이너 이미지, CI/CD 런너 대부분이 Linux 기반이기 때문이다.
이 모든 과정에서 Linux 파일 시스템과 프로세스 이해가 필요하다.
Linux는 모든 것을 파일로 다룬다. 최상위 루트(/)에서 시작해 트리 구조로 디렉터리가 펼쳐진다. 경로를 이해해야 명령이 의미를 가진다.
/
|-- home
|-- etc
`-- var
`-- log
/home/user : 일반 사용자의 작업 공간/etc : 시스템 설정 파일 위치/var/log : 로그 파일 저장 위치권한은 보통 세 주체를 기준으로 관리된다.
DevOps 실습에서 권한 오류가 발생하면 가장 먼저 소유자와 권한을 확인해야 한다.
ls -la
chown user:group app.py
chmod 644 config.env
chmod 755 deploy.sh
chownchmod프로세스는 실행 중인 프로그램이다. 웹 서버, 데이터베이스, 배치 작업 모두 프로세스로 동작한다. 장애 분석의 시작도 결국 프로세스 이해에서 출발한다.
&를 붙여 터미널을 점유하지 않고 실행Shell은 사용자의 명령을 운영체제에 전달하는 인터페이스다. 터미널에서 입력한 텍스트를 해석하고 실행 결과를 출력한다.
bashzsh현재 사용 중인 Shell은 아래처럼 확인할 수 있다.
echo $SHELL
pwd
ls
ls -la
cd /home/ubuntu
cd ..
pwd : 현재 위치 출력ls : 파일 목록 확인ls -la : 숨김 파일과 상세 권한까지 표시cd : 디렉터리 이동mkdir myproject
touch app.log
mkdir -p app/src/config
touch index.js
mkdir : 디렉터리 생성mkdir -p : 중간 경로까지 한 번에 생성touch : 빈 파일 생성cp app.py app_backup.py
mv app.py src/app.py
cp -r project project_backup
mv oldname.py newname.py
cp : 파일 복사cp -r : 디렉터리 재귀 복사mv : 이동 또는 이름 변경rm file.txt
rmdir empty_dir
rm -r old_project
rm -rf node_modules
rm : 파일 삭제rmdir : 빈 디렉터리 삭제rm -r : 디렉터리와 내부 파일 삭제rm -rf : 매우 강력하므로 신중하게 사용cat config.txt
cat -n app.log
grep "ERROR" app.log
grep -n "ERROR" app.log
grep -r "config" .
cat : 파일 내용 출력cat -n : 줄 번호 포함 출력grep : 특정 문자열 검색grep -r : 디렉터리 전체 재귀 검색ps -ef
top
kill 2341
kill -9 2341
ps -ef : 실행 중인 프로세스 목록 확인top : 실시간 프로세스 상태 확인kill : PID 기준 프로세스 종료kill -9 : 강제 종료chmod 755 deploy.sh
chmod 644 config.env
chown ubuntu app.py
chown ubuntu:devops app.py
chmod -R 755 scripts
chmod : 권한 변경chown : 소유자와 그룹 변경-R : 하위 항목까지 재귀 적용DevOps를 제대로 배우고 싶다면 Docker부터 붙잡기보다 먼저 아래 순서로 기반을 다지는 편이 훨씬 효과적이다.
결국 강한 DevOps 역량은 화려한 도구보다 운영체제를 이해하고, 명령을 다루고, 변경 이력을 관리하는 기본기에서 나온다.
| Kubernetes ConfigMap, Secret, Ingress 제대로 이해하기 — 앱이 뜨는 것과 운영 가능한 것은 다르다 (0) | 2026.04.27 |
|---|---|
| 분산 시스템의 핵심: 클러스터와 아키텍처, 초보 개발자도 쉽게 이해하기 (0) | 2026.04.27 |
| 쿠버네티스(Kubernetes) 핵심 이해: 아키텍처와 클러스터 기초 완벽 가이드 (0) | 2026.04.26 |
| Docker 입문 완전정리: 이미지 한 번에 이해하기 (0) | 2026.04.23 |
| Docker 입문자를 위한 핵심 정리: 이미지, 컨테이너, docker run까지 (1) | 2026.04.22 |