Tech 23

쿠버네티스를 시작하며

안녕하세요, 업로드를 해야지해야지 하면서도 하기가 힘드네요.. 최근엔 이직까지 해서 시간이 정말 부족하다는 것을 새삼 느낌니다. 오늘 나누고 싶은 이야기는 쿠버네티스의 기술적인 이야기보다는 탄생과 시장을 지배하게된 이야기 등입니다. 가벼운 이야기가 될겁니다. 쿠버네티스? 제가 처음 쿠버네티스를 배울 때, 쿠버네티스를 공부해야한다고 말씀해주는 선배들이 하는 이야기가 대충 이랬습니다. 그게 요즘 유행이라던데? 다들 쓴다던데? 암튼 멋있잖아! 그거 하면 연봉오른다더라! 당시 클라우드 인프라 엔지니어로 일하던 저에게는 뭔가 멀면서도 생각보다 가까운 곳에 있는 어떤 기술이었습니다. 다들 당위성을 멋짐이나 연봉으로만 잡았고 기술적인 흐름에 대해서 말해주시진 않았던 것 같습니다. 지금 생각해보면 그런 이야기를 듣기에..

Kubernetes 2023.07.01

AWS SAA-C03 25번 ~ 32번

25번 답 : D 요약 : 손실없이 데이터 처리를 보장하는 SQS가 합리적 해설 : 이 회사는 어플을 사용하는데 API로 들어온 정보를 Lambda가 받아서 aurora postgre로 전달합니다. 그런데 회사는 대용량을 처리해야하므로 람다 처리량 또한 늘려야합니다. 이에 대비한 새로운 아키텍쳐가 필요한데 설정은 쉬워야하고 스케일링이 적용되어야 합니다. 이 경우 자동 스케일링이 적용되는 관리형 서비스를 써야하기 때문에 A는 탈락하며, 변경도 최소화해야하므로 DB를 바꾸는 B도 탈락합니다. C와 D 모두 스케일링이 적용되지만 SNS는 DB에 정보를 전달하는 로직에서는 적절하지 못한데 그 이유는 람다의 동작을 검증하지 않기 때문입니다. SQS는 큐에 쌓인 메세지를 람다에 전달하고 람다가 처리 후 그 메세지를..

AWS 2023.05.26

AWS SAA-C03 문제풀이 17번 ~ 24번

17번 EC2 인스턴스에서 S3에 접근하도록 하는 방법은 여러가지가 있습니다. 그 중에서도 보안상 매우 중요한 least privilege access(최소 권한 접근)를 위해서는 해당 인스턴스가 정확히 필요로하는 권한만 주는 것이 좋습니다. 이러한 방식을 구현하기 위해 가장 적정한 방법은 S3로 접근할 수 있는 정책만 할당된 role을 부여하는 것입니다. policy만 서비스에 곧바로 적용할 수는 없기 때문에 policy를 role에 넣고 그 role을 서비스에 할당해야합니다. 따라서 적정한 role을 EC2에 할당하는 것을 찾아야하므로, 답은 A입니다. 18번 로직을 다 네모칸에 넣을 수 없어서 핵심 키워드만 잡았습니다. 로직을 보면, 어플리케이션은 사용자가 이미지를 올리면 S3 1. 버킷에 저장 2..

AWS 2023.05.17

AWS SAA-C03 문제 풀이 9번 ~ 16번

안녕하세요! 5월은 쉬는 날이 많아서 정말 좋네요! 매달 이랬으면 좋겠습니다!😆 9번 뉘앙스는 스토리지 확장이며 새로운 솔루션으로 마이그레이션은 아닌 것 같습니다. 그러면서 비용적인 이점을 위해 파일 수명주기도 관리하려는 것 같습니다. 파일의 수명주기는 S3로 관리하며 SMB 프로토콜을 그대로 사용하면서 저장공간만 확장하는 방법은 file gateway를 사용하는 것입니다. 따라서 답은 B 입니다. 10번 FIFO는 First in first out의 약자입니다. 이 키워드만 알아도 쉽게 답을 찾아갈 수 있습니다. SQS는 표준 대기열과 FIFO 대기열을 지원합니다. 표준 대기열의 경우 순서와 관계없이 처리될 수 있습니다. 이유는 SQS는 기본적으로 aws 내의 복수의 노드에서 분산 처리되기 때문입니다...

AWS 2023.05.08

[5] TGW와 Direct Connect는 언제 쓰나요?

안녕하세요! TGW와 DX는 인프라를 AWS로 구축한 기업에서는 안쓰는 경우를 거의 본 적이 없습니다. 그 정도로 표준화되어 있는데요 왜 다들 사용하는 것일까요? 앞서 VPC Peering에 대해 조금 알아봤습니다. 피어링은 VPC간 1:1 연결입니다. 다중 구성을 할 경우 매번 연결을 맺어줘야하는 불편함이 큽니다. TGW는 뭔가요? 풀네임은 Transit Gateway입니다. Transit은 수송 Gateway는 입구 또는 관문으로 해석합니다. 무언가를 전달하는 관문이라는 의미가 되는데요, 정말로 TGW는 서로 격리된 VPC를 연결해주는 관문 역할을 합니다. 여러 VPC의 트래픽이 전달되는 허브와 같은 것이죠. 국제공항이나 터미널을 생각하시면 이해가 되시리라 생각됩니다. Direct Conncect를 ..

AWS 2023.05.05

K8s, _get_comp_words_by_ref: command not found 해결

그냥 작업하면 잘되는데 kubectl에서는 tap을 누르면 아래와 같은 에러가 뜬다. _get_comp_words_by_ref: command not found 보통 bash-completion을 설치하지 않아서 생기는 문제이지만, 다른 때에는 잘 되다가 꼭 kubectl을 할 때만 안된다. 그럴 때에는 아래와 같이 터미널에 입력하자. source /etc/bash_completion source zsh를 쓰기로 함 그렇다면 zsh용 completion을 다운 받고 zshrc에 completion을 반영해주면 된다. brew install zsh-completions ## 설치 후 표기되는 글을 잘 읽어보시라 chmod -R go-w '/opt/homebrew/share/zsh' rm -f ~/.zcom..

Kubernetes 2023.04.25

AWS SAA-C03 문제 풀이 1번 ~ 8번

업데이트 중입니다.. 보시는 분의 편의를 위해 한글로 번역하여(구글번역) 풀이합니다. 1번 풀이 : 글로벌 서비스의 경우 상황에 따라 해답이 매우 다양합니다. 회사의 서비스를 고객에게 전달한다면 아마 가장 먼저 떠오르는 것이 CDN 즉, CloudFront 일 것입니다. CloudFront는 엣지로케이션에 서비스를 배포하여 고객이 더 빠르게 서비스를 이용할 수 있도록 합니다. 하루 평균 500GB의 많은 데이터를 처리하지만 고속 인터넷 연결이 되어있기 때문에 추가 장비가 필요하지 않습니다. 만약 인터넷 속도가 느리다면 AWS의 Snow 시리즈를 이용해 AWS의 실물장비로 자료를 옮기고 datacenter로 이동하는 것이 더 빠를 수 있습니다. S3는 기본적으로 글로벌 서비스입니다. 오브젝트 스토리지 특성..

AWS 2023.04.18

VPC Peering에 대해 알아봅시다

VPC Peering에 대해 알아봅시다. VPC를 처음 사용할 때에는 EC2의 네트워크 영역 정도로만 사용합니다. 그러다가 S3를 위한 gateway endpoint를 생성하고 다른 VPC와 연결하는 등 활용도가 점점 올라갈 텐데요, 그 중에서도 VPC peering, Direct Connect(DX), Transit Gateway(TGW) 그리고 VPN에 대해 조금씩 알아볼까 합니다. 다들 아시다시피, VPC는 하나의 가상 라우팅영역입니다. VPC를 처음 생성할 때 사설 망으로 최대 10.0.0.0/16으로 생성할 수 있습니다. 이론상 65535개의 ip 주소를 사용 가능하지만 subnet을 생성할 때마다 기본적으로 할당되는 주소들(총5개)이 있죠. NID와 broadcast IP주소 처럼요. 면접 때..

AWS 2023.04.11

AWS Solutions Architect Professional, SAP-C02 후기

안녕하세요 여러분 아직 AWS에 대해 먼길까지 오지 않았지만, 처음 말씀드렸던 클라우드 학습에 대한 이야기도 하겠다고 해놓고 너무 이론만 들어간 것은 아닌가 생각되어 오늘은 자격증에 대한 이야기를 할까 합니다. 사실 오늘 이 이야기를 꺼내게된 이유는, 제가 AWS 자격증을 하나 더 취득한 기념으로..ㅎㅎ 아직 SAP-C02는 후기도 인터넷에 많지 않아 우리 네전따에 남길겸, AWS 자격증 시험을 처음 준비하시는 분들에게 조금이라도 도움이 될 만한 이야기도 드려볼겸, 시험 후기와 시험 문제 풀이에 대한 소소한 팁에 대해 말씀을 드려보도록 하겠습니다. 1. 시험 후기 - 응시 사유 작년 중순까지는 AWS의 서비스를 많이 이용하였는데, 이후 쿠버네티스와 관련 오픈소스를 더 많이 활용하게 되면서 AWS를 사용하..

AWS 2023.04.03

VPC의 기초 지식!

VPC에 대해 알아봅시다! ​ AWS를 처음 시작하시면 주로 EC2 콘솔에서 인스턴스에 간단한 웹 앱을 올리는 것을 시도해봅니다. 가장 간단하기도 하고 뭔가 만들어지는 것을 직관적으로 빠른 시간안에 볼 수 있기 때문이죠. EC2에서 작은 성취감을 얻은 후에는 그것들이 어떻게 어떤 원리로 작동되는지 궁금하게 되실겁니다. 그러면서 학습에 흥미가 생기죠. ​ 지난 업로드 이후 많은 시간이 지났습니다. 다들 한번씩 봐주셨을지요 >.< 직접 따라해보시지 않으셨더라도 대충 이렇게 흘러가는구나~ 정도는 다들 알게되셨으리라 생각됩니다. 그렇다면 그 EC2에서 직접 올린 인스턴스는 AWS의 네트워크 내부 어디에 배치가 되고 어떤 경로로 외부로 트래픽이 전달되게 되는지 설명을 드려볼까 합니다! ​ 1. VPC란 AWS V..

AWS 2023.03.27

[2-2] AWS에 간단한 어플리케이션을 올려봅시다

인스턴스를 생성하는 방법은 인터넷에서 매우 쉽게 찾으실 수 있습니다. 이것을 다룬 블로그들이 정말 너무나 많을거에요.. 그렇다면 굳이 저는 이 글을 남길 필요가 없을겁니다. 저는 조금 더 친절하고 쉬운 설명으로 잘 전달드려보고자 합니다. 항상 드리는 말씀이지만, 이해가 안되시면 그건 제가 잘 설명을 못한것이니 언제든 편히 댓글 남겨주세요! 더 쉽게 설명드려보도록 하겠습니다. 그럼 인스턴스가 생성이 되었으니 접속해볼까요 주로 2가지 방법을 가장 많이 사용합니다. 1. 콘솔에서 곧바로 접속 2. 터미널을 통한 ssh 접속 1의 경우 pem키가 없지만 웹 접속은 가능할 때 곧바로 인스턴스에 접속하여 필요한 작업을 할 수 있기 때문에 유용합니다. 2의 경우 다양한 터미널 프로그램(iterm, xshell, ....

AWS 2023.02.27

[2-1] AWS에 간단한 어플리케이션을 올려봅시다

AWS의 EC2에 간단한 어플리케이션을 올려 서비스하기 안녕하세요, 지난번 글을 읽어주셔서 정말 감사했습니다. 지난 이야기가 너무 딱딱하게 이론적인 부분만 설명하며 글만 있었다면 이번에는 실제 핸즈온을 통해 간단한 어플리케이션을 올려보려고 합니다. 정말 간단한 어플리케이션이고 약간의 코딩이 들어가있습니다. 파이썬과 플라스크를 이용해서 심플한 계산기를 만드는 것인데요, 이 과정을 통해 AWS 서비스를 조금 더 이해하게 되시길 바랍니다!😄 우선 AWS EC2에 접속하겠습니다. 계정 생성과 로그인 방법 등에 대한 가이드가 필요하시다면 댓글 부탁드려요! 금방 작성해서 올리도록 하겠습니다! AWS EC2 서비스에 접속하시면 콘솔은 아래와 같은 화면일 것입니다. 여기서 인스턴스를 클릭합니다. 그러면 아래와 같이 인..

AWS 2023.02.26

[네전따] 칼럼 기고를 시작하며, [1] AWS를 시작할 때 필요한 기초 키워드

정말 정말 오랫동안 방치해놓은 블로그를 다시 시작합니다. 이유는 그동안 배웠던 내용들을 정리하며 공유하기 위함이고, 네트워크 전문가 따라잡기라는 훌륭한 카페에 칼럼을 기고할 기회를 얻었기 때문입니다. 아직 배운 것이 많지는 않은데 이게 뭐 저만의 이야기겠습니까. 뭐든 배우면 다 처음이죠. 2년차(정확히 1년 8개월차) 엔지니어로서 그간 배웠던 것들을 정말 쉽게 이해될 수 있도록 문돌이의 관점에서 설명하도록 하겠습니다. 물론 수필처럼 제 이야기도 많이 넣을 겁니다! 오늘이 그 첫번째 이야기를 시작하는 날인데요, 어떤 이야기를 할지 아직도 고민입니다. 고민 끝에, 제가 처음 클라우드를 시작하면서 겪었던 고민들을 해결해 나아갔던 과정과 그 과정에서 배운 기술적인 내용들을 함께 나열해보고자 합니다. 2021년 ..

AWS 2023.02.19

쿠버네티스 만들어보자

SELinux 끄기 vi /etc/selinux/conf enforcing -> permissive 방화벽 해제 swap 비활성화 : swapoff -a && sed -i '/ swap / s/^/#/' /etc/fstab iptable 커널 옵션 활성화 cat centos8에는 다 있음 도커 저장소 설정 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 도커 설치 dnf install docker-ce-19.03.15-3* --nobest --allowerasing(혹시 문제가 된다면 입력한다) 쿠버네티스 설치 dnf install -y --disableexcludes=kubernetes kubead..

AWS 2021.05.23

용어 정리 3/3

Amazon Kinesis Data Firehose 스트리밍 데이터를 데이터 레이크, 데이터 스토어 및 분석 서비스에 안정적으로 로드하는 가장 쉬운 방법. Amazon Kinesis Data Firehose는 스트리밍 데이터를 캡처하고 변환하고 Amazon S3, Amazon Redshift, Amazon Elasticsearch Service, 일반 HTTP 엔드포인트 및 Datadog, New Relic, MongoDB, Splunk와 같은 서비스 공급자로 전송할 수 있습니다. Amazon Kinesis Data Firehose는 데이터 처리량에 대응하여 자동으로 확장되며 지속적인 관리가 필요 없는 완전관리형 서비스다. 또한, 데이터 스트림을 로드하기 전에 배치 처리, 압축, 변환 및 암호화하여 스토..

AWS 2021.03.24

용어 정리 2/?

Amazon EMR (Elastic MapReduce) Apache Spark, Apache Hive, ApacheHBase, Apache Flink, Apache Hudi 및 Presto와 같은 오픈 소스 도구를 사용하여 방대한 양의 데이터를 처리하기 위한 클라우드 빅 데이터 플랫폼. 프로비저닝 용량 및 클러스터 조정 등의 시간이 소요되는 일을 자동화하여 빅 데이터 환경을 쉽게 설치, 운영, 확장을 가능하게 해준다. 기존 온프레미스 솔루션의 50% 이하의 비용으로 표준 Apache spark보다 3배 이상 빠르게 페타바이트 규모의 분석을 실행할 수 있다. EC2, EKS Cluster 또는 AWS Outports 기반 EMR에서 워크로드 실행이 가능하다. Amazone Athena 표준 SQL을 사용해..

AWS 2021.03.20

용어 정리 1/?

지난 번 업로드 이후, 학습의 접근방법에 대해 다시 생각해봤습니다. 왜 AWS를 배우는 걸까요. 돈을 벌기 위해서라면 더 쉬운 길도 많습니다. 우리는 각자, 서로에게 필요한 사람이 되기위해 노력한다고 생각합니다. 제가 누군가에게 필요한 사람이 된다는 것은 저만의 독특성을 가지면서 남들과 대체될 수 없는 유용한 지식이나 기술을 보유해야 한다는 것입니다. 저에게 AWS를 배운다는 것은 이러한 성질을 갖는 것으로 말할 수 있습니다. 물론 이 것만으로 충분하지 않기 때문에 이후에도 계속 새로운 것을 배워야겠지만요. 따라서 공부는 나를 위해 하는 것이라고 배워왔지만, 실제로는 남을 위해 더 많이 쓰이는 것 같습니다. 저를 위한 것도 아니고 남을 위한 것인데 대충할 수는 없겠죠. 잘못된 정보를 남에게 알려주는 것 ..

AWS 2021.03.20

RDS를 간단하게 배워보자1/2

학습 목표 RDS 데이터베이스 인스턴스 만들기 읽기 전용 복제본 생성하기 DynamoDB에서 테이블 생성해보기 시작하기에 앞서, 1. 어떤 DB 엔진을 쓸 것인가. (1) AWS에서는 6가지 DB 엔진을 사용할 수 있다. MySQL 블로그 및 전자상거래와 같은 OLTP(OnLine Transaction Processing) 어플리케이션용으로 설계됐다. MySQL은 MyISAM과 InnoDB 두 가지 스토리지 엔진에서 하나를 선택할 수 있으며 RDS 자동 백업 기능을 사용하기 위해서는 InnoDB를 써야한다. MariaDB MariaDB는 MySQL과 바이너리 수준의 호환성을 가지면서 기능을 향상한 데이터베이스이다. MariaDB는 오라클이 MySQL을 개발한 회사를 인수하면서 MySQL의 미래에 대한 우..

AWS 2021.03.07

S3를 간단하게 배워보자 2/3

학습 목표 1. 버킷을 생성하고 파일을 올린다. 퍼블릭 객체 읽기 권한을 설정한다. 2. 퍼블릭 링크를 복사한 후 AWS 계정이 로그인 되지 않은 환경에서 링크를 열어본다. 3. 버킷에서 버전 관리와 수명 주기 관리를 활성화 한다. 4. 미리 서명된 URL 생성과 사용 5. 버킷에서 정적 웹사이트 호스팅 활성화 6. 데이터의 수명 주기 비용 계산 매우 간단한 과제. 바로 시작하면, 버킷의 속성에 들어가 "버킷 버전 관리"의 편집을 눌러준 후 활성화로 바꿔준다. test1 파일을 두번 업로드 한다. 내용은 바꿔도 되고 안바꿔도 시간을 기준으로 버전을 나눈다. 객체 탭에서 "버전 나열"을 켜주면 버전 관리가 되고 있는 것을 확인 할 수 있다. 이전 버전을 계속 가지고 있는 것은 용량을 효율적으로 관리하기 위..

AWS 2021.03.01

S3를 간단하게 배워보자 3/3

1. 버킷을 생성하고 파일을 올린다. 퍼블릭 객체 읽기 권한을 설정한다. 2. 퍼블릭 링크를 복사한 후 AWS 계정이 로그인 되지 않은 환경에서 링크를 열어본다. 3. 버킷에서 버전 관리와 수명 주기 관리를 활성화 한다. 4. 미리 서명된 URL 생성과 사용 5. 버킷에서 정적 웹사이트 호스팅 활성화 6. 데이터의 수명 주기 비용 계산 이번에도 쉬운 과제. html기초과목을 수강하면서 2강을 듣고 만들어본 index.html이 이미 인스턴스에 있다 그것을 s3에 업로드하고 정적 웹사이트 호스팅을 시도해보겠다. index2를 s3로 옮기고 확인해준다. 외부 엑세스를 허용해줘야하기 때문에 체크박스를 해제하고 저장한다. 그리고 버킷의 속성 탭으로가서 정적 웹 사이트 호스팅을 편집해준다. index를 그대로 옮..

AWS 2021.03.01