반응형

2020/08 10

0. FreeNAS 개요 및 설치

NAS 란? 과거 파일을 주고받을때 USB, CD 등의 플래시메모리로 저장해서 직접 주고 받았다. 하지만 사람들은 인터넷이 발전된 지금 굳이 필요할까? 라는 생각을 하게된다. 그래서 나타난 것이 클라우드 시스템입니다. 대기업에서 클라우드를 지원하지만 용량,네트워크속도 등등 고민하게 되서 나온것이 NAS 이다. NAS(Network Attached Stroage)란 네트워크 연결 저장장치로 컴퓨터에 직접 연결하지 않고 네트워크를 통해 데이터를 주고받는 저장장치입니다 과거에는 NAS를 기업에서 데이터 공유를 목적으로 많이 사용했지만 가격이 저렴해지고 소형화가 되면서 가정에서도 많이 사용하게 됬다. NAS의 장점 1) 인터넷에 연결만 되어 있다면 어디서든 사용이 가능핟. 2) 다양한 용도로 사용이 가능하다. ..

NAS 2020.08.28

Terraform 개요 및 설치

Terraform ? - HashiCorp 사의 코드형 (Infrastructure as Code) 도구 이다. - 클라우드, 물리적시스템, VM, 네트워크 장비, 컨테이너 등 인프라를 자동화돤 배포를 제공 - 사람이 쓰고 읽을 수 있는 자동화된 배포를 위해 HCL(HashiCorp Configuration Language)이라는 구성 언어로 작성하고 인프라를 관리할 수 있다. - 공급자(Provider)의 API와 상호작용하며 리소스를 배포한다. - 공급자는 일반적으로 AWS, GCP, Azure... --- * OS : Ubuntu 18.04 LTS * Provider : AWS --- 1. AWS IAM 구성 1. AWS 회원가입 - https://aws.amazon.com/ko/ 클라우드 서비스 ..

Wordpress 만드는 과정 - 4 (role)

Role? 역할? 알려진 파일구조를 기반으로 특정 var_files, 작업 및 핸들러를 자동으로 로드하는 방법 역할별로 콘텐츠를 그룹화 하면 다른 사용자와 쉽게 역할을 공유할 수 있다. # tree roles [student@controller ~]$ tree roles/ roles/ ├── apache │ ├── handlers │ │ └── main.yaml │ ├── tasks │ │ └── main.yaml │ ├── templates │ │ └── apache.conf.j2 │ └── vars │ └── main.yaml ├── common │ └── tasks │ └── main.yaml ├── haproxy │ ├── handlers │ │ └── main.yaml │ ├── tasks │ ..

Automation/Ansible 2020.08.14

Wordpress 만드는 과정 3 - (변수 및 Jinja2 template)

변수 일부시스템에서 다른동작과 약간 다른 동작이나 구성을 설정하기 위해 따로 설정한다. [student@controller ~]$ tree group_vars/ group_vars/ └── wp ├── apache.yaml ├── haproxy.yaml ├── mariadb.yaml ├── nfs.yaml └── wordpress.yaml 1 directory, 5 files # apache.yaml apache: port: 80 php: repo: pkg: "https://rpms.remirepo.net/enterprise/remi-release-7.rpm " # haproxy.yaml haproxy: frontend: port: 80 backend: name: wordpress balance_type..

Automation/Ansible 2020.08.14

Wordpress 만드는 과정 - 2 (AD-HOC, Playbook)

AD-HOC 이란? 명령으로 실행하는 Asible 실행방법 $ ansible -m -a (참고) https://docs.ansible.com/ansible/latest/user_guide/intro_adhoc.html Introduction to ad-hoc commands — Ansible Documentation An Ansible ad-hoc command uses the /usr/bin/ansible command-line tool to automate a single task on one or more managed nodes. Ad-hoc commands are quick and easy, but they are not reusable. So why learn about ad-hoc comma..

Automation/Ansible 2020.08.14

Wordpress 만드는 과정 - 1 (준비물, inventory, 구성파일)

0. 사전준비 VM 5대 1. Controller ip : 192.168.123.41 2. wordpress1 ip : 192.168.123.51 3. wordpress2 ip : 192.168.123.52 4. db ip : 192.168.123.53 5. haproxy ip : 192.168.123.54 1. Inventory 란? - 데이터 소스를 가리켜 Ansible이 작업 대상으로 지정하는데 사용하는 호스트의 인벤토리를 컴파일 할 수 있다. 2. Inventroy 설정 (참고) https://docs.ansible.com/ansible/latest/plugins/inventory.html Inventory Plugins — Ansible Documentation Inventory plugins ..

Automation/Ansible 2020.08.14

[Ansible] 1. 설치 및 Ad-hoc로만 wordpress 올려보기 (맛보기)

* CentOS 7 환경입니다. * Ansible 2.7 사용합니다. 0. VM 3대 준비 0-1. Controller CPU : 2 RAM : 3072 IP : 192.168.123.41 0-2. Node-1 CPU : 2 RAM : 3072 IP : 192.168.123.51 0-3. Node-2 CPU : 2 RAM : 3072 IP : 192.168.123.52 * image는 centOS 7 최소설치로 진행 * 공통적으로 Prviate 환경으로 진행된다고 생각하고 진행, 외부IP는 있지만 작성은 하지 않았습니다 * 계정은 모두 student로 진행 1. 설치 * 컨트롤 머신에서 진행합니다. [student@controller ~]$ sudo yum -y install epel-release ㄴ ..

Automation/Ansible 2020.08.05

[Ansible] 0. Ansible 이란?

앤서블 이란? - 어플리케이션을 원격노드에 배포하고 반복적으로 서버를 프로비저닝하는데 사용되는 오픈소스 도구 - 플레이북 기반으로 동작 --- 장점 및 단점 장점 1. SSH 기반이므로 원격노드에 Agent를 설치 할 필요 X 2. YAML 언어 3. 간단하고 명확한 구조 4. 변수 기능을 사용하여 같은 작업에 대해서 다른 구성으로 쉽게 구성 가능 5. 다른 도구에 비해 훨씬 간소화 된 코드 기반 단점 1. 프로그래밍언어를 기반으로 하는 도구보다 덜 강력함 2. DSL 을 통해 로직 수행 *DSL은 학습할 때 까지 문서를 자주 확인 하는 것을 의미 3. 변수 등록은 기본적인 기능 조차 요구되기 때문에 더 쉬운 작업을 복잡하게 만들 수 있다. 4. 플레이 내 변수의 값을 확인하기 어렵다. 5. 입출력, 구..

Automation/Ansible 2020.08.05

Kubernetes를 활용한 Native-Wordpress 구성

* KVM 환경입니다. * kubernetes Version : 1.16v 1. Wordpress Architecture 2. 목표 * Ingress TLS termination 을 이용한 외부 연결 * Wordpress 에 Ceph를 이용하여 /var/www/html nfs로 마운트 하기 * DB서버 Headless 로 구성하여 ClusterIP 없이 구성 및 Ceph 를 이용하여 storage block 연결 * PodAffinity 와 AntiAffinity를 이용하요 Wordpress 와 DB서버 짝 만들어주기 * HPA 를 이용한 Auto-Scaling 3. YAML 소스 1. wordpress.yml #워드프래스 Deployment로 구성 apiVersion: apps/v1 kind: Depl..

Project 2020.08.04
반응형