728x90
반응형

VPC의 개념 

 

VPC는 사용자가 정의하는 가상의 네트워크로 VPC를 통하여 인스턴스가 속하는 네트워크를 구분하여 각 네트워크에 맞는설정을 부여할 수 있다. 만일 VPC 없이 인스턴스를 생성한다면 아래와 같이 인스턴스끼리의 구분 없는 연결로 인하여 시스템 복잡도가 증가한다. 인터넷을 통하여 전달되는 트래픽 전송이 굉장히 비효율적이게 될 수 있다.

 

VPN를 적용하게 되면 인스턴스가 VPC에 속함으로 네트워크를 구분할 수 있고 VPC 별로 필요한 설정을 통하여 인스턴스에 네트워크 설정을 적용할 수 있다. AWS는 VPC의 중요성을 강조하면서 모든 서비스에 VPC를 적용하도록 강제하였다.

만약 지금까지 VPC를 한 번도 만들어 보지 않고 인스턴스 생성을 했다고 하면 AWS에서 제공하는 default VPC에 인스턴스가 배치되어 있을 것 이다.

 

VPC 

 

VPC는 독립된 하나의 네트워크를 구성하기 위한 가장 큰 단위이다. region에 종속되어 RFC1918이라는 사설 IP 대역에 맞추어 설계해야 한다. VPC에 사용하는 사설 IP대역은 아래와 같다.

 

1. 10.0.0.0 ~ 10.255.255.255

2. 172.16.0.0 ~ 172.31.255.255

3. 192.168.0.0. ~ 192.168.255.255

 

각 대역폭마다 고정되는 prefix가 다르다 1번은  00001010 2번은 0101100.0001 3번은 11000000.10101000~가 

앞에 고정되어 있고 나머지 주소 범위에 해당하는 IP 주소를 할당할 수 있다. 아래와 같이 10.0.0.0/16으로 설정된 IP 대역폭은 총 65,536개의 프라이빗 IPv4 주소를 가질 수 있다.

 

VPC에서 한번 설정된 IP 대역은 수정할 수 없으며 각각의 VPC는 독립적이기 때문에 서로 통신할 수 없다. 만일 통신을 원한다면 VPC 피어링 서비스를 통하여 VPC간에 트래픽을 라우팅할 수 있게 설정 가능하다.

 

Subnet 

 

서브넷은 VPC의 IP주소를 나누어 리소스가 배치되는 물리적인 주소 범위를 뜻한다. VPC를 잘게 나눈 것이 서브넷이기 때문에 VPC보다 대역폭이 낮으며 하나의 AZ에 하나의 서브넷이 연결되기 때문에 region의 AZ 수를 미리 확인하고 설정해야한다.

 

서브넷은 다시 Public Subnet과 Private Subnet으로 나뉠 수 있다. 인터넷과 연결되어있는 서브넷을 public subnet이라고 하고 인터넷과 연결되어있지 않은 서브넷을 private subnet이라고 한다. 이처럼 인터넷 연결 여부로 subnet을 구분하는 이유는 보안을 강화하기 위함이다. public subnet에 존재하는 인스턴스는 인터넷에 연결되어 아웃바운드,인바운드 트래픽을 주고 받을 수 있다. 반면 private subnet은 외부에 노출되어 있는 면적을 최소화함으로써 네트워크 망에 함부로 접근하는 것을 막기 위함이다.

 

Router 

 

라우터는 VPC안에서 발생한 네트워크 요청을 처리하기 위해 어디로 트래픽을 전송해야 하는지 알려주는 표지판 역할을 수행한다. 각각의 서브넷은 네트워크 트래픽 전달 규칙에 해당하는 라우팅 테이블을 가지고 있으며 요청이 발생하면 가장 먼저 라우터로 트래픽을 전송한다. 일반적으로 VPC 내부 네트워크에 해당하는 주소는 local로 향하도록 한다.

 

Internet Gateway 

 

인터넷 게이트웨이는 VPC 리소스와 인터넷 간 통신을 활성화하기 위해 VPC에 연결하는 게이트웨이이다. 앞서 설명햇듯이 public subnet만 외부와 통신해야 하므로 public subnet의 라우팅 테이블에만 인터넷 게이트웨이로 향하는 규칙을 포함한다. 아래 그림과 같이 라우팅 규칙을 설정하면 네트워크 요청 발생 시 목적지의 IP 주소가 10.0.0.0/16(VPC 내부)에 해당하는지 확인한다. 해당하지 않는 모든 트래픽은 인터넷 게이트웨이를 통해 외부로 전송되어 목적지를 찾는다.

 

NAT Gateway(NAT 게이트웨이)

 

public subnet만 인터넷 게이트웨이를 통해 외부와 트래픽을 주고받을 수 있다면 private subnet의 트래픽은 무조건 VPC 안에서만 처리된다는 뜻일까 ? 그렇지 않고 private subent 역시 마찬가지로 인터넷과 통신할 수 있다. 하지만 private subnet에서 직접하는 것은 불가능하므로 트래픽을 public subnet에서 발생하는 네트워크 요청이 VPC 내부의 주소를 목적지로 하는 것이 아니라면 public subnet에 존재하는 NAT로 트래픽을 전송하나. 트래픽을 받은 NAT는 public subnet의 라우팅 규칙에 따라 처리함으로써 private subnet이 인터넷과 통신할 수 있도록 한다. 

 

VPC Endpoint 

 

VPC 엔드포인트는 인터넷 게이트웨이나 NAT 게이트웨이와 같은 다른 게이트웨이 없이 AWS 서비스와 연결하여 통신할 수 있는 private connection을 제공하는 서비스이다. Private link를 통해 AWS 서비스와 연결함으로써 데이터를 인터넷에 노출하지 않고 바로 접근할 수 있다. 또한 연결하는 서비스의 IP주소를 바꾸는 등 네트워크 정보의 변경 등의 작업에서 불필요하게 발생하는 비용르 줄일 수 있다.

 

 

 

 

 

반응형

'IT > AWS' 카테고리의 다른 글

Amazon VPC란 무엇인가 ?  (0) 2022.11.10
AWS 주요 제품 이해하기  (0) 2022.02.23
AWS 주요 서비스  (0) 2022.02.21
아마존 웹 서비스 Cloud 개요  (0) 2022.02.09
728x90
반응형

안녕하세요 ~ 

 

22년 상반기 내내 

이어지던 하락장이

7월달 들어서면서 

약간 반등장에 들어선 것 같습니다.

 

레버리지를 일으켜

700달러 초반에 산 

테슬라가 지금 900달러에

근접해와서 하락장에 

매수한게 탁월한 선택이라고 

보여집니다 ~ !! 

 

 

7월달 배당금으론

 

엔비디아 - 0.68

램리서치 - 11.47

TSMC - 10.58

리얼티인컴 - 3.15 

 

25.88달러 

현시간 달러 기준으로 

3만4천원을 받았네요 !! 

 

배당주 투자를 할까다가도 

폭등하는 테슬라,엔비디아 등을 

매수해놓는게 시세차익면에서 

더 좋아보이기도 하네요.

 

주식이든 부동산이든 

어느 정도의 리스크를 감수해야

돈을 버는 것 같습니다 !! 

 

올해들어 테슬라로 많은 

시세차익을 남겼는데..

 

테슬라 러버가 될 것 같긴 하네요.. 

 

반응형
728x90
반응형

Airflow란 ? 

 

Airlfow는 Airbnb에서 개발한 워크플로우 스케쥴링, 모니터링 도구로 현재는 Apache 프로젝트가 되었다.

Airflow 는 DAG라는 개념으로 동작하는데 python으로 DAG를 작성하고 순서를 정의할 수 있다.

현재도 활발한 개발이 이루어지고 있으며 1.10.0 버전이 2018.8.9 배포된 이후 현재 2020.12.1일 현재를 기준으로 1.10.13버전까지 배포되었으며 2.0대의 버전도 꾸준히 개발되고 있다.

 

빅데이터를 활용하는 많은 곳에서 활용하는 도구로 비슷한 도구에는 oozie가 있으며, oozie와의 비교는 추후에 포스팅할 예정 

 

Airflow의 특성 

 

Dynamic : Airflow pipeline을 python을 이용해 구성하기 때문에 동적인 구성이 가능 

Extensible : python을 이용해 Operator,executor을 사용해 사용자 환경에 맞게 확장 사용 가능

Elegant : 간결하고 명시적이며 jinja template를 이용해 parameter를 이용해 데이터를 전달하고 파이프라인을 생성하는 것이 가능 

Scalable : 분산구조와 메세지큐를 이용해 scale out와 워커간 협업을 지원 

 

Airflow Architecture

 

 

Architecture에서 보는 것과 같이 Airflow는 Scheduler,Webserver,Worker,MetaDB로 구성된다.

- WebServer : DAG,user,connection,xcom,variable관리를 할 수 있는 UI 제공 

- Scheduler : 모든 작업과 DAG를 관리하고 실행시키는 역할을 하며,PostgreSQL 9.6 MySQL 8 이상의 버전에서 HA기능까지 제공 

- Executor : Worker의 동작방식에 대한 정의를 하는 부분으로 Local,Sequential,Celery 등 다양한 Executor방식을 제공

- MetaDB : 실행중인 데이터 파이프 라인에 대한 메타 데이터를 저장 

 

반응형

'IT > 인프라' 카테고리의 다른 글

서버 보안 방화벽  (0) 2022.08.17
bypass와 oversubscription 차이점  (0) 2022.08.17
이메일 관련 보안 기술 SPF,DKIM,DMARC에 대하여 알아보자  (0) 2022.06.30
Batch란 ??  (0) 2022.06.16
DNS란 ?  (0) 2022.05.17
728x90
반응형

안녕하세요 ~ !! 

 

하락장이 계속 이어지는 6월이네요 ~ 

환율도 1300원 터치..!! 

 

하락장을 처음겪어봐서 그런지

감당 되는 정도만 레버리지를 써서

주식을 매도 하고 있습니다 ~ 

 

최근 가장 좋았던 건

빚투로 블랙락을 매수 했던 것 @.@

 

올해 하락장이라 감당가능할만큼

레버리지를 쓴다음 ~ 

블랙록을 매수했는데 37만원정도

시세차익도 보고 배당금도 33달러정도 

받았습니다 *.*

 

올해 성공적인 단타수익

블랙록,테슬라

역시 해외주식이 저한테 맞는거 같네요.. ㅎㅎ

 

물론 실패한 투자도 있죠.. 

버핏이 매수한 쉐브론 몇주 사는데 

나락..ㅎㅎ 

 

배당금으로 

블랙록 33.18

리얼티인컴 2.31

쉐브론 4.83

마이크로소프트 5.27 

 

달러를 받았네요 ~ @.@

 

여지껏 

받았던 배당금 중에

가장 많이 받은 ㅇㅅㅇ 

배당금이지 않을까 십네요.

 

이래서 감당가능한 빚투는 저는

추천해드랴요.. ㅎㅎ

 

총 45.59달러를 받아

현 시각 달러 기준 

5만9221원을 받았네요 ~ 

 

가장많이 받아본 배당금 

인 것 같네요 ㅇㅅㅇ

반응형
728x90
반응형

이메일 보안을 위한 기술 

 

각 기술별 요약 

 

구분 SPF DKIM DMARC
인증 대상 발송 서버  메시지 발신자  발송 서버 & 메시지 발신자
인증 방법 메일 발송 IP 비교  전자서명  SPF & DKIM 검사 결과 조합
발신자 요구사항 DNS에 SPF 정책 설정 DNS에 공개키 등록 및 전자 서명 기술 적용 DNS에 DMARC 정책 설정 
수신자 요구사항 메일 수신시스템에 SPF SW 설치 필요 메일 수신시스템(메일 서버)에 DKIM SW 설치 필요  메일 수신시스템(메일서버)에 DMARC SW 설치 필요

1. SPF(Sender Policy Framework) 메일서버 등록제 요약 : 메일 수신 측에서 발신 서버에 직접 메일 전송 여부를 확인

 

발신 측에서는 DNS에 SPF Record를 설정하여 등록한다.

SPF Record에는 메일서버 IP 정보, 사칭 메일에 대한 필터링 정책을 담고 있다.

수신 측에서는 받은 메일에 표기된 발신자 DNS에 SPF 레코드를 조회하여 사칭 메일 여부를 확인한다.

 

1.SPF 인증 절차

 

2. DKIM(Domain Keys Idenrified Mail)도메인 키 인증 메일

요약 : 메일 헤더에 서명값을 넣은 뒤 공개키를 이용해 메일의 위,변조 여부 확인

 

발신 측에서는 자신의 DNS에 공개키를 등록하고, 메일에는 개인키로 서명을 한 뒤 전송한다.

(공개키,개인키를 이용한 해시값을 포함)

수신 측에서는 발신자 DNS로부터 공개키를 받아 만든 해시값과 메일에 포함된 해시값을 비교하여 일치여부를 확인한다.

 

2.DKIM 인증 절차 

 

SPF보다 더 효율적인 DKIM

 

SPF는 메시지 봉투에 정보를 추가하는 방식이라고 본다면 DKIM은 메시지 헤더에 서명을 한다.

메시지 전달 시 메시지 봉투 일부가 발신 서버에서 제거될 수 있다.

 

하지만 서명 방식은 메일 머리글의 일부이므로 메일 메시지와 함께 유지된다.

 

위 그림과 같은 상황에서는 SPF TXT 레코드만 확인시 2번째 전송에서 스팸으로 걸러질 수 있지만 DKIM은 통과할 수 있다.

 

DKIM 서명 

 

DKIM 서명의 경우 메일 본문과 헤더를 사용해서 생성한다. 생성한 결과 해시값을 메일 헤더에 덧붙여 전송한다. 수신 측에서는 이를 보고 유효성 여부를 확인한다.

 

3. DMARC 

 

요약 : 위의 SPF,DKIM 기술을 모두 활용하여 메일을 확인하고,자신의 메일을 도메인을 사칭한 메일에 대한 보고 

 

발신 측에서는 메일에 DKIM 헤더를 첨부한다. 수신 측에서는 발신자 DNS로부터 DMARC정책 조회하고,

이에 따라 DKIM,SPF 확인한다. 이후 격리/거부 된 메일에 대하여 발신 측에 전달 오류를 보고한다.

 

3.DMARC 인증 절차 

 

DMARC의 배경

 

대부분의 메일 서비스는 다수의 시스템으로 구성된 복잡한 환경이다. SPF,DKIM 기술이 지원되고 있지만 모든 시스템에서 메시지들이 SPF,DKIM을 통해 인증된다는 보장은 없다. 이 때문에 수신측은 인증되지 않은 메일이라도 모두 거부할 수 없다. 인증되지 않은 정상 메일과 부정 메일이 섞여 받을 수 밖에 없다. 

발신측은 자신들이 전달한 메일 인증 결과 피드백도 받지 않는다, 정상 메시지 중 인증 실패 비율, 사칭 비율 등을 파악하지 못하므로 전체적인 분제점을 해결하지 못한다. 

이를 위해서는 발신 측과 수신 측이 정보를 공유해야한다.

반응형

'IT > 인프라' 카테고리의 다른 글

bypass와 oversubscription 차이점  (0) 2022.08.17
Airflow란 ??  (0) 2022.07.18
Batch란 ??  (0) 2022.06.16
DNS란 ?  (0) 2022.05.17
DLP와 DRM의 차이점  (0) 2022.05.17
728x90
반응형

1. SQL Server Express 다운로드 

 

아래의 링크에서 다운로드 

https://www.microsoft.com/ko-kr/sql-server/sql-server-downloads

 

SQL Server 다운로드 | Microsoft

지금 Microsoft SQL Server 다운로드를 시작하세요. 내 데이터와 워크로드에 가장 적합한 SQL Server 체험판 또는 버전, 에디션, 도구 또는 커넥터를 선택하세요.

www.microsoft.com

 

설치 파일이 다운로드 되면 프로그램을 실행시켜 설치 진행 

 

2.설치 유형 기본으로 선택

3.Microsoft SQL Server 사용조건

 

수락버튼 누른 후 설치 진행

SQL Server 설치 위치 지정하고 설치버튼을 클릭하여 설치를 진행합니다.

설치 패키지를 다운로드하고 다운로드가 완료되면 설치를 진행합니다. 해당 화면들은 자동으로 넘어가 신경 x 

 

설치완료 후 SSMS 설치 

 

Express Edition 설치가 완료되었습니다. 완료화면에서 SQL Server를 관리하는 관리툴인 SSMS(SQL Server Management Studio)를 설치합니다.

 

https://docs.microsoft.com/ko-kr/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15 

 

SSMS(SQL Server Management Studio) 다운로드 - SQL Server Management Studio (SSMS)

최신 버전의 SSMS(SQL Server Management Studio)를 다운로드합니다.

docs.microsoft.com

SSMS 다운로드를 클릭하여 프로그램을 다운로드 합니다. 다운로드가 완료되면 프로그램을 실행시켜 설치를 진행

설치버튼을 클릭하여 SSMS 설치를 진행 

SSMS 설치진행 화면이 뜨고 잠시 기다리면 설치가 완료됩니다.

 

반응형
728x90
반응형

Git

 

Git의 정의는 분산 버전 관리 시스템을 뜻한다.

 

Git 사용 목적 

 

Git이나 SVN과 같은 분산 버전 관리 시스템을 사용하는 목적은 아래와 같은 상황 때문이다.

 

Git 개념 

 

Repository 

 

Repository는 말 그대로 파일 등이 저장되는 저장소로 즉 프로젝트 폴더를 말한다.

저장소의 종류는 다음과 같다.

Remote Repository (원격 저장소) : 원격 서버에 저장된 저장소로 여러 사람이 함께 공유한다.

Local Repository (개인 저장소) : 우리가 직접 관리하는 저장소로 내 PC에 저장되어 있다.

 

Commit 

 

Commit은 프로젝트의 변경 이력을 말한다.

 

Stage 

 

Stage에 대해 설명하기 전 Index에 대한 개념을 이해해야 한다.

Index는 Commit을 통해 변경사항들이 반영되기 전 해당 변경사항의 이력들이 저장되는 공간이다.

 

따라서 우리가 특정 파일이나 코드를 변경 시 해당 이력은 Index에 기록된다.

 

이때 이 기록되는 행위를 Stage 또는 Staging이라 한다.

 

따라서 다음과 같이 5개의 변경사항이 있을 시, 그 중에서 원하는 변경 사항만 stage하고 원하지 않는 변경 사항은 unstage 한 뒤 commit을 진행하면 된다.

 

Branch 

 

Branch는 특정 커밋으로부터 분기되는 포인터를 말하는 것으로, 여러 명이 같은 코드를 공유하며 협업하는 상황에서 각 개발자들이 개발을 진행하고 있는 환경 또는 흐름을 말한다.

 

각 개발자들은 여러 Commit을 만들며 프로젝트를 개발하는데, 이때 누가 어떤 Commit을 추가했는지 구분이 가능해야 한다.

 

이때 사용되는 것이 바로 Branch이다.

 

 

새로운 Branch가 생성되더라도 기존의 메인 Branch는 그대로 남아있다.

 

위와 같이 한 사용자가 자신의 기능의 세부 Branch를 또 다시 나눌 수도 있다.

Branch 생성 가능 갯수에는 제한이 없다.

 

Checkout 

 

Checkout은 현재 위치한 Commit에서 다른 Commit으로 이동하는 것을 말한다.

Checkout을 통해 현재 Commit에서 같은 Branch내 다른 Commit으로 이동하거나 다른 Branch 내 Commit으로 이동할 수 있다.

 

Checkout으로 인해 이전 시점의 버전으로 되돌아갈 수도 있고, 다른 사람의 Branch로 전환해 다른 개발자들의 코드 진행 상황을 확인해 볼 수도 있다.

 

Merge 

 

Merge는 나뉘어진 Branch를 다시 하나의 Branch로 합치는 것을 말한다.

가장 오류가 많이 발생하는 과정이니 주의 

 

Merge 진행 시 현재 Branch를 Brancg가 합쳐지는 기존 메일 Branch로 전환한 후 수정된 Branch를 Mrege해야 오류가 발생하지 않는다.

 

여러 개의 Branch들을 한꺼번에 Merge할 때도 마찬가지로 차례차례 기존 Branch상태에서 Merge를 진행한다.

 

또한 Merge에는 종류가 2가지가 있다. 하나는 fast-dforwad이고, 나머지 하나는 non fasf-forward이다.

 

fast-forward는 기본 merge 방식으로, 서로 다른 두 Branch를 충돌 없이 자동 merge시키는 병합니다.

 

하지만 그 과정에서 때때로 일부 문법으로 인해 충돌이 발생하면 병합에 실패하는 경우가 발생한다.

 

이때 해당 충돌 기록을 살피며 일일히 해당 코드를 수정한 뒤 Merge를 이어서 진행하면 성공적으로 Branch가 병합된다.

 

이러한 Merge 방식이 non fast-forward이다.

 

또한 이 과정에서 코드의 수정이 이루어졌으니 마찬가지로 새로운 commit이 생성된다.

 

Clone 

 

Clone은 원격 저장소로부터 특정 프로젝트를 통째로 내 로컬 저장소에 다운받는 것을 말한다.

 

Push

 

Push는 현재 내 로컬에서 작업한 변경 사항들을 원격 저장소에 반영하는 것을 말한다.

작업이 완료될 때마다 원격 저장소에 Push해야 다른 사람들이 내 코드를 확인할 수 있다.

 

Pull 

 

Pull을 원격 저장소에서 변경된 사항들을 내 로컬 저장소에 반영하는 것을 말한다.

Push와 정반대의 개념으로 다른 사람이 Push를 해서 원격 저장소에 코드를 업데이트하면 

우리는 해당 코드를 pull하여 로컬의 코드를 업데이트한다.

 

이때 기존의 코드와 내 코드가 다른 경우 Merge를 진행해 코드를 병합하게 된다.

 

clone과 개념이 헷갈릴 수도 있는데, Clone은 프로젝트를 처음 불러올 때 프로젝트 전체를 다운받는 것이지만,

Pull은 해당 프로젝트에서 변경된 사항들만 다운받는 것이다.

 

Git Flow

 

git flow란 저장소를 보다 고수준으로 관리하기 위한 브랜칭 기법이다.

프로젝트의 규모가 점점 커지면, 많은 인원들이 코드에 동시에 접근하면서 필연적으로 문제가 발생하게 된다.

따라서 현재 내 브랜치가 어떤 문맥에서 생겨나게 됐는지 파악하기 위해 Git Flow에 대한 이해는 반드시 필요하다.

 

Git Flow는 기본적으로 브랜치를 feature - develop - release - hotfix - master 

5단계로 나누어 코드를 관리한다.

 

Master Branch

 

Master Branch는 실제로 클라이언트에서 이용하는 최종 형태의 메인 Branch이다.

 

Develup Branch

 

Develop Branch 현재 개발이 진행 중인 메인 Branch이다.

Master Branch와 마찬가지로 추가적으로 생성 또는 삭제되지 않는 Branch이다.

 

Feature Branch

 

Feature Branch 새로운 기능을 추가하기 위해 사용되는 Branch로 특정 기능이 개발이 필요할 때 Develop Branch에서 파생되며, 기능 개발이 완료되면 Develop Branch로 병합된다.

가장많이 생성되었다 삭제되는 Branch이다.

 

Release Branch 

 

Release Branch 실제로 프로젝트를 배포하기 위한 프랜치이다.

 

이 Branch는 기즘까지 개발한 기능들이 있는 Develup Branch에서 파생되어, 각종 오류사항이나 문제들을 검토 및 수정하는 일종의 테스트 서버로 볼 수 있다.

 

수정이 완료되면 Release Branch는 Develup Branch와 Master Branch로 병합된다.

 

Hotfix Branch 

 

Hotfix Branch Hotfix Branch는 배포된 Master Branch에서 예기치 못한 버그가 발생했을때 급하게 Develop Branch,Feature Branch를 거치지 않고 버그를 구정하는 단계이다.

 

 

 

 

 

 

 

 

반응형

'IT > GitHub' 카테고리의 다른 글

[실무] 깃허브 remote error GH006 에러  (0) 2022.06.15
SVN의 개념 및 GIT과의 차이점  (0) 2022.06.15
728x90
반응형

 

SAP 배치잡

T-코드 : SM37

 

 

릴리스 : 배치 예정 인 것들 확인 가능 

종료 : 실행 되었던 배치 확인 가능 

 

T-코드가 긴데..

T코드 - ZFI01R0700을 통하여

퇴사자와 부서이동자를 수정할 수 있다

 

반응형

+ Recent posts