본문 바로가기
반응형

전체 글59

[java] 특정 문자열에 문자 존재 여부 확인 함수 1. String.contains()문자열에 특정 문자열(또는 문자)이 포함되어 있는지 확인합니다.반환값: boolean (true/false)String str = "Hello, World!"; boolean result = str.contains("World"); System.out.println(result); // true2. String.indexOf()특정 문자나 문자열이 처음 등장하는 위치를 반환합니다.값이 -1이면 존재하지 않는다는 뜻입니다.반환값: int (위치 또는 -1)String str = "Hello, World!"; int index = str.indexOf('W'); System.out.println(index); // 7 (존재하지 않으면 -1 반환)5. String.char.. 2024. 11. 30.
[AWS] 계정 설정(Logical OU 구조 + Cross-Account Access 설계) 1. OU 설계AWS Organizations에서 환경별로 OU를 생성하여 계정을 그룹화합니다.Root├── Test OU│ ├── test-account-1│ └── test-account-2├── Staging OU│ ├── stg-account-1│ └── stg-account-2└── Production OU ├── prod-account-1 └── prod-account-22. 각 계정별 역할 설계Cross-Account Access를 위해, 각 계정에 역할(Role)을 생성하고 **신뢰 정책(Trust Policy)**을 설정합니다.예: Test, Staging, Production 계정의 IAM Role 이름을 통일모든 계정에 동일한 이름의 역할을 생성합니다.예: A.. 2024. 11. 28.
[AWS] 스토리지 종류 별 정리 AWS 스토리지서비스 용도특징Amazon S3- 파일 스토리지 - 백업 및 복구 - 웹 애플리케이션 데이터 저장 - 빅 데이터 분석- 객체 스토리지 - 다양한 스토리지 클래스 (Standard, IA, One Zone-IA, Glacier 등) - 고내구성, 고가용성 제공Amazon EBS- EC2 인스턴스 블록 스토리지 - 데이터베이스, 파일 시스템, 애플리케이션 데이터 저장- 블록 스토리지 - SSD 및 HDD 옵션 - EC2 인스턴스에 연결 - 스냅샷 기능 제공Amazon EFS- 공유 파일 시스템 - 다수의 EC2 인스턴스 간 파일 공유- NFS 프로토콜 지원 - 자동 확장 - 여러 가용 영역에 고가용성 제공Amazon FSx- Windows 파일 서버 또는 Lustre 파일 시스템 필요시- FS.. 2024. 11. 27.
[AWS] 네트워크 연결 옵션(Transit Gateway, Direct Connect, PrivateLink, Site-to-Site VPN) 1. Transit GatewayAWS 내에서 중앙 허브 역할을 하여 여러 VPC 및 온프레미스 네트워크를 연결합니다.특징확장성: 여러 VPC와 온프레미스 네트워크를 한 번에 연결 가능.라우팅 관리: 라우팅 테이블을 통해 트래픽을 제어.보안: VPC 간 암호화 제공.사용 사례여러 VPC 및 온프레미스 네트워크를 연결해야 할 때.멀티 계정 및 멀티 리전 환경에서 효율적인 네트워크 관리를 원할 때.2. Direct ConnectAWS와 온프레미스 간 전용 네트워크 연결을 제공합니다.특징전용 회선: 인터넷을 우회하므로 낮은 지연 시간과 높은 안정성 제공.고성능: 최대 100Gbps까지 지원.비용 효율성: 대량 트래픽 전송 시 비용 효율적.사용 사례고성능 및 안정성이 중요한 환경(예: 금융, 미디어 스트리밍)... 2024. 11. 27.
[AWS] Lambda@Edge AWS CloudFront와 Lambda를 함께 사용하면, 콘텐츠 전송 네트워크(CDN)에서의 요청을 처리하고, 콘텐츠를 더 동적으로 수정하거나 사용자 맞춤화된 응답을 생성하는 등 다양한 기능을 구현할 수 있습니다. 이를 통해 웹 애플리케이션의 성능을 향상시키고, 서버리스 방식으로 손쉽게 처리할 수 있습니다.CloudFront와 Lambda를 함께 사용하는 주요 방식은 Lambda@Edge라는 서비스입니다. 이를 통해 CloudFront 배포의 엣지 로케이션에서 직접 Lambda 함수가 실행될 수 있습니다.1. Lambda@Edge 개요Lambda@Edge는 AWS Lambda의 확장으로, CloudFront의 엣지 로케이션에서 Lambda 함수를 실행하여, 클라이언트와 오리진 서버 사이에서 발생하는 트.. 2024. 11. 26.
[AWS] Route53 Route 53의 주요 기능DNS 서비스Route 53은 네임서버 역할을 하며, 도메인 이름에 대한 DNS 요청을 처리합니다.AWS에서 제공하는 네임서버를 통해 사용자가 등록한 도메인의 레코드를 관리하고, 이를 외부에서 접근할 수 있도록 설정합니다.예: www.example.com → 192.168.1.1 같은 DNS 요청을 해석.도메인 등록Route 53에서 도메인을 구매하고 관리할 수 있습니다.도메인 등록 후 자동으로 Route 53의 네임서버에 연결됩니다.DNS 레코드 관리Route 53에서 다양한 유형의 DNS 레코드를 설정할 수 있습니다:A 레코드: 도메인 이름을 IPv4 주소로 매핑.AAAA 레코드: 도메인 이름을 IPv6 주소로 매핑.CNAME 레코드: 도메인을 다른 도메인 이름에 매핑.MX.. 2024. 11. 26.
리눅스 파일 디렉토리 구조 1. 주요 실행 파일 관련 디렉토리/bin기본 시스템 명령어들이 위치.부팅과 기본적인 시스템 운영에 필요한 실행 파일을 포함.예: ls, cp, mv, bash./sbin시스템 관리 명령어들이 위치.일반 사용자가 아닌 관리자(root) 가 사용하는 명령어들이 포함.예: reboot, shutdown, fdisk./usr/bin일반 사용자가 사용할 수 있는 응용 프로그램 실행 파일이 위치.기본 프로그램 외 추가로 설치된 프로그램도 포함.예: python, gcc./usr/local/bin사용자가 직접 설치한 프로그램의 실행 파일이 위치.시스템 전역 /usr/bin과 분리된 로컬 프로그램 실행 파일.예: 직접 설치한 스크립트나 바이너리 실행 파일.2. 라이브러리 관련 디렉토리/lib/bin 및 /sbin 명.. 2024. 11. 21.
서비스가 사용하는 File Handler의 이해 리눅스에서 파일이란?리눅스에서 파일은 데이터나 정보를 저장하는 기본적인 단위이며, 모든 리눅스 시스템에서 파일은 일반 파일뿐만 아니라, 디렉터리, 링크, 장치 파일, 소켓 등 다양한 형태로 존재한다. 리눅스는 "모든 것이 파일이다"라는 철학을 따르며, 이를 통해 파일뿐 아니라, 장치나 프로세스 간 통신 채널 역시 파일로 취급한다.리눅스에서 파일의 종류는 다음과 같다.Regular file : 텍스트 파일, 바이너리 파일, 실행 파일 등 데이터를 담고 있는 일반적인 파일Directory : 파일과 다른 디렉터리들을 조직화하고 계층 구조로 관리하는 폴더 역할을 합니다.Link file : 특정 파일을 참조하는 파일입니다.심볼릭 링크 (Symbolic link): 원본 파일의 경로를 가리키며, 원본 파일이 삭.. 2024. 11. 20.
[CI/CD 프로젝트] Gatekeeper를 통한 K8S 정책 관리 GatekeeperGatekeeper는 Kubernetes 클러스터 내에서 정책을 감사하고 시행할 수 있는 도구이다. Open Policy Agent(OPA)와 Rego 언어를 기반으로 하여, Kubernetes 리소스의 표준화된 생성 및 업데이트를 지원한다. Gatekeeper는 정책을 통해 클러스터의 일관성과 보안을 유지하며, 다양한 팀이 리소스를 관리하는 데 있어 통합된 기준을 제공한다.Gatekeeper의 필요성Kubernetes 환경에서 많은 팀이 리소스를 작성할 때, 구성 방식에 차이가 발생할 수 있다. 이러한 차이를 관리하고 일관성을 유지하기 위해 Gatekeeper는 다음과 같은 기능을 제공한다:정책 집행: Gatekeeper는 클러스터 내에서 정책을 준수하지 않는 리소스의 생성 또는 업데.. 2024. 11. 20.
[CI/CD 프로젝트] Ansible을 통한 인프라 관리의 자동화 Ansible 주요 개념Inventory : 인벤토리 파일은 Ansible이 관리할 서버 목록을 정의합니다. 일반적으로 /etc/ansible/hosts 에 위치하며, 그룹으로 서버를 정의할 수 있다.예시:[webservers]server1 ansible_host=192.168.1.1server2 ansible_host=192.168.1.2[dbservers]server3 ansible_host=192.168.1.3Playbook : 하나 이상의 작업(task)을 정의한 YAML 파일. 각 Play는 인벤토리의 특정 호스트나 호스트 그룹에서 실행되며, 다양한 모듈과 함께 사용해 복잡한 자동화 작업을 구성할 수 있다.- name: Install and configure web server hosts: w.. 2024. 11. 20.
반응형