04. Archives/독서(18)
-
[인프라 엔지니어의 교과서] 1장 - 인프라 엔지니어의 업무
1장 - 인프라 엔지니어의 업무 인프라 엔지니어에게 요구되는 것 기술력 책임감 정보 수집력 결단력 인프라 엔지니어의 업무 인프라 설계 인프라를 만든 목적 이해 조건을 특정 기준(필요한 기능, 성능)으로 정리 조건에 맞는 기획서, 설계서 작성 책임자 결재 요청 인프라 구축 분류 기기의 운반과 조립 장착 설치 설정 동작 테스트 부하 테스트 인프라 운영 장애 대응 하드웨어 고장 대응 급격한 액세스 증가에 대한 대책 부적절한 권한 설정에 의해 액세스가 불가능한 상황의 해소 수용량 관리 적당한 시기에 인프라의 수용력 재검토 필요 시간이 지나면서 액세스 수나 데이터 양에 변동이 생기기 때문 수용량 증가 → 인프라 추가 수용랑 감소 → 인프라 축소 인프라가 원인이 아닌 문제의 파악 장애 원인이 파악 후, 인프라가 원..
2021.08.01 -
[도커/Docker] Ch2. 도커 엔진 (I)
2.1. 도커 이미지와 컨테이너 도커 엔진의 핵심 - 이미지 - 컨테이너 2.1.1. 도커 이미지 이미지 : 컨테이너를 생성할 때 필요한 요소 ( = 가상 머신 생성 시 사용하는 iso 파일 ) - 여러 계층의 바이너리 파일로 존재 - 컨테이너 생성, 실행 시 읽기 전용으로 사용 - 도커 명령어로 다운로드 가능 -> 별도 설치 필요 X - 이미지 이름 : [저장소 이름]/[이미지 이름]:[태그] 2.1.2. 도커 컨테이너 앞서 다운 받은 이미지로 컨테이너를 생성 -> 해당 이미지의 목적에 맞는 파일시스템, 격리된 시스템 자원 및 네트워크를 사용할 수 있는 독립된 공간 = 컨테이너 특징 - 이미지를 읽기 전용으로 사용하고, 변경된 사항만 컨테이너 계층에 저장 -> 원래 이미지는 영향을 받지 않음 - 생성된..
2021.04.03 -
[도커/Docker] Ch1. 도커란?
1.1. 가상 머신과 도커 컨테이너 가상 머신 : 게스트 운영체제를 사용하기 위한 라이브러리, 커널 등을 전부 포함 장점 : 완벽한 운영체제를 생성할 수 있음 단점 : 이미지가 커서 애플리케이션으로 배포하기 어려움 도커 컨테이너 : 리눅스의 자체기능으로 프로세스 단위의 격리 환경을 만듬 장점 : 이미지 용량 또한 가상 머신에 비해 대폭 감소, 가상화된 공간을 사용할 때의 성능 손실도 거의 없음 1.2. 도커를 시작해야 하는 이유 1.2.1. 애플리케이션의 개발과 배포가 편해짐 도커 컨테이너는 호스트 OS 위에서 실행되는 격리된 공간 -> 컨테이너 내부를 아무리 수정해도 호스트 OS 에는 영향 끼치지 않음 => 독립된 개발 환경을 보장 배포할 때에도 해당 컨테이너를 '도커 이미지'라고 한느 일종의 패키지로..
2021.04.01 -
[도커/Docker] "시작하세요! 도커/쿠버네티스" 정리
여태까지 다양한 프로젝트를 진행해오면서, 개발을 위한 환경을 구축한다는 것이 얼마나 번거롭고 귀찮은 일인지 잘 알고 있다. 특히, 아직도 생각나는게 있다. 예전에 Nvidia 그래픽카드가 달린 한성컴퓨터 보스몬스터 노트북을 쓸 때의 일이다. 강화학습 관련해서 환경을 구축해야했다. 기본 윈도우 환경에서도 얽히고 얽힌 환경변수들과 Nvidia 드라이버 및 다양한 에러들 때문에 도저히 설치가 되지 않았었다. 사실 환경을 구축하는 대부분의 사람들이 우분투 환경에서 설치하기를 권장했지만, 괜히 잘 알지도 못하는 우분투 설치했다가 컴퓨터가 이상해질까봐 설치를 못했었다. 그래서 우분투를 설치하고, 거기에 환경을 구축해두자는 큰 포부를 안고 환경 구축에 들어갔다. 결과는... Nvidia 드라이버와 우분투의 충돌 때문..
2021.03.31 -
[클린 코드 (Clean Code)] Ch6. 객체와 자료 구조
Ch6. 객체와 자료 구조 이 챕터는 전체적으로 잘 이해가 되지 않음 ㅜ 자료 추상화 클래스 혹은 함수 내의 변수와 같은 자료를 세세하게 공개하기 보다는 추상적인 개념으로 표현하는 편이 좋다. 인터페이스나 조회/설정 함수만으로는 추상화가 이뤄지지 않는다. 개발자는 객체가 포함하는 자료를 표현할 가장 좋은 방법을 심각하게 고민해야 한다. 아무 생각 없이 조회/설정 함수를 추가하는 방법이 가장 나쁘다. // 구체적인 Vehicle 클래스 public interface Vehicle { double getFuelTankCapacityInGallons(); double getGallonsOfGasoline(); } // 추상적인 Vehicle 클래스 public interface Vehicle { double ..
2021.01.24 -
[클린 코드 (Clean Code)] Ch5. 형식 맞추기
Ch5. 형식 맞추기 프로그래머라면 형식을 깔끔하게 맞춰 코드를 짜야 한다. 코드 형식을 맞추기 위한 간단한 규칙을 정하고 그 규칙을 착실히 따라야 한다. 팀으로 일한다면 팀이 합의해 규칙을 정하고 모두가 그 규칙을 따라야 한다. 필요하다면 규칙을 자동으로 적용하는 도구를 활용한다. 형식을 맞추는 목적 코드 형식은 중요하다! 코드 형식은 의사소통의 일환. 의사소통은 전문 개발자의 일차적인 의무 적절한 행 길이를 유지하라 일반적으로 큰 파일보다 작은 파일이 이해하기 쉬움 e.g. 한 파일에 200줄 씩으로도 커다란 시스템을 구축할 수 있음 신문 기사처럼 작성하라 아주 좋은 신문 기사를 떠올려보라. 독자는 위에서 아래로 기사를 읽는다. 최상단에 기사를 몇 마디로 요약하는 표제가 나온다. 독자는 표제를 보고서..
2021.01.23