목록전체 글 (206)
클라우드 엔지니어 꿈나무
[student@workstation ~]$ ssh student@servera [student@servera ~]$ su - [root@servera ~]# dnf install httpd mod_ssl [root@servera ~]# echo 'I am servera' > /var/www/html/index.html [root@servera ~]# systemctl enable --now httpd [root@servera ~]# exit [student@servera ~]$ exit [student@workstation ~]$ curl http://servera.lab.example.com [student@workstation ~]$ curl -k http://servera.lab.example.c..
부팅 중 Ctrl+ Alt +Del => 시스템 재부팅 하기 창이 뜨면 e 버튼을 눌러 편집 편집창 중 linux 열 맨 끝 부분에 systemd.unit=emergeny.target 추가 후, Ctrl+x 로 저장하여 부팅 하기와 같은 창이 출력되면 root 비밀번호 기입 # mount mount 된 부분이 ro 로 read only로 된 것을 확인할 수 있음. 이 부분을 rw로 수정 # mount -o remount,rw / # mount -a => /etc/fstab 파일에 나열되어 있고 아직 마운트 되지 않은 모든 파일 시스템을 마운트 # vi /etc/fstab 잘못된 줄 제거 혹은 주석 처리 # systemctl daemon-reload # mount a # systemctl reboot
비밀번호 복구Ctrl+Alt+Del => 부트 로더 메뉴 => 엔터 키를 제외한 다른 키 입력하여 카운트 다운 중단하기 창이 뜨면 e를 눌러 편집 linux 행 열 마지막 부분에 rd.break 입력 후, ctrl+x 로 저장 sh-5.1# mount -o remount,rw /sysroot => 읽기, 쓰기로 리마운트 (그 이전에는 read only로 설정) sh-5.1# chroot /sysroot => /를 /sysroot로 바꿔줌 sh-5.1# touch /.autorelabel => selinux 새로 라벨링 sh-5.1# exit sh-5.1# exit (exit 두 번 입력) 새로운 비밀 번호 입력창 출력되면 비밀번호 입력
리소스 제한을 걸지 않으면 pod 하나가 cpu(core)와 memory를 다 쓸 수 있음pod가 실제 cpu memory를 얼마나 쓰는지 확인하고 제한이 필요특정 컨테이너 하나를 실행하기 위해 scheduler가 node 들 중 택 1 해서 배치할 때 request/limit을 통해서 resource 제한 가능. ex) cpu는 500mc memory 100mb 여유가 있는 곳 배치 요청resource request : 파드를 실행하기 위한 최소한의 리소스 양을 요청resource Limits : 파드가 사용할 수 있는 최대 리소스 양을 제한Memory limit 을 초과하는 경우, 사용되는 파드를 종료하여 다시 스케쥴링 # vi pod-nginx-resources.yamlapiVersion:..
디스크 파티셔닝 : 논리 스토리지 파티션으로 분할 1. MBR 파티션 체계 : 최대 15개의 파티션 생성 가능, 디스크 크기는 최대 2 TiB 2. GPT 파이션 체계 : 최대 128개의 파티션 생성 가능, 디스크 크기는 최대 80억 테비바이트(TiB) 파티션 관리 fdisk 는 저장을 안 하면 적용이 되지 않지만 parted는 바로바로 적용되니 유의할 것 # parted /dev/vdb mklabel msdos (MBR로 생성) # parted /dev/vdb mklabel gpt (GPT로 생성) => 처음에만 설정 # parted /dev/vdb xfs : RHEL 7부터 사용, 더 큰 파일에 용이, inode 더 많이 만들 수 있음 (inode : 파일시스템에서 만들 수 있는 파일의 개수) (pa..
1. serverb 시스템에 student 사용자로 로그인한 후, root 사용자로 전환 2. workstation 시스템의 웹 브라우저에서 http://serverb/lab.html 웹 페이지를 확인 You do not have permission to access this resource 오류 메세지 출력 확인 3. Apache 서비스에서 웹 콘텐츠를 제공하지 못하도록 하는 SELinux 문제를 조사하고 식별 4. 새 HTTP 문서 디렉터리와 원본 HTTP 문서 디렉터리의 SELinux 컨텍스트를 표시. Apache 서버 에서 웹 콘텐츠를 제공하지 못하도록 하는 SElinux 문제를 해결 5. Apache 서버에서 이제 웹 콘텐츠를 제공할 수 있는지 확인 6. workstation 시스템에 stude..
1. nodejs 어플리케이션 컨테이너 만들기 : hellojs 2. 우분투 기반의 웹 서버 컨테이너 만들기 3. 만들어 놓은 컨테이너 배포하기 1. nodejs 어플리케이션 컨테이너 만들기 : hellojs $ vi hello.js const http = require('http'); #http 서비스 지원 const os = require('os'); #os 서비스 지원 console.log("Test server starting..."); #hello js 실행될 떄 로그메세지 출력값 var handler = function(request, response) { console.log("Received request from " + request.connection.remoteAddress); res..
docker file 쉽고, 간단, 명확한 구문을 가진 text file로 TOP DOWN 해석 컨테이너 이미지를 생성할 수 있는 고유의 지시어를 가짐 대소문자 구분하지 않으나 가독성을 위하여 사용함 DOCKER 문법 # : comment FROM : 컨테이너의 BASE IMAGE (운영 환경) MAINTAINER : 이미지를 생성한 사람의 이름 및 정보 LABEL : 컨테이너 이미지에 컨테이너의 정보를 저장 RUN : 컨테이너 빌드를 위해 base image에서 실행할 commands COPY : 컨테이너 빌드 시, 호스트의 파일을 컨테이너로 복사 ADD : 컨테이너 빌드 시, 호스트의 파일(tar, url 포함)을 컨테이너로 복사 WORKDIR : 컨테이너 빌드 시, 명령이 실행될 작업 디렉터리 설정..
/var/lib/docker/overlay2 => 컨테이너 이미지 레이어가 들어가는 곳 # root $ guru # cd /var/lib/docker/overlay2 # $ ls -l $ docker pull nginx # ls -l nginx 다운로드 후, 이미지 $ docker run --name web -d -p 80:80 nginx $ docker ps $ curl localhost:80 $ docker stop web $ docker rm web ( docker stop web + docker rm web f= docker rm -f web) $ docker rmi nginx
튜닝 프로파일 조정tuned 데몬 : 특정 워크노드 요구 사항을 반영하는 튜닝 프로파일을 사용하여 튜닝 조정/usr/lib/tuned 및 /etc/tuned (우선 순위 /etc/tuned > /usr/lib/tuned 이므로 적용하려면 /etc/tuned에 저장)sysctl : 시스템 커널의 파라미터 설정을 확인하고 변경-a : 현재 커널 파라미터 설정 조회 # tuned-adm active => 현재 활성 상태인 튜닝 프로파일 확인# tuned-adm profile_info network-latency => tuned-admi profile_info 명령어로 지정된 프로필에 대한 정보 조회# tuned-adm profile throughput-performance => 튜닝 요구 사항에 더 잘 맞는 ..