1. keycloak에 DB 연동하기 (PostgreSQL)https://www.keycloak.org/downloads downloads - KeycloakKeycloak is a Cloud Native Computing Foundation incubation project © Keycloak Authors 2024. © 2024 The Linux Foundation. All rights reserved. The Linux Foundation has registered trademarks and uses trademarks. For a list of trademarks of The Linux Foundawww.keycloak.org keycloak 공식 홈페이지에서 keycloak 다운로드합니다.다운로..
1. OAuth 2.0 을 이용한 접근 권한 인가OAuth2.0은 현재 널리 사용되는 업계 표준 프로토콜입니다. OAuth2.0의 핵심은 전체 웹 사이트 생태계를 서로 통합할 수 있는 OAuth2.0 프레임워크가 위치합니다. OAuth2.0을 사용하면 서드파티 어플리케이션과 사용자 데이터를 쉽게 공유하고, 사용자 자격증명을 공유할 필요가 없으며 공유할 데이터를 제어할 수 있습니다. OAuth2.0은 서드파티 애플리케이션을 제어하는 것 외에도 자체 애플리케이션에 대한 접근 제한에도 매우 유용합니다. 서드파티 애플리케이션이 다른 사이트에서 사용자 이름과 패스워드를 요청하는 것이 일반적인 것처럼 기업 내부에서도 이는 일반적인 패턴이었습니다. 예를 들어 LDAP 사용자 이름과 패스워드를 요청하고 기업 내부의 다..
1. keycloak 소개Keycloak은 단일 페이지 애플리케이션(single-page applications), 모바일 애플리케이션 및 REST API와 같은 최신 애플리케이션에 초점을 맞춘 오픈소스 ID 및 접근관리 도구입니다. Keycloak은 강력한 인증을 포함해 완전히 사용자가 원하는대로 설정할 수 있는 로그인 페이지를 제공합니다. 또한 암호 복구, 주기적인 암호 업데이트 설정, 이용약관 동의 등과 같은 다양한 기능을 제공합니다. 해당 기능들을 사용하기 위해 추가적인 설정이나 코딩을 할 필요없습니다. 사용자에게 표시되는 모든 페이지는 사용자의 테마를 지원하므로 페이지의 UI를 손쉽게 바꿀 수 있습니다. Keycloak을 통해 인증을 수행하면 애플리케이션의 서로 다른 인증 메커니즘이나 암호저..
1. CI/CD 개념CI(Continuous Intergration) 지속적 통합 개발자가 코드를 지속적으로 통합하고 테스트하는 프로세스를 의미합니다.CD(Continuous Delivery) 지속적 전달 또는 CD(Continuous Deployment) 지속적 배포 metallb 설치확인user@myserver01:~$ helm ls --namespace mymetallbNAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSIONmetallb-1736923135 mymetallb 1 ..
1. 도커를 활용한 Flask 실행Flask는 django와 마찬가지로 파이썬을 이용해 쉽게 웹사이트를 만들 수 있도록 도와주는 웹 프레임워크입니다. flask 설치하기user@myserver01:~$ pyenv activate py3_13_1(py3_13_1) user@myserver01:~$ pip install flaskCollecting flask Downloading flask-3.1.0-py3-none-any.whl.metadata (2.7 kB)..생략 설치 확인(py3_13_1) user@myserver01:~$ pythonPython 3.13.1 (main, Jan 17 2025, 00:30:07) [GCC 13.3.0] on linuxType "help", "copyright", "c..
이번글에서는 도커를 활용하여 웹서비스를 배포하겠습니다. PostgreSQL이 가동 중인지 확인합니다.user@myserver01:~$ systemctl status postgresqlUnit postgresql.service could not be found. 만약에 존재하지 않는다면 설치합니다.https://www.postgresql.org/download/linux/ubuntu/ PostgreSQL: Linux downloads (Ubuntu)Linux downloads (Ubuntu) PostgreSQL is available in all Ubuntu versions by default. However, Ubuntu "snapshots" a specific version of PostgreSQL t..
1. 스테이트 풀셋스테이트 풀셋(StatefulSet)은 디플로이먼트 개념과 비슷합니다. 차이점은 디플로이먼트를 구성하는 각 파드는 서로 대체가 가능하지만, 스테이트 푸렛을 구성하는 파드들은 서로 동일한 스펙이더라도 각 파드마다 독자성을 유지하므로 대체 불가능합니다. 스테이트 풀셋은 파드들을 관리하는데 사용하는 워크로드 API 오브젝트입니다. 워크로드란 쿠버네티스에서 구동되는 애플리케이션을 의미합니다. 스트레이 풀셋은 파드들이 동일한 스펙으로 생성되었더라도 각 파드들은 서로 교체 될 수가 없습니다. 또한 각 파드는 영구적인 식별자를 가지는데 이는 스케쥴링을 다시 할때도 유지됩니다. 헤드리스 서비스(Headless Service)는 파드들의 개별 네트워크를 식별하기 위해 필요한 서비스입니다. 헤드리스 서비..
1. 쿠버네티스 활용하기 매니피스트란 쿠버네티스 오브젝트를 실행하기 위한 메타 정보를 YAML 혹은 JSON 형식으로 작성한 파일을 의미합니다. 매니피스트를 활용하여 파드를 실행해 봅니다.vi nginx-test01.yml$ vi nginx-test01.ymlapiVersion: v1kind: Podmetadata: name: nginx01spec: containers: - name: nginx-test01 image: nginx:latest $ kubectl apply -f nginx-test01.yml pod/nginx01 created$ kubectl get podNAME READY STATUS RESTARTS AGEnginx01 0/1 ..
1. 쿠버네티스란쿠버네티스는 컨테이너화된 애플리케이션의 자동 배포, 확장 및 관리를 해주는 오픈소스 플랫폼입니다.쿠버네티스의 스펠링 Kubernetes 인데 고대 그리스어로 배의 조타수를 의미합니다. 첫글자 k 마지막글자 s사이에 여덞글자가 있다고 해서 쿠버네티스를 줄여서 K8s라고도 부릅니다.쉽게 말해 쿠버네티스는 수많은 컨테이너를 관리하는 시스템입니다. 특히 다수의 서버를 운영한다면 서로 다른 서버에 작동하는 수많은 컨테이너를 한꺼번에 관리하는 것은 시간 비용이 많이 듭니다. 이런경우 쿠버네티스를 사용한다면, 여러개의 컨테이너를 쉽게 생성하고 관리할 수 있습니다. 쿠버네티스의 구조는 쿠버네티스 클러스터, 컨트롤 플레인, 노드, 워크로드, 네트워크, 스토리지로 구성되어 있습니다. 쿠버네티스는 다수..
1.도커란?도커는 컨테이너라고 부르는 운영체제 수준의 가상화 방식으로 소프트웨어를 배포하는 방식으로 사용하는 PaaS 제품입니다. 쉽게말해 도커를 사용하면 다양한 개발 환경에서 컨테이너를 이용해 소프트웨어를 편리하게 배포할 수 있습니다.오픈소스로서 누구나 무료로 사용할 수 있는 소프트웨어입니다. 도커를 활용한 어플리케이션 실행은 위 그림과 같습니다. 운영체제 위에 도커가 설치되고 도커는 컨테이너 단위로 어플리케이션을 실행합니다. 컨테이너들은 서로 격리되어있으므로 독립성을 보장합니다. 각 컨테이너는 어플리케이션을 실행하는데 필요한 최소한의 바이너리, 라이브러리를 포함합니다. 도커에서는 가상화 시스템을 사용합니다. 가상화란 컴퓨터에서 활용하는 리소스를 추상화하는 개념을 의미합니다. 가상화를 활용해 여러 개..
- Total
- Today
- Yesterday