본문 바로가기

리눅스

우분투 20.04에 Fabric을 설치하고 설정하는 방법

728x90
반응형

우분투 20.04에 Fabric을 설치하고 설정하는 방법

Fabric은 파이썬 기반의 서버 자동화 도구입니다. 우분투 20.04에 Fabric을 설치하고 설정하는 방법은 다음과 같습니다.

테스트 환경

$ sudo lsb_release -d
Description:	Ubuntu 20.04.3 LTS

1. 우분투 패키지 관리자 업데이트

  • Fabric을 설치하기 전에 우분투 패키지 관리자를 업데이트해야 합니다.
sudo apt update

2. 파이썬 및 pip 설치

  • Fabric은 파이썬으로 작성되었으므로 우선 파이썬과 pip를 설치해야 합니다.
sudo apt install python3 python3-pip -y
$ python3 --version
Python 3.8.10
$ pip3 --version
pip 20.0.2 from /usr/lib/python3/dist-packages/pip (python 3.8)

3. Fabric 설치

  • pip를 사용하여 Fabric을 설치합니다.
sudo pip3 install fabric
$ sudo pip3 install fabric
Collecting fabric
  Downloading fabric-3.0.0-py3-none-any.whl (53 kB)
     |████████████████████████████████| 53 kB 2.9 MB/s
Requirement already satisfied: paramiko>=2.4 in /usr/lib/python3/dist-packages (from fabric) (2.6.0)
Collecting invoke>=2.0
  Downloading invoke-2.0.0-py3-none-any.whl (162 kB)
     |████████████████████████████████| 162 kB 11.8 MB/s
Installing collected packages: invoke, fabric
Successfully installed fabric-3.0.0 invoke-2.0.0
$ fab --version
Fabric 3.0.0
Paramiko 2.6.0
Invoke 2.0.0

4. SSH 연결 설정

  • Fabric을 사용하려면 SSH 연결 설정이 필요합니다.
  • SSH 연결을 설정하려면 다음 명령어를 실행하여 SSH 키를 생성합니다.
ssh-keygen
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/ubuntu/.ssh/id_rsa):
Created directory '/home/ubuntu/.ssh'.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/ubuntu/.ssh/id_rsa
Your public key has been saved in /home/ubuntu/.ssh/id_rsa.pub
The key fingerprint is:
SHA256:8p3Ab8rTunpzyuy+T8uRodf0WaOkfrJwiEyFHRJvNCM ubuntu@node1
The key's randomart image is:
+---[RSA 3072]----+
|       E.=       |
|        B +      |
|       . =       |
|       .o        |
|      ..S . .. ..|
|      oo.=.*o..o.|
|       oo+Xo..o  |
|       ++**+ .   |
|      .=%X+o+    |
+----[SHA256]-----+
$ ls -l .ssh/
total 8
-rw------- 1 ubuntu ubuntu 2602 Apr  8 20:41 id_rsa
-rw-r--r-- 1 ubuntu ubuntu  568 Apr  8 20:41 id_rsa.pub
  • 그런 다음, 생성된 공개 키를 원격 서버의 authorized_keys 파일에 추가해야 합니다.
  • 원격 서버에 로그인하여 다음 명령어를 실행하여 authorized_keys 파일에 공개 키를 추가합니다.
mkdir -p ~/.ssh
echo "YOUR_PUBLIC_KEY" >> ~/.ssh/authorized_keys
$ cat id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAA...tcVr8= ubuntu@node1
echo "ssh-rsa AAAAB3NzaC1yc2EAAAA...tcVr8= ubuntu@node1" >> ~/.ssh/authorized_keys
$ ssh -i ~/.ssh/id_rsa ubuntu@127.0.0.1

5. Fabric 설정

  • Fabric을 사용하려면 fabfile.py라는 파일을 작성해야 합니다.
  • 원하는 디렉토리에 fabfile.py를 만들고, 다음과 같이 작성합니다.
from fabric import task

@task
def hello(c):
    print("Hello world!")

이제 Fabric이 우분투 20.04에 설치되었으며, SSH 연결이 설정되었으며, fabfile.py가 작성되었습니다. Fabric을 사용하여 원격 서버를 관리할 수 있습니다.

6. Fabric 사용

  • Fabric을 사용하려면 fab 명령어를 사용합니다.
$ fab hello
Hello world!

이제 Fabric을 사용하여 원격 서버를 쉽게 관리할 수 있습니다. 필요에 따라 fabfile.py를 수정하여 원하는 작업을 수행할 수 있습니다.

 

728x90
반응형