[공통 이론] 스크립트와 스크립팅 언어의 특징
목차 정의 주요 특징 스크립팅 언어 주요 특징 종류 정의 프로그래밍에서 스크립트는 인터프리터에 의해 실행되는 스크립팅 언어로 작성된 일련의 명령 또는 명령을 의미한다. 스크립트는 작업 자동화, 응용 프로그램 실행 또는 프로그램 내에서 특정 기능 수행에 사용된다. 서로 다른 소프트웨어 구성 요소를 연결하는 접착제 역할을 하여 상호 작용하고 함께 작업할 수 있다. 주요 특징 스크립팅 언어 스크립트는 Python, Perl, Ruby, JavaScript, Shell(Bash, sh) 및 PowerShell과 같은 다양한 스크립팅 언어로 작성된다. 스크립팅 언어는 일반적으로 사용 편의성과 신속한 개발을 위해 설계된 높은 수준의 해석 언어다. 그들은 종종 동적 타이핑, 내장 함수 및 간단한 구문을 특징으로 한다..
2023.03.20
[Vagrant] Vagrant란?
Vagrant란? Vagrant는 가상 환경의 관리 및 프로비저닝을 단순화하는 HashiCorp에서 개발한 오픈 소스 소프트웨어 도구다. 주로 개발자, 시스템 관리자 및 DevOps 전문가가 가볍고 재현 가능하며 이식 가능한 개발 환경을 만들고 관리하는 데 사용된다. 이는 VirtualBox, VMware 및 Hyper-V와 같은 다양한 가상화 플랫폼과 Docker와 같은 컨테이너 솔루션과 함께 작동한다. Vagrant는 VirtualBox와 같은 가상화 소프트웨어를 활용하여 가상 머신을 만들고 관리한다. Vagrant는 Vagrantfile이라는 선언적 구성 파일을 활용하여 VM(가상 머신)을 구성하고 배포하는 프로세스를 간소화한다. Vagrantfile은 기본 운영 체제, 하드웨어 리소스, 네트워크 ..
2023.03.20
[VirtualBox] VirtualBox란?
Virtualbox VirtualBox는 Oracle Corporation에서 개발한 무료 오픈 소스 가상화 소프트웨어로 이를 통해 사용자는 단일 물리적 호스트 컴퓨터에서 가상 머신(VM)을 생성하고 관리할 수 있으며 자체 운영 체제(OS) 및 하드웨어 리소스를 사용하여 독립적인 컴퓨터 시스템을 효과적으로 에뮬레이션할 수 있다. VirtualBox는 Windows, macOS, Linux 및 다양한 Unix 기반 시스템을 포함한 광범위한 호스트 및 게스트 운영 체제와 호환된다. VirtualBox는 사용자가 호스트 운영 체제에서 가상 머신을 생성하고 실행할 수 있게 해주는 가상화 소프트웨어다. 사용자는 단일 VirtualBox 호스트에서 여러 가상 머신을 생성할 수 있다. VirtualBox에는 또한 사..
2023.03.20
no image
[Vagrant] Vagrant 다운로드
다운로드 페이지 Install | Vagrant | HashiCorp Developer Explore Vagrant product documentation, tutorials, and examples. developer.hashicorp.com 다운로드
2023.03.19
no image
[VirtualBox] Virtualbox 다운로드
다운로드 페이지 Downloads – Oracle VM VirtualBox Download VirtualBox Here you will find links to VirtualBox binaries and its source code. VirtualBox binaries By downloading, you agree to the terms and conditions of the respective license. If you're looking for the latest VirtualBox 6.1 packages, see Virt www.virtualbox.org 다운로드 각자 맞는 것을 선택해 다운로드 받으면 된다. Windows hosts : 윈도우 기반 사용자 mcaOS / Intel hosts : ..
2023.03.19
[Ansible 이론] Playbook을 위한 YML파일 작성 요령
Ansible을 작성할 때 YML 파일을 작성해 자동화를 시켜준다. 이를 통해 할 수 있는 작업들은 다음 페이지에 정리해 놓았으니 참고 바라며, 여기에서는 YML파일 작성 요령에 대해서 알아보도록 하자. [Ansible 이론] Ansible이란? Ansible Ansible은 오픈소스 자동화 도구로, 시스템 구성 관리, 응용 프로그램 배포, 작업 간소화, 서버 프로비저닝 등 다양한 작업을 수행할 수 있다. 리눅스, macOS, Windows 등 다양한 플랫폼에서 사용 easyitwanner.tistory.com 목차 YML파일 작성 요령 YML파일로 명령어 자동화 YML파일 작성 요령 YML(YAML) 파일은 "YAML Ain't Markup Language"의 약자로, 데이터 직렬화 형식 중 하나다. ..
2023.03.18
반응형

목차

  1. 정의
  2. 주요 특징
  3. 스크립팅 언어 주요 특징
  4. 종류

정의

프로그래밍에서 스크립트는 인터프리터에 의해 실행되는 스크립팅 언어로 작성된 일련의 명령 또는 명령을 의미한다. 스크립트는 작업 자동화, 응용 프로그램 실행 또는 프로그램 내에서 특정 기능 수행에 사용된다. 서로 다른 소프트웨어 구성 요소를 연결하는 접착제 역할을 하여 상호 작용하고 함께 작업할 수 있다.


주요 특징
  1. 스크립팅 언어
    스크립트는 Python, Perl, Ruby, JavaScript, Shell(Bash, sh) 및 PowerShell과 같은 다양한 스크립팅 언어로 작성된다. 스크립팅 언어는 일반적으로 사용 편의성과 신속한 개발을 위해 설계된 높은 수준의 해석 언어다. 그들은 종종 동적 타이핑, 내장 함수 및 간단한 구문을 특징으로 한다.

  2. 인터프리터
    실행되기 전에 기계 코드로 변환되는 컴파일된 언어와 달리 스크립트는 인터프리터에 의해 실행된다. 통역사는 스크립트를 한 줄씩 읽고 실행하여 런타임에 소스 코드를 기계 코드로 번역한다. 이렇게 하면 유연성이 향상되고 디버깅이 쉬워지지만 컴파일된 언어에 비해 실행 속도가 느려질 수 있다.

  3. 자동화
    스크립트의 주요 용도 중 하나는 파일 조작, 데이터 추출 또는 시스템 유지 관리와 같은 반복 작업을 자동화하는 것이다. 이러한 작업을 자동화함으로써 스크립트는 시간을 절약하고 인적 오류의 위험을 줄일 수 있다.

  4. 애플리케이션 스크립팅
    스크립트를 사용하여 애플리케이션의 기능을 제어하거나 확장할 수 있다. 예를 들어, 많은 소프트웨어 애플리케이션은 API(Application Programming Interfaces)를 제공하거나 사용자가 내장 스크립팅 언어로 사용자 정의 스크립트를 작성하여 사용자 정의 기능을 생성하거나 애플리케이션 내에서 특정 작업을 자동화할 수 있도록 한다.

  5. 웹 개발
    스크립트는 웹 개발에서 중요한 역할을 한다. 예를 들어 JavaScript는 클라이언트 측 프로그래밍에 널리 사용되는 스크립팅 언어로 웹 페이지에서 상호 작용 및 동적 콘텐츠를 가능하게 한다. 마찬가지로 PHP, Python 또는 Ruby와 같은 서버측 스크립팅 언어는 사용자 입력을 처리하고 데이터베이스와 상호 작용하며 동적 웹 콘텐츠를 생성하는 데 사용된다.

  6. 이식성
    스크립트는 일반적으로 플랫폼 독립적이므로 수정하지 않고도 다른 운영 체제에서 실행할 수 있다. 이러한 이식성으로 인해 스크립트는 시스템 관리 작업 및 교차 플랫폼 개발에 널리 사용된다.

스크립팅 언어 주요 특징
  1. 사용 용이성
    스크립팅 언어는 쉽게 배우고 사용할 수 있도록 설계되었으며, 종종 간단한 구문과 데이터 유형 및 오류 처리에 대한 보다 관용적인 접근 방식을 특징으로 한다. 이를 통해 개발자는 코드를 빠르고 효율적으로 작성할 수 있다.

  2. Interpreted
    앞에서 언급한 것처럼 스크립팅 언어는 일반적으로 런타임 시 인터프리터에 의해 실행되는 소스 코드와 함께 인터프리터된다. 즉, 별도의 컴파일 단계가 필요하지 않으므로 즉시 코드를 수정하고 테스트하기가 더 쉽다.

  3. 동적 타이핑
    대부분의 스크립팅 언어는 동적 타이핑을 사용한다. 즉, 변수는 런타임 동안 다양한 유형의 값을 보유할 수 있으며 해당 유형은 보유한 값에 따라 결정된다. 이것은 더 큰 유연성을 제공하고 더 쉽게 코드를 빠르게 작성할 수 있게 해주지만 조심스럽게 다루지 않으면 잠재적으로 런타임 오류가 발생할 수 있다.

  4. 내장 함수
    스크립팅 언어에는 종종 문자열 조작, 파일 처리, 네트워크 통신과 같은 일반적인 작업을 위한 풍부한 내장 함수 및 라이브러리 세트가 함께 제공된다. 이를 통해 개발자는 이러한 기능을 처음부터 구현하지 않고도 스크립트를 작성할 수 있다.

  5. 접착 언어
    스크립팅 언어는 서로 다른 소프트웨어 구성 요소 또는 응용 프로그램을 연결하는 데 사용할 수 있기 때문에 종종 "접착 언어"라고 한다. 시스템의 다양한 부분 간의 상호 작용을 가능하게 하여 데이터 교환을 용이하게 하고 복잡한 작업 흐름을 자동화한다.

  6. 교차 플랫폼
    스크립팅 언어로 작성된 스크립트는 일반적으로 플랫폼 독립적이다. 즉, 수정이 거의 또는 전혀 없이 다른 운영 체제에서 실행될 수 있다. 이로 인해 스크립팅 언어는 크로스 플랫폼 개발 및 시스템 관리 작업에 널리 사용된다.

종류
  1. Python
    가독성과 광범위한 라이브러리로 잘 알려진 다재다능하고 널리 사용되는 스크립팅 언어다.

  2. Perl
    텍스트 처리, 시스템 관리 및 웹 개발에 자주 사용되는 강력하고 유연한 스크립팅 언어다.

  3. Ruby
    깔끔한 구문과 Ruby on Rails 웹 개발 프레임워크로 알려진 객체 지향 스크립팅 언어다.

  4. JavaScript
    대화형 웹 페이지를 만들고 사용자 입력을 처리하기 위해 웹 개발에 사용되는 널리 사용되는 클라이언트 측 스크립팅 언어다.

  5. PHP
    웹 개발 및 동적 웹 콘텐츠 생성에 널리 사용되는 서버측 스크립팅 언어다.

  6. SHell 언어(Bash, sh, PowerShell)
    특히 Unix 기반 시스템 및 Windows에서 작업 자동화 및 운영 체제 관리에 사용되는 스크립팅 언어다.

현재 배우고 있는 SHell 언어부터 시작해서 차근차근 정리할 예정이다.

반응형
반응형
Vagrant란?

Vagrant는 가상 환경의 관리 및 프로비저닝을 단순화하는 HashiCorp에서 개발한 오픈 소스 소프트웨어 도구다. 주로 개발자, 시스템 관리자 및 DevOps 전문가가 가볍고 재현 가능하며 이식 가능한 개발 환경을 만들고 관리하는 데 사용된다. 이는 VirtualBox, VMware 및 Hyper-V와 같은 다양한 가상화 플랫폼과 Docker와 같은 컨테이너 솔루션과 함께 작동한다.

Vagrant는 VirtualBox와 같은 가상화 소프트웨어를 활용하여 가상 머신을 만들고 관리한다. Vagrant는 Vagrantfile이라는 선언적 구성 파일을 활용하여 VM(가상 머신)을 구성하고 배포하는 프로세스를 간소화한다.

 

Vagrantfile은 기본 운영 체제, 하드웨어 리소스, 네트워크 설정 및 필요한 추가 소프트웨어 또는 구성과 같은 가상 환경의 원하는 속성을 정의한다. 이를 통해 팀 간에 개발 환경을 쉽게 공유하고 복제할 수 있으므로 일관된 구성을 보장하고 환경 관련 문제의 가능성을 줄일 수 있다.

Vagrant는 사용하기 쉽고 설정 및 자동화를 처리하기 위한 빠르고 사용하기 쉬운 명령줄 클라이언트를 제공한다. 또한 초보자에게 친숙한 충돌 과정을 포함하여 사용자가 Vagrant를 시작하는 데 도움이 되는 많은 자습서 및 가이드를 온라인에서 사용할 수 있다.

사용자가 Vagrant를 사용할 때 발생할 수 있는 한 가지 잠재적인 문제는 SSL 인증서 오류다. 그러나 회사 인증서의 내용을 Vagrant의 cacert.pem 파일에 추가하는 것과 같이 이 문제에 사용할 수 있는 솔루션이 있다.


Vagrant의 주요 기능
  1. 교차 플랫폼 호환성
    Vagrant는 Windows, macOS 및 Linux에서 실행되므로 다양한 호스트 운영 체제에서 가상 환경을 쉽게 만들고 관리할 수 있다.

  2. 공급자 지원
    Vagrant는 여러 가상화 플랫폼(VirtualBox, VMware, Hyper-V) 및 컨테이너화 기술(Docker)을 지원하여 사용자가 기본 인프라를 유연하게 선택할 수 있도록 한다.

  3. 손쉬운 프로비저닝
    Vagrant는 쉘 스크립트 또는 Puppet, Chef 또는 Ansible과 같은 구성 관리 도구를 사용하여 VM을 자동으로 프로비저닝할 수 있다. 이를 통해 소프트웨어의 자동 설치 및 구성이 가능하여 팀 구성원과 프로젝트 간에 일관된 환경을 보장한다.

  4. 버전 관리 및 협업
    Vagrant는 Git과 같은 널리 사용되는 버전 제어 시스템과 통합되어 팀 간에 Vagrantfile의 버전 관리 및 공유가 간편해진다. 이를 통해 더 나은 협업이 가능하고 모든 사람이 일관된 환경에서 작업할 수 있다.

  5. 네트워킹
    Vagrant는 포트 포워딩, 개인 네트워크 및 공용 네트워크를 포함한 다양한 네트워킹 옵션을 제공한다. 이를 통해 개발 및 테스트 목적으로 복잡한 네트워킹 시나리오를 보다 쉽게 ​​설정할 수 있다.

  6. 플러그인 시스템
    Vagrant에는 강력한 플러그인 시스템이 있어 사용자가 기능을 확장하거나 다른 도구 및 서비스와 통합할 수 있다.

사용 예시
  1. 소프트웨어 프로젝트를 위한 개발 환경의 설정 및 관리를 단순화할 수 있다.

  2. 개발, 테스트 및 프로덕션 단계에서 일관된 환경을 보장한다.

  3. Vagrantfile을 공유하고 버전을 지정하여 팀원 간의 협업을 촉진한다.

  4. 바로 사용할 수 있는 개발 환경을 제공하여 새로운 팀원을 위한 온보딩 프로세스를 간소화한다.

  5. 격리된 환경에서 코드형 인프라 및 구성 관리 스크립트를 테스트한다.

 

 

반응형
반응형
Virtualbox

VirtualBox는 Oracle Corporation에서 개발한 무료 오픈 소스 가상화 소프트웨어로 이를 통해 사용자는 단일 물리적 호스트 컴퓨터에서 가상 머신(VM)을 생성하고 관리할 수 있으며 자체 운영 체제(OS) 및 하드웨어 리소스를 사용하여 독립적인 컴퓨터 시스템을 효과적으로 에뮬레이션할 수 있다. VirtualBox는 Windows, macOS, Linux 및 다양한 Unix 기반 시스템을 포함한 광범위한 호스트 및 게스트 운영 체제와 호환된다.

 

VirtualBox는 사용자가 호스트 운영 체제에서 가상 머신을 생성하고 실행할 수 있게 해주는 가상화 소프트웨어다. 사용자는 단일 VirtualBox 호스트에서 여러 가상 머신을 생성할 수 있다. VirtualBox에는 또한 사용자가 서로 충돌하지 않고 가상 머신을 쉽게 복제할 수 있는 기능이 있다.

VirtualBox는 하이퍼바이저 역할을 하여 사용자가 다른 운영 체제를 실행할 수 있는 가상 머신을 생성한다. 호스트 운영 체제는 VirtualBox가 실행되는 곳이고 게스트 운영 체제는 가상 머신에서 실행되는 운영 체제다.

VirtualBox로 가상 머신을 설정하는 것은 사용자가 소프트웨어 호환성을 테스트하고, 테스트 환경을 만들고, 다양한 운영 체제의 동작을 시뮬레이션할 수 있는 간단한 프로세스다. 사용자는 설치 프로세스에 따라 호스트 운영 체제에 VirtualBox를 설치하고 실행할 수 있다. 설치 프로세스에는 바로 가기 옵션 및 파일 연결에 대한 확인란을 선택하고 VirtualBox 네트워크 인터페이스 설치를 확인하는 작업이 포함된다.

VirtualBox에는 과도한 CPU 및 메모리 사용률, 호스트 운영 체제 속도 저하, 열악한 3D 그래픽 지원과 같은 몇 가지 단점이 있다. 그러나 VirtualBox는 무제한으로 저장된 스냅샷을 지원하는 유일한 가상화 솔루션이므로 가상 머신을 이전 상태로 되돌려야 하는 사용자에게 이상적인 솔루션이다.


사용 예시
  1. 새 운영 체제 테스트
    VirtualBox를 사용하면 기본 OS 설치에 영향을 주지 않고 다양한 운영 체제를 테스트하고 평가할 수 있다. 이는 전체 설치를 수행하기 전에 새로운 OS 기능을 탐색하려는 개발자, 시스템 관리자 또는 사용자에게 특히 유용하다.

  2. 레거시 애플리케이션 실행
    일부 애플리케이션은 최신 운영 체제에서 작동하지 않을 수 있다. VirtualBox를 사용하여 이전 OS로 VM을 생성할 수 있으므로 사용자는 별도의 물리적 시스템을 유지 관리하지 않고도 레거시 소프트웨어를 실행할 수 있다.

  3. 소프트웨어 개발 및 테스트
    개발자는 VirtualBox를 사용하여 다양한 구성으로 여러 VM을 생성할 수 있으므로 다양한 플랫폼 및 환경에서 소프트웨어를 보다 쉽게 ​​테스트할 수 있다. 이는 프로덕션 환경에서 애플리케이션을 배포하기 전에 호환성 문제를 식별하고 수정하는 데 도움이 될 수 있다.

  4. IT 교육 및 교육
    VirtualBox는 교육 및 학습 목적으로 사용할 수 있으므로 학생들은 제어된 가상 환경에서 다양한 운영 체제, 네트워크 구성 및 시스템 관리 작업을 실험할 수 있다.

  5. 사이버 보안 연구
    연구원과 보안 전문가는 VirtualBox를 사용하여 격리된 환경에서 malware를 분석하거나 보안 도구를 테스트하여 호스트 시스템이나 네트워크의 다른 시스템을 감염시킬 위험을 최소화할 수 있다.

  6. 서버 통합
    기업은 VirtualBox를 사용하여 각 서버에 대한 VM을 생성하여 여러 물리적 서버를 단일 시스템으로 통합할 수 있다. 이를 통해 하드웨어 및 유지 관리 비용을 줄이고 에너지를 절약하며 관리를 단순화할 수 있다.

  7. 프라이빗 브라우징
    VirtualBox를 사용하여 프라이빗 브라우징을 위한 VM을 생성할 수 있으므로 사용자는 기본 OS에 흔적을 남기지 않고 웹 서핑을 할 수 있다. 이를 통해 개인 정보를 보호하고 민감한 정보 노출 위험을 최소화할 수 있다.

 

반응형
반응형
다운로드 페이지
 

Install | Vagrant | HashiCorp Developer

Explore Vagrant product documentation, tutorials, and examples.

developer.hashicorp.com


다운로드

자신의 OS에 맞게 선택해준다.

 

MAC
AMD64 = 64bit 버전, I686 = 32bit 버전
1. 리눅스에 코드로 다운로드 하는 방법, 2. 윈도우나 mac처럼 설치 파일 다운로드


반응형
반응형
다운로드 페이지
 

Downloads – Oracle VM VirtualBox

Download VirtualBox Here you will find links to VirtualBox binaries and its source code. VirtualBox binaries By downloading, you agree to the terms and conditions of the respective license. If you're looking for the latest VirtualBox 6.1 packages, see Virt

www.virtualbox.org


다운로드 

각자 맞는 것을 선택해 다운로드 받으면 된다.

  • Windows hosts : 윈도우 기반 사용자
  • mcaOS / Intel hosts : 맥 기반 사용자
  • Developer preview for macOS / Arm64 (M1/M2) hosts : 맥 기반 사용자 중 M1, M2 칩이 장착되있는 경우
  • Linux distributions : 리눅스 기반 사용자
  • Solaris hosts : 솔라리스 기반 사용자
  • Solaris 11 IPS hosts : 솔라리스 11 이상 버전 사용자


 

반응형
반응형

Ansible을 작성할 때 YML 파일을 작성해 자동화를 시켜준다. 이를 통해 할 수 있는 작업들은 다음 페이지에 정리해 놓았으니 참고 바라며, 여기에서는 YML파일 작성 요령에 대해서 알아보도록 하자.

 

[Ansible 이론] Ansible이란?

Ansible Ansible은 오픈소스 자동화 도구로, 시스템 구성 관리, 응용 프로그램 배포, 작업 간소화, 서버 프로비저닝 등 다양한 작업을 수행할 수 있다. 리눅스, macOS, Windows 등 다양한 플랫폼에서 사용

easyitwanner.tistory.com

목차

  1. YML파일 작성 요령
  2. YML파일로 명령어 자동화

YML파일 작성 요령

YML(YAML) 파일은 "YAML Ain't Markup Language"의 약자로, 데이터 직렬화 형식 중 하나다. YML 파일은 설정 파일, 데이터 교환, 애플리케이션 간 정보 전달 등 다양한 용도로 사용된다. YML 파일 작성 요령은 다음과 같다.

1. 들여쓰기
YML 파일은 들여쓰기(indentation)를 사용하여 계층 구조를 표현한다. 들여쓰기는 공백 문자(space)를 사용하며, 권장하는 공백 문자 수는 2개다. 탭(tab)은 사용하지 않는 것이 좋다.

2. 키-값 쌍(기본구조)
YML 파일의 기본 구조는 키-값 쌍(key-value pair)이다. 키와 값 사이에는 콜론(:)을 사용하며, 콜론 뒤에는 공백을 두어야 한다.

key: value


3. 목록
목록은 하이픈(-)을 사용하여 표현한다. 하이픈 뒤에는 공백을 두어야 한다. 같은 계층의 목록 항목은 같은 수의 공백으로 들여써야 한다.

- item1
- item2
- item3

4. 딕셔너리: 딕셔너리는 키-값 쌍의 집합으로, 들여쓰기를 사용하여 표현한다.

key1:
  subkey1: value1
  subkey2: value2
key2:
  subkey1: value3
  subkey2: value4

5. 주석
YML 파일에서 주석은 샵(#) 기호를 사용하여 작성한다. 주석은 해당 줄의 시작 부분에도 작성할 수 있고, 데이터 뒷부분에도 작성할 수 있다.

# 이것은 주석이다.
key: value # 이것도 주석이다.

6. 문자열
YML에서 문자열에 따옴표를 사용하지 않아도 된다. 하지만, 특수 문자를 포함하는 문자열이나 콜론(:) 등의 기호가 포함된 경우에는 따옴표로 묶어주는 것이 좋다. 작은 따옴표(')와 큰 따옴표(") 모두 사용할 수 있다.

7. 다중 라인 문자열
YML에서 여러 줄의 문자열을 작성할 때는 파이프(|) 또는 꺾쇠(>)를 사용한다. 파이프는 개행을 유지하고, 꺾쇠는 개행을 공백으로 변환한다.

multiline1: |
  line1
  line2

YML파일로 명령어 자동화

YAML에서 명령은 용도와 컨텍스트에 따라 몇 가지 다른 방법으로 작성할 수 있다. 다음은 YAML 파일에 명령을 작성하는 몇 가지 일반적인 방법이다.

 

1. 셸
YAML 파일에서 셸 명령을 실행하려면 command 또는 args 필드를 사용하여 실행할 명령과 인수를 지정한다. 

spec:
  containers:
    - name: my-container
      image: my-image
      command: ["/bin/sh", "-c", "echo hello world"]

위의 예에서 command 필드는 실행할 셸 명령을 지정하는 데 사용된다(echo hello world).


2. Kubernetes
Kubernetes YAML 파일에서 kubectl 명령줄 도구를 사용하여 명령을 지정할 수 있다.

apiVersion: v1
kind: Pod
metadata:
  name: my-pod
spec:
  containers:
    - name: my-container
      image: my-image
      command: ["/bin/sh", "-c"]
      args: ["kubectl get pods"]

위의 예에서 command 필드는 실행할 셸 명령을 지정하는 데 사용되고(/bin/sh -c) args 필드는 실행할 kubectl 명령을 지정하는 데 사용된다(kubectl 포드 가져오기).


3. Ansible
Ansible 플레이북 YAML 파일에서 shell 또는 command 모듈을 사용하여 명령을 지정할 수 있다.

- name: Run command on remote hosts
  hosts: all
  tasks:
    - name: Execute command
      shell: echo hello world

위의 예에서 shell 모듈은 실행할 쉘 명령을 지정하는 데 사용된다(echo hello world).


이상으로 YML파일 작성 요령에 대해 알아보았으며, Ansible이 주로 다뤄질 예정으로 앞으로 "실습" 카테고리에서 실 사용 예를 보여줄 것이다. 추가로 Ansible에서 보통 shell: 을 통해 명령어를 작성하는데 자주 쓰는 명령어들은 모듈을 만들어 놓아 쉽게 사용할 수 있도록 하였다. 모듈들은 다음 페이지에서 찾을 수 있다.

 

https://docs.ansible.com/ansible/2.9/modules/list_of_all_modules.html

 

반응형