반응형

Top 5 DevOps Tools for Infrastructure Automation

As DevOps continues to grow, the need for infrastructure automation tools becomes apparent. These tools help organizations automate the deployment and management of their infrastructure, enhancing the efficiency and reliability of their IT operations. Here are the top 5 DevOps tools for infrastructure automation:

1. Ansible

Ansible is an open-source tool that automates cloud provisioning, configuration management, and application deployment. It provides a simple, human-readable language for defining tasks and includes more than 1,000 modules for automating different tasks. Ansible's ease of use and strong community support make it a popular choice among DevOps professionals.

2. Puppet

Puppet is a configuration management tool that enables organizations to manage their infrastructure as code. It provides a declarative language for defining infrastructure as code, and automates the provisioning, configuration, and management of servers, applications, and network devices. Puppet's ability to manage complex, multi-tier infrastructure makes it a popular choice for large enterprises.

3. Chef

Chef is a configuration management tool that enables organizations to define and manage their infrastructure as code. It provides a domain-specific language for defining infrastructure as code and automates the provisioning, configuration, and management of servers, applications, and network devices. Chef's support for multiple operating systems and cloud platforms makes it a flexible tool for managing infrastructure.

4. Terraform

Terraform is an open-source tool for building, changing, and versioning infrastructure safely and efficiently. It allows DevOps teams to define infrastructure as code using a declarative language and provides a single workflow for managing infrastructure across multiple cloud providers. Terraform's ability to support multiple cloud providers and its automation capabilities make it a popular tool for infrastructure automation.

5. Jenkins

Jenkins is an open-source automation server that enables DevOps teams to automate the building, testing, and deployment of software. It integrates with a wide range of tools and provides powerful automation capabilities, including the ability to automate infrastructure deployments. Jenkins' strong community support and extensive plugin ecosystem make it a popular choice for DevOps teams looking to automate their infrastructure.

In conclusion, infrastructure automation tools are essential for enhancing the efficiency and reliability of IT operations. These top 5 DevOps tools provide organizations with a range of capabilities for automating their infrastructure, from provisioning and configuration management to application deployment and testing. By leveraging these tools, organizations can streamline their operations, reduce errors, and improve service delivery to their customers.

반응형
반응형

저장소 설정

$ sudo apt-get update

$ sudo apt-get install \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

도커 공식 GPG key 추가

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Stable repository 설정

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Docker 엔진 설치

최신 버전의 Docker Engine 및 containerd를 설치한다.

  sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

설치 완료 후 제대로 설치되었는지 확인한다.

sudo docker version

Docekr 서비스 등록 및 실행

sudo systemctl enable docker
sudo systemctl start docker
반응형

'MLops' 카테고리의 다른 글

쿠버네티스 설치  (0) 2022.10.02
쿠버네티스 개요  (0) 2022.10.01
반응형

본 포스트는 도커가 설치되었다는 가정 하에 진행됩니다.

먼저 nvidia cuda image를 pull 해줍니다.

저는 ubuntu 18.04에 cuda 10.1, cudnn 7버전대를 사용해야하므로 아래 명령어를 기입합니다.

docker pull nvidia/cuda:10.1-cudnn7-runtime-ubuntu18.04

이후

docker images

위 명령어로 이미지 리스트를 확인하면 아래와 같이 확인이 가능합니다.

이제 컨테이너를 생성해줍니다.

nvidia-docker run -it --name [CONTAINER_NAME] [IMAGE_NAME] /bin/bash

-it는 키보드가 입력 가능하게 해주는 옵션입니다. 

생성하면 바로 컨테이너로 들어가게 되는데 -rm옵션이 있을 때 컨테이너 밖으로 나오면 그 컨테이너는 삭제됩니다. 1회용이지요

아무튼, 컨테이너를 나가고 컨테이너를 지우고 싶을 때 먼저 컨테이너를 종료해줘야합니다. 아래 명령어로 말이죠

docker stop [CONTAINER_NAME]

종료가 stop이면 다시 키는 것은 start죠

docker start [CONTAINER_NAME]

컨테이너를 지우고 싶다면 먼저 stop으로 종료한 상태에서 다음과 같이 입력하면 됩니다.

docker rm [CONTAINER_NAME]

이미지를 삭제하고 싶다면?

docker rmi [IMAGE_NAME]

가동중인 컨테이너를 실행하고 싶다면?

docker exec -it [CONTAINER_NAME] /bin/bash

내 컨테이너를 이미지로 만들고 싶다면?

docker build -t [CONTAINER_NAME] ./

 

반응형
반응형

출처:jybaek.tistory.com/797

도커를 처음 설치하고 아무런 세팅이 없을 경우 기본 루트 경로는 /var/lib/docker입니다.

 

루트 디바이스의 저장공간이 부족할 경우 도커의 루트 경로를 변경하는 방법을 알아보겠습니다.

 

docker info | grep Root
Docker Root Dir:  /var/lib/docker

위와 같이 루트 디렉토리의 경로를 확인합니다.

 

vi /lib/systemd/system/docker.service

위와 같이 입력하여 아래처럼 편집해줍니다.

ExecStart=/usr/bin/dockerd -H unix:// --containerd=/run/containerd/containerd.sock --data-root=/data/docker

물론 /data/docker폴더가 있어야겠죠

 

이후 아래와 같이 daemon을 리로드해줍니다.

systemctl daemon-reload

도커를 재시작합니다.

sudo service docker stop
sudo service docker start

경로를 확인해줍니다.

$ docker info | grep Root
Docker Root Dir: /data/docker

그러면 /data/docker에 폴더들이 생겼을 텐데요 cp, mv를 이용하여 기존 데이터를 변경한 폴더로 옮겨줍니다.

반응형

+ Recent posts