IP주소와 설정 IPv4 주소인터넷에 사용되는 각종 장비들에 부여하는 고유의 주소이다. 주로 IANA(인터넷할당번호관리기관)에서 KISA 등 각 ISP(KT, SKT)를 거쳐 최종 사용자에게 할당된다. 종류는 IPv4, IPv6 가 있지만, 보편적으로 IP주소 라고 하면 IPv4를 가리킨다. IP주소 부여하기라우터에 IP 주소를 부여할 수 있는데, 아래 규칙을 지키며 부여하면 된다.하나의 인터페이스에 하나의 IP 주소를 부여한다인터페이스가 다르면 네트워크 주소가 달라야 한다위 그림과 같이 설정할 것이다.R1 설정en // 관리자모드로 진입conf t // 전체 설정 모드로 진입interface f 0/0 // 포트번호 0/0 에 대한 설정ip addresses 172.16.1.1 255.255.0.0 // 해당 IP.. 기본 명령어 기본 설정처음 접속할 때 셋업모드가 나올 수 있다공장 출하 시관리자 모드에서 setup 명령어 사용 시설정 파일을 삭제 후 재부팅할 때no 누르고 빠져나오면 된다. 본 실습처럼 에뮬레이터는 셋업을 건너뛴다.사용자 - 관리자 - 라인설정 순으로 들어가야한다 기본 조작? = 사용할 수 있는 명령어를 보여준다 명령어 뒤에 붙이면 가능한 옵션을 보여준다 enable = 관리자 모드로 들어간다exit = 상위 모드로 빠져나온다end / crt + z = 관리자 모드로 빠져나온다방향키 ↑↓ = 이전에사용한 명령어를 보여준다 전체 설정 모드configure terminal = 전체 설정 모드 진입hostname "name" = 장비(호스트)의 이름을 지정할 수 있다no ip domian-lookup= 시스코장비에.. 통신 장비의 구조 내부 구조CPU일반적인 PC나 서버와 마찬가지의 역할로, 각종 연산과 시스템 제어 역할을 한다. DRAM현재 사용중인 OS의 코드가 저장되고 각 포트에서 필요한 버퍼를 제공한다.MAC 테이블, 라우터 테이블도 저장된다.장비가 재부팅되면 초기화된다. 플래시 메모리 (Flash Memory)PC나 서버에서 하드디스크에 해당하는 것이 통신장비의 플래시 메모리다. 실질적인 저장장치이고 OS가 저장되며, 장비에 따라 설정내용이 저장되기도 한다. NVRAMNVRAM 에는 장비의 동작에 필요한 IP주소, 라우팅/스위칭 정책 등 설정 파일이 저장된다. NVRAM은 재부팅되어도 저장내용이 사라지지않는다. ROM (Read Only Memory)OS를 구동시키기 위한 코드와 통신장비 장애발생 시 복구를 위한 최소한의 .. 자주 보는 프로토콜과 포트 프로토콜 및 포트ICMP 1FTP20, 21SSH22Telnet23SMTP25DNS53DHCP67, 68HTTP80HTTPS443 OSI 참조 모델 OSI 참조 모델네트워크 이론을 설명할 때 프로토콜과 함께 가장 베이스로 깔리는 모델이다.국제 표준화 기구(ISO)에서 만들었고 컴퓨터 간의 통신을 논리적으로 7개의 계층으로 분류하여 각 계층별 기능을 정의한 것이다. 프로토콜 (Protocol)각 통신장비들이 사용하는 통신 규약(약속)을 의미한다.~~이러한 신호를 보내면 ~~~~이렇게 해석하고 처리할게 를 약속처럼 정의해 놓은 것이다. 1 계층 - 물리 계층물리적으로 연결된 두 장비 간에 통신 신호를 전송하는 역할을 한다.자세하게 알면 좋지만 그렇게까지 필요는 없고 물리적으로 연결되어 0과 1 신호를 주고받는다 정도 이해하면 된다.말 그대로 정말 찌릿 찌릿 하며 전기 신호를 전송하는 단계이다. 2 계층 - 데이터 링크 계층데이터 링크 계층은 라우.. Docker Port Docker Port컨테이너는 가상 머신처럼 가상 IP를 부여받는다. 도커에서는 기본적으로 172.17.0.x 를 순차적으로 할당한다.아무 설정도 하지 않았다면, 기본적으로 컨테이너는 도커가 설치된 호스트에서만 접근 가능하다. 컨테이너를 외부에서 접속하기 위해서는 -p 옵션을 사용하여 컨테이너의 포트를 호스트의 포트에 매핑해야 한다.형식은 [호스트의 포트]:[컨테이너의 포트] 이다.예를 들어, 호스트의 7777번 포트를 컨테이너의 80번 포트와 연결하려면 7777:80 과 같이 입력하면 된다.호스트의 특정 IP를 사용하려면 192.168.56.100:7777:80 처럼 바인딩 할 IP와 포트를 명시하면 된다.만약 여러 개의 포트를 개방하려면 -p 옵션을 여러 번 사용하여 설정하면 된다. 원래는 d.. Docker container 목록, 삭제 컨테이너 목록docker ps 명령어를 사용하면 실행중인 컨테이너들을 볼 수 있다.-a 옵션을 추가하면 정지된 컨테이너 포함 모든 컨테이너를 볼 수 있다CONTAINER ID : 컨테이너에 부여된 고유의 IDIMAGE : 컨테이너를 생성할 때 사용된 이미지COMMAND : 컨테이너가 시작될 때 실행될 명령어 /bin/bash기 때문에 -it로 터미널 사용이 가능했다.CREATED : 컨테이너가 생성되고 난 뒤 얼마나 지났는지 나타낸다.PORTS : 컨테이너가 개방한 포트와 호스트에 연결한 포트를 나타낸다.NAMES : 컨테이너의 이름이다 --name으로 지정하지 않으면 임의로 생성한다. docker rename으로 변경 가능하다. 컨테이너 삭제더 이상 사용하지 않는 컨테이너를 삭제할 때는 docker.. Docker 컨테이너와 이미지 Image이미지는 컨테이너를 생성할 때 필요한 요소이다. 가상 머신을 생성할 때 사용하는 iso 파일과 비슷하다고 할 수 있다.여러 개의 계층으로 이루어진 바이너리 파일로 존재하며, 컨테이너를 생성할 때 읽기 전용으로 사용된다.즉, 컨테이너를 생성하는데 사용되는 설계도인 셈이다. 이미지는 도커 명령어로 내려받을 수 있기 때문에 별도로설치하거나 할 필요는 없다.일반적으로 도커에서 이미지의 이름은 다음과 같은 형태로 구성된다.[저장소 이름]/[이미지이름]:[태그]Ex. exrepo/ubuntu:14.04Ex. ubuntu:latest저장소 : 이미지가 저장된 저장소를 의미한다. 도커에서 기본적으로 제공하는 도커 허브의 공식 이미지일 경우, 저장소 이름을 생략 가능하다.이미지 이름 : 이미지가 어떤 역할을 하.. Docker 설치 Docker 설치 https://docs.docker.com/engine/install/ InstallLearn how to choose the best method for you to install Docker Engine. This client-server application is available on Linux, Mac, Windows, and as a static binary.docs.docker.com공식 Docs 페이지를 참고하여 해당하는 운영체제에 맞게 설치한다. Ubuntu 기준1. 충돌 가능한 패키지 제거#충돌하는 모든 패키지를 제거 for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker con.. Docker Docker?리눅스 컨테이너에 여러 기능을 추가하여 애플리케이션을 컨테이너로서 쉽게 사용할 수 있도록 만들어진 오픈소스이다.기존 솔루션인 가상 머신과 달리 도커 컨테이너는 성능의 손실이 거의 없어서 차세대 클라우드 인프라 솔루션으로서 많은사랑을 받고 있다. Go 언어(구글에서 개발한 언어)로 작성되어 있다. 가상 머신과의 차이점?기존 가상화 기술은 하이퍼바이저를 이용해 여러 운영체제(Guest OS)를 하나의 호스트에서 생성하여 사용하는 방식이었다. 이러한 운영체제는 가상 머신이라는 단위로 구별되었고 이러한 가상 머신은 다른 가상 머신과완전히 독립된 공간과 시스템을 할당받아 사용한다. 대표적인 가상화 툴로 Virtual Box, VMware 등이 있다.즉, 완벽한 운영체제를 생성할 수 있다는 장점이.. Architecture - 2 저장 동작S3 : 어플리케이션에서 이미지 저장 시 이미지가 업로드 된다.Mongo DB Atlas : 어플리케이션의 데이터가 저장되는 Database역할을 한다. 모니터링ECS 클러스터의 각 EC2 인스턴스 내부의 Filebeat가 어플리케이션의 로그를 Elastic Search 로 보낸다.일반적으로 ELK( Elastic Search, Logstash, Kibana ) 로 사용된다.Filebeat : 로그 수집 및 전송Elastic Search : 로그 저장, 검색, 분석Kibana : 데이터 시각화 이와 같은 ECS 컨테이너 로그를 Filebeat가 수집하여 퍼블릭 서브넷의 인스턴스로 전송한다. 이처럼 로그를 받아 Elastic Search가 분석하고, Kibana가 시각화를 한다. Ro.. Simple 3-Tier Architecture Project Step 2 (구현) 이전 게시물에서 3Tier란 무엇인가와, 클라우드 환경에서 3Tier를 구현하면 얻을 수 있는 장점에 대해 알아보았다.이제 구현을 하기 위해 간단한 웹 어플리케이션을 개발한다.언어는 Python, 프레임워크는 Django를 사용하였다. 1. 웹 어플리케이션 구현Application Code => https://github.com/KimHyoSeob/3tier-was# Django 개발 시 주의점!# Django는 DEBUG=False로 설정 시 정적 파일을 제공하지 않기 때문에# Web티어에서 Nginx 등으로 제공하여야 한다. 2. Local VM 환경에서 테스트클라우드 환경으로 마이그레이션 하기 전에 OracleVM을 이용하여 3Tier 환경에서 테스트를 한다. 각 머신 별로 다음과 같은 과정.. 이전 1 2 3 4 다음