본문 바로가기
반응형

전체 글296

2-4. 도커 설치하기: OS(Ubuntu/CentOS)에 Docker 설치! ## Repository 를 이용해서 도커 설치 https://docs.docker.com/engine/install/ubuntu/#set-up-the-repository Install Docker Engine on Ubuntu docs.docker.com ## sudo docker version ## root 로 해서 설치 ## sudo systemctl enable docker 도 할 것!! ## docker version 확인!! ## 현재는 docker 는 root 만 권한 있음 - usermod -a -G docker guru (도커 그룹에 guru 사용자 추가) 2023. 1. 11.
2-2. 도커 설치하기: 우분투(Ubuntu) 설치 ## 텍스트 로그인으로 변경 ## XShell 설정 2023. 1. 11.
2-1. 도커 설치하기: Virtualbox 설치 / VM 생성 ## 6.1 버전 설치 할것!! https://www.youwindowsworld.com/en/downloads/software/development/visual-c-2019-redistributable-package/download-532-visual-c-2019-redistributable-64-bit Launching program download Visual C++ 2019 Redistributable 64-bit - You Windows World We use cookies to ensure that we give you the best experience on our website and to ensure we show advertising that is relevant to you. Clic.. 2023. 1. 11.
2. EKS에서 EFS를 공유 스토리지로 사용하는 웹서버 띄우기 ## 쿠버네티스용 EFS 구성하기 - 보안그룹 추가 (해당 워커노드 서브넷 모두) : k8s-ClusterSharedNodeSecurityGroup~ : k8s-nodegroup-ng~ - EFS ID 생성 ## Node와 연결 TEST - mkdir /web-data - mount -t nfs4 /web-data - mount | tail -1 (연결 정보 확인) ## EFS Dynamic Provisioner 배포하기 - Dynamic Provisioner 4개 파일 활용 : configmap.yaml (환경변수 정의) : storage-class.yaml : efs-provisioner-deploy.yaml : kubectl apply -f ~~ 4개 파일 실행 : kubectl get storag.. 2023. 1. 11.
[linux] [따배셸] Bash Shell의 변수 Shell의 변수란? 데이터를 넣는 그릇이다. 선언할 필요 없이 사용이 가능하다. 변수명: 문자, 숫자, _로 구성할 수 있지만 시작은 반드시 문자나 _로 시작해야 한다. 변수 선언 vername=value ex : fname=yang ex : score=100 먼저 변수를 하나 생성해 보았다. 두번째로 firstname이라고 하고 띄어쓴 후 변수를 선언하니 오류가 뜨는 것을 확인할 수 있었다. 그리고 마지막으로 score라는 변수를 선언해 주었다. 변수 확인 echo, set ex : echo $fname ex : set 다음은 변수를 확인하는 방법이다. echo 이후 $표시를 한 후 위에서 지정한 변수명을 입력 해 주었다. 위에서 지정한 이름을 차례대로 입력하자 yang과 100이 제대로 나오는 것을.. 2023. 1. 10.
AWS (Amazon Web Service) EKS를 이용하여 Kubernetes를 구축해보자! - 2 2. EKS 관리시스템에 AWS CLI 설치 3. EKS 관리시스템에 EKS 설치/운영툴 eksctl 설치 4. EKS 관리시스템에 k8s 관리툴인 kubectl 설치 5. AWS IAM 생성하기 - eks-mng-user 생성 6. 관리시스템에서 AWS 관리할 수 있도록 eks-mng-user 등록 - aws sts get-caller-identity (성공 확인) 7. AWS 구성시 생략 가능 8. EKS 구성 9. 설치 완료 확인, CLI 명령어 자동완성 기능 추가 - kubectl get nodes ## EKS 는 프라이빗 쿠버네티스와 다르게, 관리시스템에서 curl 테스트 불가 (IP 대역 다름) - 따라서 워커노드에 들어가서 curl 테스트 할것! 10. 간단한 실습 - kubectl crea.. 2023. 1. 10.
AWS (Amazon Web Service) EKS를 이용하여 Kubernetes를 구축해보자! - 1 https://github.com/237summit/Kubernetes-on-AWS/blob/main/LAB_k8s_install GitHub - 237summit/Kubernetes-on-AWS: setst setst. Contribute to 237summit/Kubernetes-on-AWS development by creating an account on GitHub. github.com ## AWS EKS 관리서버 생성 - EC2 활용 2023. 1. 9.
[linux] crontab이란 무엇인가? Crontab이란 무엇인가? crontab이란 리눅스에서는 일반적으로 crons 데몬이 주기적인 작업 실행을 처리한다. cron이 시작될 때부터 끝날때까지 실행되며 cron 설정 파일은 cron table이라 하며 이를 줄여 crontab이라고 한다. 윈도우의 스케줄러와 비슷한 역할을 한다고 생각하면 된다. Crontab 기본 먼저 crond 데몬 구동이 되고있는지 확인한다. 그 후 sudo 명령어를 사용해서 현재 cron 데몬이 실행중인 역시 확인해 준다. 그 후 기본이 되는 crontab -e를 입력한다. 이는 크론탭을 이용해 작업을 할당할 때 사용하는 명령어이다. 위 커맨드를 입력하면 vi 편집기와 비슷한 텍스트 편집기가 열린다. 만약 처음 시작하면 nano를 사용할 것인지 vi를 사용할 것인지 묻.. 2023. 1. 9.
Terraform: AWS에서 EC2 프로비저닝 What is Terraform? Terraform is a tool made by Hashicorp for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers ( aws, azure, Google cloud) as well as custom in-house solutions. You can compare Terraform to Cloudformation . They are simililar but at the same time have differences. Steps to provision Download the t.. 2023. 1. 6.
[Linux 기초] 쉘 스크립트란 무엇인가? 쉘 스크립트란 무엇인가? 우리는 쉘을 이용해서 하나만의 명령을 지정할 수 있지만 여러개의 명령을 순차적으로 실행하는것을 통해서 하나의 업무를 진행할 수 있다. 순차적으로 명령을 실행해야 하는 것을 어딘가에 작성한 후 추후에 재사용할 수 있도록 하는 것이다. 또한 6개월 ~ 1년사이에 한번씩 사용하지만 매우 복잡한 코드거나 하나라도 오타가 나면 안될 경우 역시 쉘 스크립트를 사용하는 것이 안전하고, 사용자에게 편의를 준다. 쉘 스크립트 실습 먼저 우리는 간단한 실습을 위해 script라는 디렉토리를 만든 다음 script 디렉토리로 이동 해 주었다. 우리는 .log으로 끝나는 파일들을 정기적으로 bak 이라는 디렉토리로 백업을 시키려고 한다. 먼저 쉘 스크립트가 아닌 명령어를 통해서 실행해보도록 하자. 먼.. 2022. 12. 17.
[Linux 기초] 쉘과 커널 쉘이란 무엇인가? 쉘을 공부할 때 같이 커널도 공부를 하는게 좋다. 커널이란 알맹이 코어 이런 뜻을 가지며, 쉘은 껍데기, 주변 이라는 뜻을 가진다. 먼저 이 사진을 보면 가장 안쪽에 하드웨어가 있다. 하드웨어란 우리가 쓰는 CPU, 메모리, SSD 등을 의미한다. 컴퓨터를 쓴다는건 결국 기계를 동작시켜 결과를 얻어내는 일이다. 하드웨어를 감싸는 것이 바로 커널이다. 커널은 하드웨어를 직접적으로 제어하는 운영체제에서 가장 중심이 되는 코어이다. 그 커널 바깥쪽에는 쉘이 존재한다. 쉘은 사용자가 리눅스에서 ls 명령어를 내리면 디렉토리의 리스트를 보여주는것 같은 입력한 명령이 쉘을 대상으로 명령을 내리는 것이다. 쉘은 우리가 입력한 명령을 해석해서 커널이 이해할 수 있는 방식으로 커널에게 전달한다. 그렇다.. 2022. 12. 14.
[Linux 기초] 왜 CLI를 사용하는 것인가? 우리는 왜 명령어를 이용해서 리눅스를 다루게 되는 걸까? 우리가 GUI와 CLI를 이용해서 컴퓨터를 이용한다면 당연히 GUI가 많은 컴퓨터의 에너지를 사용하게 된다. 일반인들이 사용하는 컴퓨터 시스템은 쉽게 사용하게 하기 위해 많은 컴퓨터 에너지가 사용에 초점이 맞춰진다. 하지만 서버 컴퓨터 같은 경우 일반인에 대한 초점이 아니기 때문에 명령에 집중하는 기능만 가지면 컴퓨터 용량, CPU, Memory 등 에너지를 효율적으로 사용할 수 있다. 두 번째 이유는 GUI 방식은 쉽다는 장점이 있지만 많은 노동이 필요하다. 예를들어 GUI 시스템에서 일을 처리한다고 가정하면 주어진 프로그램을 실행시킬 때 어떤 일을 실행한 후 기다리고 완료된 후 다음일을 진행하게 된다. 즉 배우기는 쉽지만 그걸 이용해서 순차적으.. 2022. 12. 11.
[Linux 기초] 다운로드 방법 (wget, git) 명령어 기반 환경인 리눅스 환경에서 파일을 다운로드 받을 때는 어떻게 해야할까? GUI 방식에서는 다운로드를 클릭하면 다운로드를 받는 형식이다. 하지만 리눅스 환경에서는 다르게 다운로드를 받는다. 가장 많이 사용하는 것 중 하나가 wget이라는 프로그램이다. URL을 통해서 파일을 다운로드 받는게 가능하다. 그렇다면 URL은 어떻게 알아내야 할까? 이렇게 GUI 환경에 보면 Copy Link address를 할 수 있다. 이걸 복사한 이후 그 주소를 wget 뒤에 붙여 넣을 수 있다. 그 후 ls -l을 통해서 다운로드 받은 download 파일을 알 수 있었다. 두번째로는 git 이라고 하는 프로그램이다. git은 버전관리 시스템이라는 카테고리에 속하는 구체적인 제품 중 하나이다. 이 git은 굉장히 .. 2022. 12. 11.
[Java] Collection이란? 자바에는 컬렉션(Collection)이라는 것이 존재한다. Collection은 많이 사용되지만 정확하게 어떤 것인지는 모른채로 사용을 하는데 이에 대해서 정리 하고자 한다. Collection이란? 객체의 모음, 그룹이라 할 수 있다. 자바에서 모든 컬렉션 클래스와 인터페이스를 포함 하는 "Collection Framework"라는 개념이 JDK 1.2에서 정의 되었다. Collection 인터페이스(java.util.Collection)와 Map 인터페이스(java.util.Map) 자바 컬렉션 클래스의 주요 "루트" 인터페이스이다. Collection 인터페이스는 List, Set과 이미지에는 없지만 Queue 3가지의 상위 인터페이스로 분류할 수 있다. Map은 Collection에 포함되지 않지.. 2022. 12. 11.
[Linux 기초] Package Manager Package란 흔히 프로그램 혹은 애플리케이션 혹은 앱이라고 부르는 것들을 의미한다. 그리고 우리가 컴퓨터를 사용한다고 하는 것은 이러한 Package에 있는 기능을 이용해 다양한 처리를 하는 것이 컴퓨터를 사용하는 행위라 할 수 있다. 윈도우나 맥과 같은 컴퓨터와 마찬가지로 리눅스에서도 여러가지 소프트웨어 패키지가 존재한다. 기본적으로 탑재되어 있는 패키지들 역시 존재한다. ls, mkdir 등 모두 패키지라고 할 수 있다. 이렇게 기본적으로 내장된 프로그램 말고 기본적으로 포함되어 있지 않지만 여러가지 패키지를 설치해야 할 때가 있다. 오늘날의 리눅스는 패키지 매니저를 기본적으로 지원한다. 이 매니저는 다운, 삭제 서칭 등 관리를 지원한다. 리눅스에서는 대표적으로 apt, yum이라는 것이 있다. .. 2022. 12. 8.
[Java] 동기, 비동기 방식 (Asynchronous processing model) 동기, 비동기 방식은 업무를 보다보면 정말 많이 듣게 될 것이다. 구글에 동기와 비동기를 검색해본 결과 가장 많이 비유를 드는것은 아래의 은행 업무, 혹은 카페에서 음료를 주문하는 예시가 있다. 위 그림처럼 동기식 처리는 은행 업무를 한 줄로 서 순서대로 업무를 진행하는 것과 같고, 비동기식은 여러 업무 창에서 일을 분업해서 진행하는 것과 같다고 볼 수 있다. 그럼 정확하게 업무 처리에 대해 확인해보자. 동기식 처리 (Synchronous) 동기식 처리 모델 (Synchronous processing model)은 직렬적으로 테스크를 수행한다. 즉, 테스크는 순차적으로 실행되며 어떤 작업이 수행중이면 다음 작업은 대기하게 된다. 아래는 동기식으로 동작하는 코드이다. package Synchro_Async.. 2022. 12. 8.
[linux 기초] file edit (nano) 파일을 만들고 편집할 때는 어떤 명령어를 사용할까? 운영체제에서 파일이라고 하는 것은 정보를 저장하는 가장 기본적인 수단, 저장소라고 할 수 있다. 디렉토리라고 하는 것은 그 파일을 잘 정리정돈을 하기 위한 수납공간이라고 할 수 있다. 맥과 같은 컴퓨터에서는 편집기를 이용한다 ex: 메모장 명령어 기반의 시스템에서도 형태가 다르지만 이러한 편집기가 존재한다. 대표적인 편집기로는 nano, vi가 있다. nano는 처음 리눅스를 쓰는 사람한테 추천하고 중, 고급자는 vi를 추천한다. vi는 익숙해지면 매우 편하지만 익숙해지기까지 어려울 수 있다. nano 편집기를 사용하기 위해서는 nano라고 입력한 후 엔터를 치면 아래와 같은 화면이 뜨면서 편집을 할 수 있게 된다. nano 편집기에서 가장 기본적인 h.. 2022. 12. 7.
[linux 기초] --help & man 우리가 명령어를 사용할 때 그 명령어에 대한 자세한 설명이 필요할 때 인터넷을 찾는것도 방법이지만 가장 기본적인 방법은 메뉴얼을 찾는 것이다. 기본적인 명령마다 메뉴얼은 내장되어 있다. 우리가 폴더를 만드는 명령 mkdir 뒤에 --help를 붙여보자. 그러면 위처럼 mkdir에 대한 간단한 설명이 나오게 된다. Usage는 대부분의 명령어의 --help에 존재하며 사용법 용법을 의미한다. 즉 mkdir 명령어의 기본적인 동작방법을 알려주는 것이다. 우리는 위에 있는 mkdir의 옵션중에서 p 옵션을 사용했다. mkdir은 기본적으로 디렉토리 하나를 생성하는 명령어이다. 하지만 p 옵션을 붙여서 사용하게 된다면 dir4를 만들기 전 dir3를 만드려 하고 만약 또 dir2가 없으면 만드는 식으로 부모 디.. 2022. 12. 7.
[Serverless 기반 아키텍처/개발] 2강.이벤트 기반 아키텍처 ## 테스트 S3 버킷 생성 - rw-image-test 생성 ## S3 접근을 위한 역할 생성 (IAM Role) - AmazonS3FullAccess 추가 - CloudWatchFullAccess 추가 - 역할 이름 : demo-image-resize-role 생성 ## 소스코드 확인 ## 람다 함수 생성 (서울리전 선택) - 함수 이름 : demo-image-resize - 기존 역할 : demo-image-resize-role 선택 - 에서 업로드 클릭 (Zip 파일 선택) ## S3에서 이벤트를 통해서 람다가 트리거되도록 작업 - S3 버킷 (rw-image-test) 속성 선택 --> 이벤트 알림 생성 클릭 - 기존에 생성한 람다 함수 연동 ## 람다에서 S3연동 확인 ## 최종 연동 테스트 .. 2022. 12. 7.
[Java] Basic 용어 정리 Java Class 객체 지향 언어에서는 현실세계를 반영하기 위해 객체(Object)라는 개념을 도입하게 된다. 현실세계에서 보는 사람들, 자동차, TV 등이 객체지향언어에서는 객체로 표현이 된다. 클래스란 객체를 생성하기 위해 그 객체가 어떤 데이터를 갖고 어떤 연산을 하는지에 대해 정의한다. 클래스 정의 - 사람(Human)이라는 클래스가 있다고 가정하자. 사람은 눈, 코, 입이 있고, 손과 다리가 있다. 이런것이 클래스에서는 데이터이다. 그리고 눈으로는 사물을 보고, 코로는 냄새를 맡고, 입으로는 말을 하거나 음식을 먹는다. 이것이 클래스 관점으로 보면 연산이다. 간단하게 얘기하면 멤버 변수와 멤버 메소드라고 기억하길 바란다. 코드로 정의를 해본다면 이렇게 된다. class Human{ String.. 2022. 12. 7.
[AWS] AWS Microservice 란 (1/2) ? 2022. 12. 6.
[Linux 기초] 리눅스 디렉토리와 파일 리눅스 기초를 통해서 생활코딩님의 리눅스 강의를 처음부터 따라하려고 한다. ls -al ls -al은 내가 머무는 디렉토리의 모든 (all)파일들의 목록을 보여준다. -al 명령어를 사용하면 숨겨져 있는 모든 파일들을 보여주게 된다. 또한 리눅스는 명령어를 내리면 현재 위치를 기준으로 동작하기 때문에 현재 디렉토리의 위치가 매우 중요하다. 그 중 하나의 명령어가 pwd 명령어이다. pwd pwd를 입력을 하고 엔터를 눌러보면 자신이 현재 위치한 디렉토리를 파악할 수 있다. 그렇다면 폴더를 만드는 명령어는 무엇일까? mkdir hello_linux 바로 mkdir 명령어이다. 이 명령어로 hello_linux라는 폴더를 만든 후 ls를 통해 하위폴더에 hello_linux가 잘 생성되었는지 확인 할 수 있.. 2022. 12. 6.
[Serverless 기반 아키텍처/개발] 1강.디커플링 2022. 12. 5.
Amazon EC2 활용 팁 12개 (1편) 2022. 12. 4.
[Azure] AWS와 Azure의 용어 비교 Marketplace AWS Azure Service AWS Marketplace Azure Marketplace 단일 가상 컴퓨터나 여러 가상 컴퓨터 솔루션을 포함하여 배포하기 쉽고 자동으로 구성되는 타사 애플리케이션 Compute AWS Azure Service EC2 VM 가상머신 Auto Scaling Virutal Machine Scale Sets 수요 증가/감소에 따라 유연하게 서버 자원 제공 Security Groups Network Security Group 보안그룹 Elastic IP Static IP 고정 아이피 VPC Virtual Network 가상 네트워크 ECS ACS(Azure Container Service) 컨테이너 서비스 EKS AKS 쿠버네티스 서비스 AMI VM Ima.. 2022. 12. 4.
[AWS 기타] AWS KMS란 무엇인가? AWS KMS란 무엇인가? AWS KMS는 암호화 작업에 사용되는 키를 쉽게 생성하고 제어할 수 있도록 지원하는 관리형 서비스이다. 이 서비스는 고가용성 키 생성, 스토리지, 관리 및 감사 솔루션을 제공하므로, 이를 통해 자체 애플리케이션 내 데이터를 암호화 또는 디지털 방식으로 서명하거나, AWS 서비스 전체에서 데이터의 암호화를 제어할 수 있다. KMS는 크게 세가지 방식으로 key 관리 서비스를 제공한다. AWS managed key AWS 서비스들이 KMS를 통해 Key를 서비스 받는 것으로 내부적으로 자동으로 일어나며 사용자의 직접적인 제어는 불가능하다. Customer managed key 사용자가 직접 Key를 생성하고 관리하는 것이다. 우리가 흔히 말하는 CMK가 여기에 해당된다. Cust.. 2022. 11. 27.
[AWS 기타] 꼭 알아야 하는 IAM 정책 IAM Policy란 무엇인가? IAM Policy의 종류와 사용 목적 AWS Organizations (Service Contorl Policies SCPs) AWS의 무료 서비스이며 멀티 계정을 관리하는 서비스이다. 두개 이상의 AWS 계정을 운영한다면 Organizaitions을 고려하는 경우가 많다. 그럴 경우 Organizations 안에 있는 SCPs 서비스를 고려할 수 있다. AWS Identity and Access Management(IAM)(Permission Policies, Permission Boundaries) 가장 많이 사용하는 Permission Policies, Permission Boundaries이다. 한번이라도 IAM을 써봤다면 Permission Policies를 써.. 2022. 11. 26.
[AWS][SAA][EXAMTOPICS][C03] Question 42 A company runs a highly available image-processing application on Amazon EC2 instances in a single VPC. The EC2 instances run inside several subnets across multiple Availability Zones. The EC2 instances do not communicate with each other. However, the EC2 instances download images from Amazon S3 and upload images to Amazon S3 through a single NAT gateway. The company is concerned about data tran.. 2022. 11. 25.
[AWS][SAA][EXAMTOPICS][C03] Question 41 A company's application integrates with multiple software-as-a-service (SaaS) sources for data collection. The company runs Amazon EC2 instances to receive the data and to upload the data to an Amazon S3 bucket for analysis. The same EC2 instance that receives and uploads the data also sends a notification to the user when an upload is complete. The company has noticed slow application performan.. 2022. 11. 25.
[AWS][SAA][EXAMTOPICS][C03] Question 40 A company has thousands of edge devices that collectively generate 1 TB of status alerts each day. Each alert is approximately 2 KB in size. A solutions architect needs to implement a solution to ingest and store the alerts for future analysis. The company wants a highly available solution. However, the company needs to minimize costs and does not want to manage additional infrastructure. Additi.. 2022. 11. 25.
반응형