SmartNIC: Network Interface CardSmartNIC(Smart Network Interface Card)는 전통적인 네트워크 인터페이스 카드(NIC)보다 더 고급 기능을 제공하는 장치로, 데이터 센터 네트워킹, 보안, 스토리지를 효율적이고 유연하게 처리할 수 있는 프로그래밍 가능한 하드웨어 가속기이다. SmartNIC는 서버 CPU에서 처리하던 네트워크 트래픽 관리, 보안 작업, 데이터 암호화 등 다양한 작업을 오프로드하여 분산 애플리케이션의 성능을 최적화하는 데 중요한 역할을 한다. 가속기(Accelerator)는 CPU에서 처리하던 특정 작업을 FPGA, GPU, NPU 같은 특화된 하드웨어로 오프로드해 소프트웨어 실행 속도를 대폭 향상시키는 장치이다. 가속기 내부의 하드웨어 로..
전체 글
BPF:Berkely Packet Filter BPF(Berkeley Packet Filter)는 1992년에 개발되어 주로 네트워크 트래픽을 필터링하고 분석하는 데 사용된 in-kernel 가상 머신이다. BPF의 주요 기능은 네트워크 패킷을 효율적으로 필터링하는 것이다. 일반적으로 네트워크 트래픽을 모니터링하거나 필터링할 때 모든 패킷을 유저 공간으로 보내 처리하는 것은 성능에 큰 영향을 미칠 수 있다. 이를 해결하기 위해 BPF는 커널 내에서 패킷 필터링을 수행하고, 필요한 패킷만을 유저 공간으로 전송해 성능을 최적화한다. BPF는 작은 명령어 집합을 가진 간단한 가상 머신으로, 주로 네트워크 트래픽을 필터링하는 목적에 사용되었다.그러나 시간이 지나면서 BPF의 한계를 극복하고 그 기능을 확장할 필..
캐시(Cache)캐시란 자주 사용하는 데이터를 미리 복사해 놓는 임시 저장 공간을 의미한다. 주로 데이터베이스나 디스크처럼 상대적으로 느린 저장소에서 직접 데이터를 가져오는 대신, 보다 빠른 메모리를 사용해 자주 필요한 데이터를 신속하게 조회하는 방법이다. 캐시를 사용함으로써 시스템의 응답 속도를 크게 향상시킬 수 있으며, 특히 반복적으로 접근하는 데이터에 대해 성능 이점을 제공한다. 예를 들어, 웹 애플리케이션에서 자주 요청되는 페이지나 이미지 파일, 혹은 데이터베이스에서 빈번하게 조회되는 쿼리 결과 등을 캐시에 저장하면, 매번 원본 저장소에 접근할 필요가 없어져 서버의 부하를 줄이고 전반적인 처리 성능을 높일 수 있다. 이처럼 캐시는 데이터를 임시로 저장하고 빠르게 제공함으로써, 시스템 자원을 효율적..
FD.io 프로젝트의 핵심 기술로, Vector Packet Processing(VPP)에 대해 소개해보고자 한다. VPP란 무엇인가FD.io의 VPP(Vector Packet Processor)는 벡터 패킷 처리 기술을 활용하여 고성능 패킷 처리를 지원하는 가상 라우터/스위치이다. VPP는 L2에서 L4까지의 네트워크 계층 기능을 제공하며, 네트워크 인프라에서 빠르고 효율적인 패킷 처리를 가능하게 한다. 이 기술은 FD.io 프로젝트의 오픈소스로 공개되었으며, 시스코(Cisco)도 이 프로젝트에 적극적으로 참여하고 있다. VPP는 시스코가 20년 넘게 사용해 온 검증된 기술로, 약 3년 전에 오픈소스로 공개되었다. 네트워크 카드를 통해 데이터 플레인에서 패킷을 전달하는 데 매우 적합한 기술이며, 오픈..
·AWS
GitHub Docs에 따르면, GitHub Actions는 코드의 빌드, 테스트 및 배포 과정을 자동화할 수 있는 CI/CD 플랫폼으로, 개발자가 코드 변경 사항을 빠르고 효율적으로 통합하고, 다양한 환경에 배포할 수 있도록 지원한다. 이를 통해 전체 소프트웨어 개발 주기를 간소화하고, 팀 협업과 코드 품질을 향상시킬 수 있다. CI/CD핵심 키워드인 CI/CD에 대해 자세하게 알아보기 전에 DevOps에 대해 간단하게 알아보자.DevOps는 시스템 개발자와 운영을 담당하는 정보기술 전문가 사이의 소통, 협업, 통합 및 자동화를 강조하는 소프트웨어 개발 방법론이다. 즉, 개발과 운영의 간극을 줄이기 위해 탄생한 Development와 Operations를 합친 개념이다. 이 DevOps 엔지니어의 핵심..
·AWS
Bastion Host란 침입 차단 소프트웨어가 설치되어 내부와 외부 네트워크 사이에서 일종의 게이트 역할을 수행하는 호스트이다. Bastion Host 내부 네트워크와 외부 네트워크 사이에 위치하는 게이트웨이다. 내부 인스턴스에 접근하려면 Bastion Host를 통해 접근해야하기 때문에 보안상 가장 중요한 방화벽 호스트이다. 단일 Bastion Host만으로도 방어를 할 수 있으며, 다른 방호 계층과 함께 대형 보안 시스템의 일부가 되기도 한다. AWS에서 VPC를 사용하여 Bastion Host를 구성해보자.Bastion Host를 구성하기 위한 순서는 다음과 같다.1. VPC 및 Public/Private Subnet 구성2. Public EC2(Bastion Host), Private EC2 생..
·AWS
AWS Organizations AWS Organizations는 생성한 여러 AWS 계정을 조직에 통합하고 중앙에서 관리할 수 있는 계정 관리 서비스입니다. 각 부 AWS Organizations 기능 1. 모든 AWS 계정의 중앙 집중식 관리 2. 예산, 보안, 규정 준수 필요 충족을 위한 계정의 계층적 그룹화 3. 각 계정이 액세스 할 수 있는 AWS 서비스 및 API 작업의 제어를 중앙화하는 정책 4. AWS Identity and Access Management(IAM)에 대한 통합 및 지원 AWs Organizations에서 서비스 제어 정책(SCP)도 제공합니다. SCP는 조직 루트와 개별 멤버 계정, 조직 단위(OU)에 적용할 수 있습니다. SCP는 AWS 계정 루트 사용자를 포함하여 계정..
·AWS
클라우드를 도입한 많은 기업의 클라우드 담당자는 보안, 비용절감, 확장성 등 측면에서 현재 구성된 아키텍처가 적절한지 고민을 하고 있습니다. 1. 안전하게 데이터를 보관하고 있는 건가? 2. 클라우드 서비스 비용을 더 절감할 수 없을까? 3. 사용자 역할 및 권한관리는 잘 하고 있는가? 4. 사용자 폭증에 대처할 수 있을까? 5. 새로운 기술을 수용하는 데 적합한가? 이러한 고민을 해결할 수 있도록 도와주는 서비스가 AWS Well-Architected입니다. --- AWS Well-Architected이란 AWS에서 제공하는 클라우드 아키텍처 디자인 프레임워크입니다. AWS Well-Architected는 여섯 가지 원칙을 중심으로 구축되었습니다. 1. 운영 우수성: 효율적인 운영 프로세스를 강조합니다..