본문 바로가기
반응형

Kubernetes9

[kubernetes] Troubleshooting 오브젝트에 대한 모니터링 (Pending, Crashbackoff..)kubectl describe 용도: 특정 리소스(예: Pod, Service, Deployment 등)의 상태와 세부 정보를 확인출력 정보:리소스의 메타데이터, 이벤트 로그, 상태(Status), 네임스페이스 등 포괄적인 정보.특히 이벤트(Event) 항목을 통해 해당 리소스에 발생한 에러, 경고, 상태 변경 내역 등을 확인사용 시기:오류 디버깅 시 Pod이 왜 Pending 상태에 머물러 있는지, CrashLoopBackOff 같은 상태의 원인을 파악할 때 유용Pod이 제대로 스케줄링되지 않거나, 볼륨 마운트 오류, 네트워크 관련 문제를 확인할 때 사용애플리케이션에 대한 모니터링kubectl logs kubectl logs -c .. 2024. 11. 15.
[kubernetes] REHEL에서 alias, 자동완성 설정하기 alias 설정하기vi ~/.bashrcalias k = kubectl source ~/.bashrcsoft link로 연결하기sudo ln -s /user/local/bin/kubectl /usr/local/bin/k자동완성 설정하기sudo dnf install -y bash-completionsource /etc/profile.d/bash_completion.shsource 2024. 11. 15.
[Docker] 도커의 명시적 관리 Docker Compose docker compose를 사용하는 이유 1. 제어를 단순화한다. : 다중 애플리케이션 환경에서 단일 YAML파일로 다중 컨테이너 애플리케이션을 정의하고 관리할 수 있다. -> 서비스 간 의존성도 정의할 수 있다. -> 환경 간 이식성 : 변수를 지원하여 사용자에 맞게 정의할 수 있음 -> 수평적 확장이 쉬워진다. -> 프로젝트 단위로 네트워크, 볼륨 등의 사용하는 구성을 관리해준다. compose는 이를 캐시하기 때문에 서비스를 재사용하여 환경을 빠르게 사용할 수 있다. 2. 명시적으로 관리할 수 있어 협업의 효율성이 올라간다. Docker Compose 구성 ### 출처 : https://docs.docker.com/compose/compose-application-model/ ### docker-.. 2024. 3. 26.
[Docker] 도커 이미지 빌드 1. 컨테이너 기반으로 도커 빌드 docker commint -m "first-commit" ubuntu my_ubuntu:v1 2. Dockerfile ### ./를 빌드 컨텍스트로 하여 myapp이미지를 빌드 docker build -t myapp:v1 -f example/MyDockerfile ./ Build Context : Dockerfile로부터 이미지빌드에 필요한 정보를 도커 데몬에 전달하기 위한 목적 .dockerignore를 하면 이 폴더는 build context에 제외됨. 2024. 3. 26.
[Docker] Docker 트러블슈팅 container에서 stdout, stderror를 통해 로그가 출력.. 이러한 로그는 1. 로그 Framework를 사용하여 표준 출력을 내보낼 수 있음 2. syslog형식으로 보낼 수 있음 3. Elastisearch와 같은 툴을 사용하여 볼 수 있음 각각 다양한 방식으로 로그를 볼 수 있다. 서버 내에서 로그를 볼 때 다양한 방식으로 로그를 볼 수 있다. ### container 단위 로그 확인 docker logs [container] docker logs --tail 10 [container] docker logs -f [container] docker logs -f -t [container] // 타임스템프 ### docker 단위 로그 확인 docker system events journ.. 2024. 3. 25.
[Docker] 볼륨 설정하기 1. Host Volume Host 디렉토리를 컨테이너의 특정 경로에 마운팅한다. docker run -d \ --name nginx \ -v /opt/html:/usr/share/nginx/html \ nginx ### 읽기 전용으로 설정 docker run -d \ --name nginx \ -v /opt/html:/usr/share/nginx/html:ro \ nginx 2. Volume Container Data Only Container로 데이터를 관리한다. ### data only container 생성 docker run -d \ --name volume-container \ -v /opt/html:/usr/share/nginx/html \ ubuntu:focal ### data only c.. 2024. 3. 25.
[Docker] 엔트리포인트 vs 커맨드 엔트리 포인트 컨테이너가 실행될 때 수행되는 명령어(스크립트) 생략 가능하다. 하지만, 이 커멘드가 정상적으로 실행되지 않으면 컨테이너 종료 커맨드 컨테이너가 실행될 때 수행되는 명령어, 엔트리포인트에 지정된 명령어에 대한 인자값 runtime에 overriden될 수 있다. 예를 틀어서 아래와 같은 도커파일이 있다고 가정하면, FROM ubuntu ENTRYPOINT ["echo", "Hello"] CMD ["world"] Entrypoint에 기본 명령어가 있고, 인자도 있다. CMD에도 echo(entrypoint)에 대한 인자도 있다... 그런데 CMD의 경우는 runtime에 처리되기 때문에 docker rum 명령어에 command를 적는 것에 따라서 overriden이 될 수 있다. dock.. 2024. 3. 25.
[Docker] docker run command 옵션 정리 보통은 compose file로 명확하게 가시성 있게 운영하튼 것이 바람직하지만, 테스트를 위해 잠깐 돌릴 때에는 docker run이 유용하게 사용될 것 같다. docker run에는 여러 옵션들이 있는데 대표적으로 많이 사용하는 명령어를 정리하자. -i : 호스트의 표준 입력을 컨테이너와 연결 -t : TTY 할당: tty는 컴퓨팅에서 표준 입력에 연결된 터미널의 이름을 출력하는 유닉스, 유닉스 계열 운영 체제의 명령어이다. 따라서, 위의 옵션인 -i 와 같이 쓰면 표준 입력과 연결된 컨테이너에 대한 터미널을 표시해주므로 내가 입력하는 것을 터미널로 보면서 작업할 수 있다. --rm : 컨테이너 실행 종료 시 자동 삭제 (테스트로 실행시킬 때 정상적으로 실행되는지 확인만 하고, 리 소스에 문제되지 않.. 2024. 3. 25.
반응형