전체 글 29

Opnestack kolla-ansible 배포 관련 the error was: systemerror: <built-in function _escape_inner> returned null without setting an exception failed 에러 해결 방법

에러 메시지:SystemError: returned NULL without setting an exception→ Python의 C 확장 모듈에서 반환값 처리 오류가 발생한 경우 나타나는 에러입니다.→ Jinja2 템플릿 처리 중 MarkupSafe의 _escape_inner() 함수가 NULL을 반환했으나, 예외를 raise하지 않아 Python 인터프리터가 SystemError를 발생시켰습니다. MarkupSafe의 역할MarkupSafe는 Jinja2에서 HTML 이스케이프 처리를 담당하는 핵심 라이브러리입니다._escape_inner()는 문자열을 HTML 이스케이프할 때 내부적으로 호출됩니다.''(빈 문자열) 또는 예상치 못한 타입이 들어오면, 이를 이스케이프하려다 오류가 발생합니다.버전 간 차..

CLOUD 2025.05.29

OpenStack Designate에 대해 알아보기

OpenStack Designate: 내부 DNS 서비스 구성하기OpenStack 환경에서 클라우드 네이티브한 DNS 관리 기능을 제공하는 컴포넌트가 바로 Designate입니다. OpenStack 프로젝트 중 하나로, 가상 머신 인스턴스와 연동되는 DNS 자동 등록 및 해제를 지원하며, 자체 API와 Horizon 플러그인을 통해 쉽게 사용할 수 있습니다.Designate란?Designate는 OpenStack의 DNS-as-a-Service 컴포넌트로, 다음과 같은 기능을 제공합니다:프로젝트별 DNS 존 및 레코드 관리인스턴스 생성/삭제 시 DNS 이름 자동 등록/해제API 또는 Horizon 기반의 사용자 인터페이스 제공여러 백엔드 DNS 서버(BIND9, PowerDNS 등)와 연동 가능즉, 인프..

CLOUD 2025.04.08

OpenStack Swift – 스토리지 디스크 준비 및 Ring 파일 구성, 정책 에러 해결 방법

✅ 1. 스토리지 전용 디스크 파티션 생성 (/dev/sdc 기준)Swift는 스토리지 노드마다 데이터 저장을 위한 전용 디스크를 요구하며, 바로 사용 할 수 없는 디폴트에 대한 파티션이 필요합니다.fdisk /dev/sdcfdisk 명령어 입력 순서:n # 새 파티션 생성p # Primary 파티션1 # 파티션 번호는 1Enter # 시작 서퍼 기본값 사용Enter # 끝 서퍼 기본값 사용w # 저장 및 종료결과 확인:lsblk→ /dev/sdc1 파티션 확인✅ 2. XFS 파일시스템 생성Swift는 XFS 파일시스템을 해야만 정식으로 지원하기 때문에 필요한 설정입니다.mkfs.xfs -f /dev/sdc1✅ 3. 디렉토리 생성 및 마운트Swift는 /srv/node/ 구조..

CLOUD 2025.04.03

OpenStack ceph 스냅샷 삭제 시 실패하는 권한 문제 해결 정리

Ceph 인증 키와 권한(Caps) 설명 정리1. Ceph 인증 키 구조Ceph는 서비스별로 클러스터 접근을 위한 인증 키(keyring)를 사용합니다.일반적으로 /etc/ceph/ 또는 Kolla 환경에서는 /etc/kolla//ceph/ 경로에 위치합니다.2. 권한 정보 (caps)키 자체는 인증을 위한 도구일 뿐, 실제 권한은 Ceph 클러스터 내부에 저장된 caps 값에 따라 결정됩니다.ceph auth get client. 명령어를 통해 키의 실제 권한을 확인할 수 있습니다.3. Caps 필드 구성 예시caps mon = "allow r"caps osd = "allow class-read object_prefix rbd_children, allow rwx pool=volumes"mon = "al..

CLOUD 2025.03.28

OpenStack Kolla Ansible Horizon URL 직접 접근 차단 및 정상적인 접근 방식 설정

현재 환경 분석사용자는 192.168.0.80 VIP를 통해 Horizon에 접근.VIP는 10.0.2.110:443(Horizon 컨테이너)로 트래픽을 라우팅.Apache 설정에서 의 Require ip 규칙이 적용됨.X-Forwarded-For 헤더를 활용하여 클라이언트의 실제 IP를 인식할 수 있도록 설정 필요.URL 직접 접근 차단 방법Horizon의 특정 URL을 직접 입력하여 접근하지 못하도록 Apache와 Horizon Django 설정을 수정합니다.1. Apache 설정 변경파일 경로: /etc/kolla/horizon/horizon.conf LogLevel info ErrorLogFormat "%{cu}t %M" ErrorLog /var/log/kolla/horizon/h..

CLOUD 2025.03.05

OpenStack Horizon 로그인 실패 메시지 수정 및 적용 방법

OpenStack Horizon 로그인 실패 메시지 수정 및 적용 방법OpenStack Kolla-Ansible 환경에서 Horizon 로그인 실패 메시지를 변경하는 방법을 정리합니다. 로그인 실패 시 "올바르지 않은 자격 증명" 메시지를 원하는 문구로 수정할 수 있습니다.1. Horizon 번역 파일(django.po) 수정1-1. Horizon 컨테이너 내부 접속# Horizon 컨테이너에 접속합니다.docker exec -it horizon bash1-2. 번역 파일(django.po) 위치 확인Horizon의 번역 파일은 Python 환경에 따라 다를 수 있습니다. 아래 경로로 이동합니다.cd /var/lib/kolla/venv/lib/python3.12/site-packages/openstack..

CLOUD 2025.03.04

KOLLA ANSIBLE - 간단하게 도커 프라이빗 레지스트리 적용 시켜보기

사전 준비이 작업을 수행하려면 먼저 Kolla-Ansible을 설치하고 OpenStack 배포에 필요한 모든 이미지를 사전에 kolla-ansible 명령어 pull을 통해 다운로드해야 합니다. 이후, 다운로드된 이미지를 프라이빗 레지스트리에 푸시할 수 있습니다.1. 도커 레지스트리 컨테이너 실행먼저, 도커가 설치된 상태에서 다음 명령어를 실행하여 레지스트리 컨테이너를 실행합니다.docker run -d -p 192.168.0.226:5000:5000 --restart=always --name registry registry:2이 명령어는 192.168.0.226:5000 포트로 외부에서 접근할 수 있도록 도커 레지스트리를 실행합니다.2. Docker Daemon 설정 변경레지스트리를 신뢰할 수 있도록 ..

CLOUD 2025.02.05

VMware 인스턴스 이미지 openstack으로 마이그레이션 하기

VMware에서 OpenStack으로 가상 머신을 마이그레이션하는 과정은 VMDK 디스크 변환, 이미지 최적화, OpenStack Glance에 업로드, 인스턴스 생성 및 테스트로 구성됩니다.1. VMware 가상 디스크 형식 변환OpenStack은 일반적으로 QCOW2 또는 RAW 디스크 형식을 사용하므로, VMware의 VMDK 파일을 변환해야 합니다.1.1 VMDK 파일 추출VMware에서 마이그레이션할 가상 머신을 종료합니다.vSphere Client 또는 vCenter에서 해당 VM의 VMDK 파일을 다운로드합니다.1.2 VMDK 파일 위치 확인Windows: C:\Users\{사용자명}\Documents\Virtual Machines\{가상 머신 이름}\Linux: ~/vmware/{가상 머신..

CLOUD 2024.11.05

간단하게 Kubespray로 Kubernetes 클러스터 구축하기

Kubernetes 클러스터를 간편하게 구축할 수 있는 도구인 Kubespray를 활용해 보겠습니다. Kubespray는 Kubernetes 클러스터를 구성하는 데 필요한 여러 컴포넌트(containerd, CNI, MetalLB 등)를 자동으로 설치해주기 때문에 수작업을 줄이고 시간을 크게 절약할 수 있습니다. Ubuntu 22.04 기반 환경에서 약 30분이면 클러스터 구축이 완료됩니다.1. 클러스터 환경 구성Master Node: 3개 (각 4 Core, 8GB RAM)Worker Node: 5개 (각 8 Core, 16GB RAM)OS: Ubuntu 22.042. 사전 준비 작업2.1 SSH 키 설정Master 노드(kube1)에서 SSH 키를 생성하고, 모든 노드에 복사하여 무비밀번호 접근을 설..

컨테이너 2024.10.31

리눅스 nano 편집기 명령어 정리

Nano는 간단하면서도 강력한 텍스트 편집기입니다. 본 문서에서는 Nano에서 자주 사용되는 단축키를 파일 관리, 탐색 및 이동, 텍스트 편집, 검색 및 치환, 파일 표시 및 형식, 블록 선택 등의 카테고리로 나누어 정리하였습니다.1. 파일 관리 관련 단축키Ctrl + O : 파일 저장Ctrl + X : 편집기 종료 (변경 사항이 있으면 저장 여부 확인)Ctrl + R : 다른 파일 불러오기Ctrl + G : 도움말 보기2. 탐색 및 이동 관련 단축키Ctrl + A : 커서를 해당 줄의 시작으로 이동Ctrl + E : 커서를 해당 줄의 끝으로 이동Ctrl + Y : 이전 페이지로 이동 (스크롤 업)Ctrl + V : 다음 페이지로 이동 (스크롤 다운)Ctrl + _ : 특정 줄/열 번호로 이동Ctrl +..

리눅스 2024.10.22