본문 바로가기

728x90

리눅스

Terraform으로 AWS VPC와 하위 서브넷을 import하는 방법 Terraform으로 AWS VPC와 하위 서브넷을 import하는 방법 Terraform으로 AWS VPC와 하위 서브넷을 import하는 과정은 조금 복잡할 수 있습니다. AWS에서 생성한 리소스를 Terraform 코드로 가져오는 것은 일반적으로 권장되지 않는 접근 방법입니다. 그러나 import 기능을 사용하여 AWS 리소스를 Terraform 상태 파일에 반영할 수는 있습니다. VPC 및 하위 서브넷을 import하는 예시 코드는 아래와 같습니다. 1. main.tf 파일에 AWS VPC 및 서브넷을 import하는 리소스 정의 provider "aws" { region = "us-west-2" # 원하는 리전으로 변경 } resource "aws_vpc" "existing_vpc" { # AW.. 더보기
기존 AWS 설정을 Terraform으로 가져오는 일반적인 절차 기존 AWS 설정을 Terraform으로 가져오는 일반적인 절차 기존의 AWS 설정을 Terraform으로 가져오는 것은 AWS 리소스를 코드로 정의하는 것을 의미합니다. 이렇게 하면 이전에 수동으로 수행한 설정을 코드로 관리하고, 인프라스트럭처를 버전 관리하며, 재현 가능한 인프라를 유지할 수 있습니다. 1. 테라폼 환경 설정 먼저 테라폼 프로젝트 디렉토리를 생성하고 테라폼 설정 파일 (예: main.tf, variables.tf, terraform.tfvars)을 작성합니다. 2. Provider 설정 main.tf 파일에서 AWS 프로바이더를 설정하여 테라폼이 AWS와 상호 작용할 수 있도록 합니다. 아래는 AWS 프로바이더의 예시 설정입니다. provider "aws" { region = "us-.. 더보기
AWS 동적 인벤토리를 사용하여 AWS 인스턴스 목록을 가져오는 방법 AWS 동적 인벤토리를 사용하여 AWS 인스턴스 목록을 가져오는 방법 AWS 동적 인벤토리는 AWS 인스턴스 목록을 관리하는 데 사용되는 Ansible 기능입니다. 동적 인벤토리를 사용하면 Ansible이 AWS API를 호출하여 인스턴스 목록을 가져와 인벤토리로 가져올 수 있습니다. 이렇게 하면 인스턴스 목록이 항상 최신 상태로 유지되며, 인벤토리를 수동으로 관리할 필요가 없습니다. ansible-doc --type inventory amazon.aws.aws_ec2 더보기 > AMAZON.AWS.AWS_EC2 (/root/.ansible/collections/ansible_collections/amazon/aws/plugins/inventory/aws_ec2.py) Get inventory hosts.. 더보기
PHP-FPM 로그 파일의 로테이션 설정하는 방법(php-fpm logrotate) PHP-FPM 로그 파일의 로테이션 설정하는 방법(php-fpm logrotate) PHP-FPM (PHP FastCGI Process Manager) 로그 파일을 로테이션(순환)하여 로그 파일 크기를 관리하고 오래된 로그를 보관하려면 logrotate를 사용할 수 있습니다. PHP-FPM 로그 파일의 로테이션 설정 1. 로그로테이션 설정 파일 생성 또는 편집 로그로테이션 설정 파일을 생성하거나 기존 설정 파일을 편집합니다. 대부분의 리눅스 시스템에서 로그로테이션 설정 파일은 /etc/logrotate.conf 또는 /etc/logrotate.d/php-fpm와 같은 경로에 위치할 수 있습니다. sudo vim /etc/logrotate.d/php-fpm 2. 로그로테이션 설정 추가 다음과 같이 PHP-.. 더보기
Nginx 로그 파일을 로테이션 설정하는 방법 Nginx 로그 파일을 로테이션 설정하는 방법(nginx logrotate)Nginx 로그 파일을 주기적으로 로테이션(순환)하여 로그 파일 크기를 관리하고 오래된 로그를 보관하려면 logrotate를 사용할 수 있습니다.Nginx 로그 파일의 로테이션 설정1. logrotate 설정 파일 생성logrotate 설정 파일을 생성하거나 수정합니다.대부분의 리눅스 시스템에서 logrotate 설정 파일은 /etc/logrotate.conf 또는 /etc/logrotate.d/nginx와 같은 경로에 위치할 수 있습니다.sudo vim /etc/logrotate.d/nginx2. logrotate 설정 추가Nginx 로그로테이션 설정을 추가합니다./var/log/nginx/*.log { daily m.. 더보기
도커 컨테이너에서 systemd를 실행하는 방법 도커 컨테이너에서 systemd를 실행하는 방법 기본적으로 Ubuntu의 Docker 이미지는 init 시스템이 없으며, systemd를 사용하지 않습니다. 이는 Ubuntu 컨테이너가 주로 단일 프로세스로 실행되도록 설계되어 있기 때문입니다. 만약 init 시스템을 사용하고 싶다면, systemd를 사용하는 Ubuntu 이미지를 선택해야 합니다. 하지만 이 방법은 보통 권장되지 않습니다. Docker 컨테이너는 단일 프로세스로 동작하는 것이 이상적이며, 여러 서비스를 동시에 관리하기 위해 컨테이너를 여러 개 실행하는 것이 일반적입니다. systemd를 사용하는 Ubuntu Docker 이미지를 실행하려면 다음과 같이 하실 수 있습니다. Docker Hub에서 systemd를 사용하는 Ubuntu 이미지.. 더보기
grubby 명령어 grubby 명령어 grubby는 CentOS 및 Red Hat 계열의 Linux 시스템에서 GRUB 부트로더를 관리하는 데 사용되는 명령줄 도구입니다. GRUB 부트로더는 Linux 시스템을 부팅하는 데 사용되는 프로그램입니다. grubby를 사용하여 GRUB 부트로더의 설정을 변경하고, 커널을 업데이트하고, 부팅 항목을 추가 및 제거할 수 있습니다. grubby 명령어는 다음과 같이 사용됩니다. grubby [옵션] [값] 옵션은 grubby 명령어의 동작을 지정합니다. 값은 옵션의 값을 지정합니다. grubby 명령어의 사용 예는 다음과 같습니다. GRUB 부트로더의 설정을 표시합니다. grubby --show-config 커널을 업데이트합니다. grubby --update-kernel 부팅 항목을.. 더보기
Amazon Linux 2023에서 SELinux를 비활성화하는 방법 Amazon Linux 2023에서 SELinux를 비활성화하는 방법 SELinux를 비활성화할 때 고려해야 할 몇 가지 추가 사항입니다. SELinux를 비활성화하면 시스템의 보안이 저하될 수 있습니다. SELinux를 비활성화한 후 다시 활성화하면 변경 사항을 적용하기 위해 시스템을 재부팅해야 할 수도 있습니다. SELinux에 의존하는 애플리케이션을 사용하는 경우 SELinux를 비활성화한 후 제대로 작동하지 않을 수 있습니다. 테스트 환경 $ cat /etc/os-release | grep PRETTY_NAME PRETTY_NAME="Amazon Linux 2023" 1. selinux config 파일 확인 cat /etc/selinux/config # This file controls the .. 더보기

반응형