분류 전체보기
-
[Docker] Docker의 기본 개념 및 실행 흐름Dev Ops/Docker 2023. 1. 21. 19:00
Docker란? : 컨테이너 기반의 오픈소스 가상화 플랫폼 - 다양한 프로그램, 실행 환경을 컨테이너로 추상화하고 동일한 인터페이스를 제공하여 프로그램의 배포와 관리를 단순화 - 백엔드 프로그램, 데이터베이스 서버, 메시지 큐 등 어떤 프로그램도 컨테이너로 추상화 가능 - 조립PC, AWS, Azure, Google cloud 등 어디서든 실행 가능 Docker Container : 격리된 공간에서 프로세스가 동작하는 가상화 기술 중 하나 📍참고: 기존의 가상화 방식 1) OS 가상화 - 호스트 OS 위에 게스트 OS 전체를 가상화하여 사용(VMware, Virtual Box) - 사용법이 간단하지만 무겁고 느려 운영환경에서 사용 불가 2) HVM(CPU 가상화), 반가상화 - 게스트 OS가 필요하지만 ..
-
[CI/CD] Jenkins 기본 개념 및 구성 요소Dev Ops/CI-CD 2023. 1. 21. 18:28
Jenkins란? CI/CD 전반적인 흐름을 관장하는 툴 - 서브버전, Git과 같은 버전 관리 시스템과 연동하여 소스의 커밋을 감지하면 자동적으로 자동화 테스트가 포함된 빌드가 작동되도록 설정 가능 Jenkins 구조 1. Jenkins Master (Server) : Jenkins 서버이자 Jenkins 파이프라인으로 정의된 모든 흐름을 관장하는 컨트롤 서버 - 각 Jenkins Slave들에게 각자의 할 일을 정해주고 분배 [ Jenkins 작업 ] ① Git 등의 리파지토리에서 푸쉬되어 받은 자료를 정기적으로 Jenkins가 확인 ② Jenkins 테스트 과정을 다양한 Jenkins Agent에서 실행시키면서 독자적 테스트 환경을 만듦 ③ Jenkins Agent 통해 얻은 결과물을 Jenkins..
-
[CI/CD] CI, CD, CI/CD 파이프라인 기본 개념Dev Ops/CI-CD 2023. 1. 21. 16:09
CI (Continous Integration, 지속적 통합) : 빌드/테스트의 자동화 과정을 의미 - 애플리케이션에 대한 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 리포지토리에 통합됨 - 커밋할 때마다 빌드와 일련의 자동 테스트가 이루어져 동작을 확인하고 변경해 서로 충돌할 수 있는 문제를 해결 - CI/CD 파이프라인의 첫 번째 단계 CD (Continuous Delivery / Deployment) Continuous Delivery, 지속적 서비스 제공 : 개발자가 애플리케이션에 적용한 변경 사항이 버그 테스트를 거쳐 리포지토리에 자동 업로드되는 것을 의미 - 운영팀은 이 리포지토리에서 애플리케이션을 실시간 프로덕션 환경으로 배포 가능 - 귀찮은 push 작업 없이 최소한의 노력..
-
[AWS] S3 개념 정리 및 작동 방식AWS/Cloud 2023. 1. 21. 15:28
S3란? : Simple Storage Service의 줄임말로 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스 - 데이터를 온라인으로 오브젝트 형태로 저장하는 서비스 S3 객체 스토리지 : 객체로 된 파일을 다루는 저장소 - 별도의 클라이언트나 ActiveX를 통하지 않고 HTTP 프로토콜(restful)로 파일 업로드/다운로드 처리가 가능 - S3 자체로 정적 웹서비스 가능(HTML 파일을 스토리지에 저장하고, 접근) ** 동적 웹페이지 + 정적 웹페이지가 섞여 있을 경우 동적 웹페이지만 EC2에서 서비스하고 정적 웹페이지는 S3를 이용하면 성능을 높이고 비용을 절감할 수 있음 Amazon EBS Amazon S3 패러다임 파일 시스템이 있는 블록 스토리지 객체 스..
-
[AWS] EC2 개념 원리 및 구성 요소AWS/Cloud 2023. 1. 21. 11:46
EC2란? : Amazon Elastic Compute Cloud의 줄임말로 AWS에서 제공하는 클라우드 컴퓨팅 - 하드웨어에 투자할 필요가 없으며, 실제 사용량 만큼 비용 지불 가능(서비스 요금 미리 약정X) - 원하는 수의 가상 서버를 구축하고 보안 및 네트워킹을 구성하여 스토리지를 관리할 수 있음 - EC2에서 확장 또는 축소를 통해 요구 사항 변경 또는 사용량 스파이크를 처리하기 때문에 트래픽을 예측할 필요성 감소 EC2의 구성 (Instance / EBS / AMI) Instance AWS에서 사용하는 가상 컴퓨터, 가상 서버로 연산에 관한 처리를 진행 [인스턴스 유형] - 컴퓨팅, 메모리, 저장 최적화 등 성능 목적에 따라 여러가지 타입을 제공 (https://aws.amazon.com/ko/..
-
[컴퓨터 구조] 고정소수점 VS 부동소수점Computer Science/Computer Architecture 2023. 1. 17. 00:07
들어가기 전 : 이진기수법 컴퓨터는 0과 1로 이루어진 기계어를 사용 ➡️ 이진기수법은 2가 나올 차례가 되면 2를 쓰는 대신 자릿수를 늘려주는 방식 [ 정수부 ] 정수부에서는 10진수를 2로 나눠가면서 1이나 0을 뽑아냄 - 10진수 4 : 2진수 100 - 10진수 8 : 2진수 1000 - 10진수 16 : 2진수 10000 [ 소수부 ] 소수부는 10진수에 2를 곱해가며 1이나 0을 뽑아냄 ※ 0.625의 변환 과정 - 0.625 * 2 = 1.25 ➡️ 1 (나머지 0.25) - 0.25 * 2 = 0.5 ➡️ 0 (나머지 0.5) - 0.5 * 2 = 1.0 ➡️ 1 (나머지 0) ➡️ 최종 0.101 고정소수점 방식 (Fixed Point) - 소수점이 찍힐 위치를 미리 정해놓고 소수를 표현..
-
[컴퓨터 구조] 컴퓨터 하드웨어 기본 구조 (CPU, 메모리)Computer Science/Computer Architecture 2023. 1. 9. 21:59
디지털 컴퓨터란? 정의 - 이진 시스템(0과 1)을 사용하여 계산을 수행하는 디지털 시스템 - 비트의 그룹을 사용하여 숫자, 문자 및 기타 정보를 표시하거나 처리 구성 요소 - 하드웨어: 컴퓨터를 구성하는 기계적 장치 - 소프트웨어: 하드웨어의 동작을 지시하고 제어하는 명령어 집합 구분 이름 설명 하드웨어 CPU 중앙처리장치, 컴퓨터 그 자체로 정의. 산술 논리 처리와 데이터의 저장, 제어 기능 수행 주변장치 메모리(RAM/ROM), 저장 장치(Storage, HDD, SSD), 입출력 장치(IO devices) 소프트웨어 운영체제 OS, Operating System (Windows, macOS 등) 시스템 프로그램 유틸리티, 데이터베이스, Editor(윈도우-멀티패드), OS에 포함되거나 연결되어 시..
-
[네트워크] DNS와 CDNComputer Science/Network 2023. 1. 3. 23:32
DNS (Domain Name Service) 란? URL을 숫자로 된 IP 주소로 해석해주는 Network Service - "www.tistory.com" => 도메인 이름 (www는 호스트 이름(서버 이름)) - 특정 URL로 접속했을 때 DNS 서버가 해당 웹 사이트 서버의 IP 주소를 알려줌 (이름 해석) DNS Server : DNS Service를 제공하는 서버 - IP에 대한 도메인을 저장하고 있음(일종의 전화번호부) - DNS Server가 모여 DNS(Domain Name System)을 구성 (분산형 데이터베이스 시스템) - 보통 UDP 프로토콜을 이용(많은 요청을 받아들이기 때문에 TCP 사용시 부하가 생길 수 있음, 데이터의 신뢰성이 중요할 경우에 사용) 주소 변환 과정 1. 컴퓨..