분류 전체보기 139

Ansible의 구성 파일, 명령어 옵션

참조 파일들 1. /etc/ansible/ansible.cfg - ansible 환경 설정 파일 2. /etc/ansible/hosts - ansible이 접속하여 관리하는 호스트들에 대한 정보 많이 사용되는 명령어 옵션 값 -i : (--inventory-file) 적용될 호스트들에 대한 파일의 경로를 지정하는 옵션 # vi test 172.16.0.201 172.16.0.202 -m : (--module-name) 모듈을 선택할 수 있도록 지정하는 옵션 -k : (--ask-pass) 패스워드를 물어보도록 설정 -K : (--ask-becmoe-pass) 관리자로 권한 상승 --list-hosts : 적용되는 호스트들 확인

Ansible 2021.07.12

Ansible 인벤토리 생성 및 모듈 활용

1. 인벤토리 생성 # vi /etc/ansible/hosts [all] 172.16.0.200 172.16.0.201 172.16.0.202 172.16.0.203 [web] 172.16.0.201 172.16.0.202 [db] 172.16.0.203 해당 인벤토리 파일은 ansible의 기본 인벤토리 파일이다. 인벤토리 파일을 따로 생성하고 활용하는 방법은 내용 마지막에 적도록 하겠다. 2. 모듈 활용 모듈이란? CLI나 플레이북 작업에서 사용 할 수 있는 별도의 코드 단위 모듈의 특징 멱등성을 보장해준다. 중복 실행될 여지가 차단된다. 가독성이 좋다. 배포전에 테스트가 가능하다. Shell 모듈 쉘을 이용한 작업에 사용되는 모듈이다. -a로 쉘에서 동작시킬 명령어를 입력할 수 있다. '위 명령어를..

Ansible 2021.07.11

Ansible의 기초 이론 및 CentOS7에 설치

Ansible이란? 대표적인 DevOps 툴로 서버마다 대상 및 변수를 지정하여 서버를 구성 하기에 적합한 도구이다. 패키지 설치, 설정 변경, 파일 전송, 서비스 시작/정지 등을 원격 조작이 가능하다. 서버, 네트워크, 서비스, 로드 벨런스, 방화벽 설정 및 배포를 자동화 가능(오케스트레이션) 신규 시스템 구축이나 일상적인 운영 업무를 텍스트 파일화한다. Ansible의 장점 멱등성을 지원한다. YAML 형식을 지원하여 특별한 코딩 스킬이 필요치 않다. 높은 생산성 OpenSSH 와 WinRM을 지원한다. 안전성과 단순한 관리 대상 서버에 별도 에이전트 설치 불필요 700개 이상 대다수의 서버와 네트워크 장비 지원 동시에 다수의 대상 서버에서 실행 Bootstrap 부터 설정 변경까지 원스톱 실행 완벽..

Ansible 2021.07.11

Python 복습 5일차 기록

''' 이중 함수 ''' def display(): num = int(input("1. 기본급/ 2. 근무 일수")) if num == 1: result= alba() elif num ==2: day= int(input("근무 날짜 수를 입력하세요.")) result = alba(day) print("당신의 급여는 %d원입니다."%result) def alba(day=30, time=80, pay=8720): result = day*time*pay return result display() ''' 매개변수에 초기값 지정 ''' def joon(name, old, man=True): print("나의 이름은 %s입니다."%name) print("나이는 {}살 입니다.".format(old)) if man:..

Python 2021.07.10

Python 복습 4일차 실습 문제 풀기

1. 임의의 두 값을 받아서 몫과 나머지를 구하는 함수를 작성하시오. def div(a,b): d = a//b e = a%b return f'a를 b로 나눈 몫은 {d}이고 나머지 {e}입니다.' x,y=int(input('a를 입력하세요.')),int(input('b를 입력하세요.')) print(div(x,y)) 2. 다음 기본식을 함수식으로 변형하시오. select = int(input("1. 콜라/ 2. 사이다/ 3. 환타 : ")) if select ==1: print("1. 콜라 선택") elif select == 2: print("2. 사이다 선택") elif select == 3: print("3. 환타 선택") def sel(a): if a==1: return '콜라를 선택하셨습니다.' ..

Python 2021.07.09

Dockerfile 작성(Web, FTP, DNS 구축)

관련 자료 https://github.com/thdguswns3/Dockerfile - 직접 작성한 DockerFile 및 설정 압축 파일 - 사전 설정 # docker network create --subnet 192.168.0.0/24 --gateway 192.168.0.254web 사용할 네트워크를 미리 생성해둔다. 1. Web 서버 Dockerfile 작성 # mkdir proweb # cd proweb Dockerfile 및 관련 설정 파일을 생성할 디렉터리를 생성하고 경로를 이동한다. # vi Dockerfile FROMcentos:7 MAINTAINERshjoon RUNyum install -y httpd RUNyum install -y net-tools RUNsystemctl enable ..

Docker 2021.07.08

Docker 컨테이너에 자원 할당 및 관리

[실행중인 컨테이너 자원 할당 정보 확인] docker stats docker stats 만 입력하면 실행중인 모든 컨테이너 정보가 출력된다. [컨테이너 메모리 자원 할당] docker update --memory 컨테이너 실행시 --memory 옵션을 지정하면 원하는 만큼 메모리를 할당하여 컨테이너 실행이 가능하다. Swap memory는 지정하지 않으면 memory의 2배(400m)로 자동 설정된다. docker update 명령어로 원하는 자원 할당을 업데이트할 수 있다. 하지만 메모리를 확장할 경우 Swap 메모리가 모자라다는 오류가 발생한다. swap memory를 동시에 할당하면 오류가 출력되지 않고 업데이트 된다. [컨테이너 CPU 자원 할당] 1. -c(--cpu-shares) -c 옵션을..

Docker 2021.07.08

Docker 네트워크 설정 및 link 기능

1. docker0 Docker가 설치되면 host에 기본으로 생성되는 네트워크 인터페이스 카드이다. 컨테이너의 네트워크 카드를 지정하지 않으면 docker0의 기본적으로 172.16.0.0/16 네트워크를 사용하게 된다. docker0의 기본 gateway는 172.17.0.1로 설정되어 있다. 도커는 컨테이너에 내부 IP를 순차적으로 할당한다. 내부 IP는 컨테이너 재시작시 변경될 수 있다. 내부 IP는 컨테이너간의 통신만 가능한 내부망 네트워크로 외부망과의 연결이 필요하다. 컨테이너를 생성하면 호스트 PC에 veth(Virtual Ethernet)의 네트워크 인터페이스를 생성한다. 컨테이너가 외부와 통신이 필요할 때 각 컨테이너에 부여된 veth 네트워크 인터페이스를 통하여 통신한다. docker0..

Docker 2021.07.08