전체 글

전체 글

    [Ansible] Ansible SSH Jump : Public Bastion to Private Instance

    📌INDEX 인스턴스 구성하기 첫번째 방법(ProxyJump) 두번째 방법(Inventory 파일) ✔️ 인스턴스 구성하기 본 실습의 아키텍처(Architecture)는 다음과 같다. Ansible -> Bastion 으로 SSH 접속할 때와, Bastion -> Private Instance로 SSH 접속할 때 다른 키 페어를 사용할 예정이다. 1. Ansible Controller에서 공개키 복사 (편의를 위해) controller에 생성되어있는 공개키 ~/.ssh/id_rsa.pub를 사용 [vagrant@controller ~]$ cat .ssh/id_rsa.pub ...키 내용... 2. AWS에서 [작업] - [키 페어 가져오기] 복사한 키를 붙여넣기 3. Private Subnet 생성 de..

    [Ansible] Ansible 명령어 옵션

    📌INDEX Ansible 옵션 ansible-config 명령 모듈 ad-hoc 명령 ✔️ Ansible 옵션 SSH 접속 옵션 -u REMOTE_USER, --user REMOTE_USER : SSH 접속 계정(기본: 현재 사용자) -k, --ask-pass : 옵션 사용 SSH 패스워드 인증 옵션 사용하지 않으면 --> SSH 키 인증 ansible의 기본 인증 방법: SSH 키 인증 권한 상승 옵션 -b, --become : 권한 상승 옵션 사용하지 않으면 --> 권한상승 하지 않음 --become-method sudo: 기본값 su --become-user : 어떤 사용자? root: 기본값 -K, --ask-become-pass : sudo 패스워드 묻기 옵션 사용하지 않으면 --> Passw..

    [Ansible] Ansible 구성(Configuration) 파일 및 권한 설정

    📌INDEX 구성 파일 권한 상승(Privilege Escalation) ✔️ 구성 파일 Ansible Configuration settings 설정 파일 위치 설정파일에는 우선 순위가 있음 같은 설정에 대해서 어디가 우선 순위가 높은지 우선순위 1) ANSIBLE_CONFIG (environment variable if set) 환경변수 설정 우선 순위가 가장 높기 때문에 어떤 디렉토리에 있든지 적용됨 일반적으로 사용 잘 안됨 2) ansible.cfg : 현재 작업 디렉토리 자주 사용되는 설정 파일 현재 디렉토리에 있을 때만 적용됨 3) ~/.ansible.cfg : 홈 디렉토리 현재 작업 디렉토리인 ansible.cfg와 구분하기 : ansible 앞에 '.' 있음 4) /etc/ansible/an..

    [Ansible] 정적 인벤토리 ini, yaml 작성 및 확인

    📌INDEX 정적 인벤토리 인벤토리 그룹 호스트 범위 인벤토리 변수 인벤토리 파일 확인 ✔️ 정적 인벤토리 inventory 구축 방법 기본 인벤토리 파일: /etc/ansible/hosts -> 되도록이면 사용하지 않는다 기본 위치에 있는 인벤토리 파일 아니면: -i 옵션 사용 포맷: ini, yaml 기본적으로 ini 사용 playbook은 yaml으로 생성해야함 ini 형식 예시 key=value [Section] key=value key ✔️ 인벤토리 그룹 인벤토리 그룹 [ ]: 인벤토리 그룹 하나의 노드가 여러 그룹에 속할 수 있음 => 1:1 매칭 관계는 아니다 : 공식문서 ansible 명령 시 ip주소 대신 그룹을 지정할 수 있음 inventory 파일에 정의되어 있어야함 ini 예시 ma..

    [Ansible] Ansible 설치 및 개요

    📌INDEX IaC Ansible Architecture Ansible 설치 Inventory Ansible Module Ad-Hoc 명령 Playbook ✔️ IaC IaC란 Infrastructure as Code(코드형 인프라)의 약자로, 수동 프로세스가 아닌 코드를 통해 인프라를 관리하고 프로비저닝하는 것을 말함 장점 비용 절감 빠른 속도 안정성 재사용성 버전 관리 IaC는 구성 사양을 코드화하고 문서화함으로써 구성 관리(Configuration Management)를 지원 구성 관리 : 패키지 설치, 설정 파일, 파일 복사 등 배포 : 리소스 새로 생성, 리소스 변경, 삭제 , 관리 구성 관리 도구(Tool) Chef Puppet Ansible Saltstack ... 배포(Provisionin..

    SSH 인증 방식

    📌INDEX SSH 파일 패스워드 기반 SSH 인증 키 기반 SSH 인증 SSH 키 생성 SSH 키 미리받기 서버에 키 등록 SSH 접속 ✔️ SSH 파일 /etc/ssh/ 서버의 키 쌍 : public키, private키 /etc/ssh/ssh_config ssh 서비스 설정파일(클라이언트) /etc/ssh/sshd_config sshd 서비스 설정파일(서버) 패스워드 인증방식 비활성화가 default PasswordAuthentication no 키 기반 인증방식은 활성화가 default GSSAPIAuthentication yes ~/.ssh/ Client(계정)의 키 쌍 ~/.ssh/known_hosts 접속했던 호스트를 기록(핑거프린트) 한번 기록되고 나면 이후 접속할 때 물어보지 않음 계정을 ..

    Vagrant 설치 및 기본 사용법 (feat. Chocolatey)

    📌INDEX Vagrant란? Vagrantfile Vagrant 명령어 ✔️ Vagrant란? Vagrant는 가상화 인스턴스를 관리하는 소프트웨어이다. IaC 도구 중의 하나 Vagrant를 이용하면 가상 인스턴스를 만들고 실행하는 과정이 매우 빠르고 편리 지원하는 가상화 기술 VirtualBox VMware KVM Linux Container(LXC) Docker Vagrant를 설치하기 위해 Chocolatey를 이용할 예정이다. Chocolatey란? Windows용 패키지 관리자 Chocolatey는 Linux에서의 apt(apt-get), yum이나 macOS에서의 Homebrew처럼 패키지를 설치/업데이트/제거 등 관리하는 데에 사용하는 Windows용 프로그램 Chocolatey 설치(W..

    AWS를 이용한 HA(High Availability) wordpress 서비스 배포

    💻주제 : AWS를 이용한 HA(High Availability) wordpress 서비스 배포 ✍️작성자 : nayoungs 📅진행 기간: 2022.04.06 ~ 2022.04.08 📌목차 1. 프로젝트 개요 1-1. 프로젝트 주제 선정 동기 및 목표 1-2. 프로젝트 특징 1-3. 프로젝트 환경 2. 프로젝트 과정 2-1. VPC 구성 2-2. 키 페어 생성 2-3. Bastion Host 구성 2-4. RDS 구성 2-5. EC2 인스턴스 생성 2-6. EC2에서 WordPress 구성 2-7. EC2 AMI 생성 2-8. Load Balancing 및 Auto Scaling 구성 2-9. CloudFront 배포 3. 프로젝트 최종 결과 1. 프로젝트 개요 1-1. 프로젝트 주제 선정 동기 및 목..

    [AWS] CDN과 Amazon CloudFront + S3 연동

    📌INDEX CDN이란? Amazon CloudFront S3를 이용한 정적 웹 호스팅 S3와 CloudFront 연동하기 ✔️ CDN이란? CDN은 Contenst Delivery Network 또는 Content Distribution Network의 약자로, 콘텐츠를 효율적으로 전달하기 위해 여러 노드를 가진 네트워크에 데이터를 저장하여 제공하는 시스템이다. 주요 ISP(Internet Services Provider)의 CDN 서버에 콘텐츠를 분산시키고 유저의 네트워크 경로 상 가장 가까운 곳의 서버로부터 콘텐츠를 전송받도록하여 트래픽이 특정 서버에 집중되지 않고 각 지역 서버로 분산되도록 하는 기술이다. 동작 원리 콘텐츠에 대한 요청이 발생하게 되면 사용자(End-User)와 가장 가까운 위치에..

    [AWS] Amazon Auto Scaling

    📌INDEX 가용성(Availability) Amazon Auto Scaling Auto Scaling과 Load Balancer 실습 ✔️ 가용성(Availability) 가용성이란, 해당 시스템이나 서비스가 가동 및 실행되는 시간의 비율을 말함 서버와 네트워크, 프로그램 등의 정보 시스템이 정상적으로 사용 가능한 정도 가동률이 높다는 것을 의미하며, 이러한 가용성은 보통 '9'로 측정 고가용성(High Availabiliy, HA) : 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질 세븐 나인 : 99.99999의 가용성, 상징적인 의미, 절대로 장애가 일어나면 안되는 서비스들 SLA(Service-Level Agreement) : SLA Calculator ✔️ Amazon..

    [AWS] 배스천 호스트(Bastion Host)

    📌INDEX 배스천 호스트(Bastion Host) AWS를 통해 Bastion Host 구현해보기 ✔️ 배스천 호스트(Bastion Host)란? Bastion Host란 침입 차단 소프트웨어가 설치되어 내부와 외부 네트워크 사이에서 일종의 게이트 역할을 수행하는 호스트이다. 내부 네트워크와 외부 네트워크 사이에 위치하는 게이트웨이 보안 대책의 일환으로 사용됨 내부 네트워크를 겨냥한 공격에 대해 방어하도록 설계됨 Bastion Host는 접근 제어 기능과 더불어 게이트웨이로서 가상 서버(Proxy Server)의 설치, 인증, 로그 등을 담당 위험에 노출되는 경우가 많기 때문에, Bastion Host는 네트워크 보안상 가장 중요한 방화벽 호스트임 ✔️ AWS를 통해 Bastion Host 구현해보기 ..

    [AWS] Amazon RDS(Relational Database Services)란?

    📌INDEX Amazon RDS란? Amazon RDS의 주요 특징 AWS에서 클라우드 데이터베이스 서비스 선택 실습 1. AWS 자습서 : RDS로 DB 구성 2. EC2에 DB 서버 직접 설치해서 구성하기 ✔️ Amazon RDS란? Amazon RDS는 Relational Database Services의 약자로, 클라우드에서 관계형 데이터베이스를 더욱 간편하게 설정, 운영 및 확장할 수 있는 서비스이다 주로 사용되는 6개의 데이터베이스 엔진 중에서 선택할 수 있는 아마존 관계형 데이터베이스 서비스 하드웨어 프로비저닝, 데이터베이스 설정, 패치 및 백업과 같은 시간 소모적인 관리 작업을 자동화 비용 효율적이고 크기 조정 가능한 데이터베이스 서비스 제공 특징 관리 용이성 : 인프라의 프로비저닝/DB ..

728x90