✔️ 컨테이너란 ? 컨테이너란 호스트 OS 상에 논리적인 구획을 만들고 어플리케이션을 작동시키기 위해 필요한 라이브러리나 어플리케이션 등을 하나로 모아 마치 별도의 서버인 것처럼 사용할 수 있게 만든 것이다. 개별 SW의 실행 환경을 독립적으로 운용할 수 있도록 다른 실행 환경과의 간섭을 막고 실행의 독립성을 확보해주는 운영체제 수준의 격리 기술을 말한다. 호스트 OS의 리소스를 논리적으로 분리시키고, 여러개의 컨테이너가 공유하며 사용한다. 컨테이너는 오버헤드가 적기 때문에 가볍고 고속으로 작동하는 것이 특징이다. ✔️ VM vs 컨테이너 VM (Virtual Machine) 공통적으로 하나의 서버가 있고 한 서버에는 HostOS (맥, 리눅스, 윈도우)가 올라간다. VM의 경우 호스트OS에 대해 VM을..
들어가기 앞서 ..! [네트워킹] MAC 주소 들어가기 앞서 .. LAN 카드(NIC, Network Interface Card)는 두대 이상의 컴퓨터로 네트워크를 구성하기위해 외부 네트워크와 빠른 속도로 데이터를 송수신할 수 있게 컴퓨터 내에 설치하는 확장 카드를 nice-engineer.tistory.com 네트워크 통신을 위해서는 MAC 주소를 알아야 한다. IP 주소로 MAC 주소를 알기 위해서는 IP 주소를 MAC으로 바꾸는 ARP (Address Resolution Protocol) 과정이 필요하다. 일단 들어가기 앞서 개괄적으로 통신 방식에 대한 다이어그램을 눈에 찍고 가자 ~ ✅ Unicast란 ? one-to-one - 출발지와 목적지가 정확해야 하는 일대일 통신이다. 대상의 MAC ad..
✅ DHCP란 ? DHCP는 Dynamic Host Configration Protocol의 약자이다. DHCP란 호스트의 IP 주소와 각종 TCP/IP 프로토콜의 기본 설정을 클라이언트에게 자동적으로 제공해주는 프로토콜을 말한다. 네트워크에서 컴퓨터에 자동으로 네임 서버 주소, IP 주소, 게이트웨이 주소를 할당해주는 것을 의미하며, 해당 클라이언트에게 일정 기간 임대를 하는 동적 주소 할당 프로토콜이다. ✅ DHCP 구성 1) DHCP 서버 DHCP 서버는 네트워크 인터페이스를 위해 IP 주소를 가지고 있는, 서버에서 실행되는 프로그램이다. 일정한 범위의 IP 주소를 다른 클라이언트에게 할당하여 자동으로 설정하게 해주는 역할을 한다. DHCP 서버는 클라이언트에게 할당된 IP 주소를 변경없이 유지해 ..
✅ 리눅스 네트워크 관리 ✅ 네트워크 진단 명령어 ifconfig ifconfig는 interface config의 약자로 네트워크 인터페이스 관련 명령어로 설정하거나 직접 확인하는 명령어이다. ifconfig 명령으로 설정한 것은 시스템을 재부팅하면 그 정보가 사라진다. 따라서 지속적으로 유지하려면 /etc/rc.d/rc.local 파일에 위의 설정을 입력해놓거나 /etc/sysconfig/network-scripts/ifcfg-eth0 파일에 설정해놓아야 한다. ifconfig [interface] [address] [up/down] [옵션] 옵션 설명 interface NIC (Network Interface Card)를 말하며, 보통 랜(LAN) 카드 또는 이더넷 (Ethernet) 카드라 한다...
✅ Flask란 무엇인가 ?! 핵심만 말하자면 간단한 웹 사이트 또는 간단한 API 서버를 만드는 데 특화되어 있는 Python (Micro) Web Framework이다. 클라우드 컴퓨팅의 발달로 Docker, K8s 와 접목해 소규모 컨테이너 단위로 기능 별 개발을 한 뒤, 한꺼번에 배포하는 방식 혹은 배포 후 기능을 추가하는 식으로 사용하고 있다. ✅ Micro Web Framework 란 ? Micro : 가벼운 기능, 쉽게 배우고, 가볍게 사용할 수 있으며 확장성이 높다. Framework : 라이브러리 그 이상의 의미로 어플리케이션의 핵심이 되는 기술이라고 보면 된다. ✅ Flask도 MVP 패턴을 가진다. Flask도 MVC 패턴을 따른다. 웬만한 Web Framework들은 모두 MVC 패..
✅ 리눅스 패키지란 ? 리눅스 패키지 (Linux Package)란 리눅스 시스템에서 소프트웨어를 실행하는데 필요한 파일들 (실행 파일, 설정 파일, 라이브러리 등)이 담겨있는 설치 파일 묶음이다. 패키지 종류는 소스 패키지 (Source Package)와 바이너리 패키지 (Binary Package)가 있다. ✅ 소스 패키지 vs 바이너리 패키지 1. 소스 패키지 소스 코드가 들어있는 패키지로 컴파일 과정을 통해 바이너리 파일로 만들어야 실행할 수 있다. 즉, 소스 패키지는 설치할 때 컴파일 작업도 진행되므로 설치 시간이 길고 컴파일 작업 과정에서 오류가 발생할 수 있다. 2. 바이너리 패키지 성공적으로 컴파일된 바이너리 파일이 들어있는 패키지이다. 이미 컴파일이 되어 있으나 소스 패키지에 비해 설치 ..