[AWS] 생성형 AI : BedrockAWS Bedrock은 AWS가 제공하는 생성형 AI(Generative AI) 서비스로, 사용자가 사전 학습된 대규모 언어모델(LLM)을 쉽게 활용할 수 있도록 돕는 플랫폼이다.AWS Bedrock을 사용하면 LLM을 직접 관리하거나 학습 시키는 복잡한 작업 없이, 다양한 생성형 AI 모델을 통합하여 애플리케이션에 도입할 수있다. AWS Bedrock이란?AWS Bedrock은 생성형 AI 애플리케이션 개발을 지원하는 관리형 서비스다.사용자는 API를 통해 사전 학습된 여러 생성형 AI 모델을 활용할 수 있으며, AWS의 인프라와 통합되어 높은 확장성과 유연성을 제공한다. AWS Bedrock의 주요 특징들은 다음과 같다. 1. 다양한 LLM 제공: Bedrock..
[Linux] 계정 패스워드 만료일 확인 및 갱신하기 (chage)리눅스 시스템에서는 보안 강화를 위해 계정의 패스워드 만료일을 설정하거나 관리할 수 있다.이번 포스팅에서는 계정 패스워드 만료일을 확인하고, 갱신, 변경, 제거하는 방법을 단계별로 설명한다. 패스워드 만료일 확인리눅스에서 계정의 패스워드 만료일을 확인하려면 `chage` 명령어를 사용한다.charge -l user1# 마지막으로 패스워드를 변경한 날짜Last password change : Jan 01, 2025# 패스워드가 만료되는 날짜Password expires : Mar 01, 2025# 패스워드가 만료된 후 비활성화되는 날짜Password inactive : never# 계정 자체가 만료되는 날짜Account exp..
[Ceph] Ceph 설치하기앞선 포스팅에서 분산 스토리지 플랫폼 Ceph에 대해 설명한 적이있다. [Ceph] 분산 스토리지 플랫폼 : Ceph[Ceph] 분산 스토리지 플랫폼 : CephMinio의 최신 버전에서 s3 스토리지 게이트웨이 기능 지원이 종료됨에 따라, 대체할 수 있는 플랫폼을 찾아보다 알게 된 것이 Ceph 였다. 스토리지 게이트웨이heywantodo.tistory.com이번 포스팅에서는 Ceph의 설치에 대해 알아보고자 한다. Ceph 설치 요구 사항분산 스토리지를 위해 최소 3개의 노드가 필요각 노드에 다음 패키지 설치 필요CentOS/Ubuntu 등 Linux 운영체제ceph-deploy 또는 cephadm (설치 도구)Python3 (필요 시 추가 설치) Ceph 설치 과정A. ..
[Ceph] 분산 스토리지 플랫폼 : CephMinio의 최신 버전에서 s3 스토리지 게이트웨이 기능 지원이 종료됨에 따라, 대체할 수 있는 플랫폼을 찾아보다 알게 된 것이 Ceph 였다. 스토리지 게이트웨이 기능을 대체하기엔 적합하진 않았지만 활용도가 높아보여 이번 포스팅에선 ceph에 대해 알아보고자 한다. Chep란?Ceph는 고성능, 확장성, 신뢰성을 제공하는 오픈소스 분산 스토리지 플랫폼이다.특히, 소프트웨어 정의 스토리지(Software-Defined Storage, SDS) 개념에 기반해 하드웨어와 독립적으로 동작하며블록 스토리지, 파일 스토리지, 오브젝트 스토리지 모두를 지원하며, 데이터를 자동으로 분산 저장하고 복구하는 특징이 있다. Chep의 주요 특징1. 단일 스토리지 플랫폼: Cep..
[Python] Jira API 사용하기 현재 업무에서 협업 도구로 Atlassian의 Jira를 사용하고있다.얼마전 파이썬에서 지라를 불러와 태스크를 자동화하는 업무를 맡아서 진행했었는데. 그 때 사용했던 것이 Jira 라이브러리였다.해당 라이브러리에 대해 이번 포스팅에서 다뤄보고자 한다. JIRA APIJIRA REST API를 사용하면 JIRA의 데이터를 프로그래밍적으로 다룰 수 있다.프로젝트 정보 조회이슈 생성, 업데이트, 삭제사용자 관리댓글, 파일 첨부 등 다양한 작업파이썬에서는 Atlassian이 제공하는 Jira 라이브러리를 사용해 JIRA API에 쉽게 접근이 가능하다. JIRA 라이브러리 설치 및 환경 설정먼저 jira 라이브러리를 설치해준다.pip install jiraJira API는..
[MySQL] 문자열 다루기MySQL에서 문자열 데이터를 처리해야 할 때가 종종히 발생하는데, MySQL은 강력한 문자열 처리 기능을 제공한다.이번 포스팅에선 MySQL에서 자주 사용하는 문자열 함수와 쿼리 예제를 알아보자. 문자열 결합 CONCAT() MySQL에선 `CONCAT()` 함수를 사용해서 여러 문자열을 결합할 수 있다.-- 성과 이름을 결합한다.SELECT CONCAT(first_name, ' ', last_name) AS full_nameFROM users; 문자열 길이 확인 LENGTH()`LENGTH()` 함수는 문자열의 바이트 길이를 반환하며, `CHAR_LENGTH()`는 실제 문자 개수를 반환한다.-- 문자열 길이에 따른 필터링SELECT nameFROM productsWHERE..
[Gitlab] Runner 구성하기앞서 gitlab CI/CD의 `.gitlab-ci.yml` 대해 포스팅했었다. [Gitlab] Gitlab CI/CD 파이프라인[Gitlab] Gitlab CI/CD 파이프라인이전 포스팅에서 github의 Action에 대해서 포스팅 한 적이 있었다. [CI/CD] Git hub Action[Git] Git hub Action 🤔Git Hub Action? Git 리포지토리에서 바로 소프트웨어 개발 워크플로heywantodo.tistory.com해당 포스팅에서 CI/CD 파이프라인을 실행하기 위해선 작업을 진행할 Gitlab Runner가 필요하다고 언급을 하였는데,이번 포스팅에선 Gitlab Runner를 구성하는 방법에 대해 알아보고자 한다. GitLab Ru..
[AWS] S3 CLI로 객체 수 확인하기S3 버킷에서 객체 수를 확인하기 위해선, S3 콘솔에서 확인하고 싶은 경로를 선택 후 총 크기 계산을 선택하면용량과 총 객체수를 확인할 수 있다. 확인해야 할 경로가 많을 경우 위 방법은 굉장히 번거로울 수가 있는데, 그럴 땐 aws s3 cli를 활용하면 된다. aws s3 ls 명령어로 객체 수 세기aws s3 ls s3:/// --recursive --summarize`--recursive`와 `--summarize` 옵션을 사용하면 `Total Objects`가 출력된다.aws s3 ls s3://test-bucket/test/ --recursive --summarize2025-01-15 12:00:00 12345 file1.txt2025-01-15 1..
[Shell Script] 한 줄씩 처리하기 쉘에서 파일이나 명령어를 처리할 때, 여러 줄일 경우 한줄 씩 처리를 해야하는 경우가 생긴다.해당 경우에는 `while read line`을 사용하여 한 줄씩 처리가 가능하다. 파이프 사용하기파이프 `|`를 사용할 경우엔 서브쉘에서 실행되기 때문에, 해당 쉘에서 실행된 활동들은 부모쉘엔 영향이 없는 점을 유의를 해야한다.# 명령어ls ./ | while read line do echo $linedone# 파일cat test.txt | while read linedo echo $linedone `# 명령어while read line do echo $linedone
[Shell Script] 쉘에서 정규표현식 사용하기 정규표현식은 문자열 처리 및 패턴 매칭을 통해 데이터를 효율적으로 다루는 데에 매우 유용하다.`bash`, `grep`, `awk`, `sed` 등의 유틸리티를 활용하면, 쉘 스크립트에서 다양한 방식으로 정규표현식을 사용할 수 있다. [[]] 를 이용한 정규표현식 매칭bash 스크립트에서 `[[ ]]`는 정규 표현식을 지원한다. `=~` 연산자를 사용하면 문자열이 특정 패턴과 일치하는지를 확인할 수 있다.아래는 정규표현식을 통해 유효한 이메일 형식인지 검증하는 예제다.#!/bin/bashemail='test@example.com"if [[ $email =~ ^[a-zA-Z0-9._%+-]+\.[a-zA-Z]{2,}$ ]]; then echo "유효한..
[Gitlab] Gitlab CI/CD 변수Gitlab CI/CD 변수는 환경 변수의 일종으로, 해당 변수를 사용하여 다음과 같은 일을 할 수 있다.작업 및 파이프라인의 동작을 제어재사용 할 값들을 저장`.gitlab-ci.yml` 파일에 하드코딩된 값을 피함특정 파이프라인에서 변수 값을 재정의하거나, 수동 파이프라인 사전작업에 변수를 미리 채우는 등의 작업이 가능한데, 조금 더 자세히 확인해보자. 미리 정의된 CI/CD 변수Gitlab CI/CD는 미리 정의된 CI/CD 변수를 파이프라인 구성 및 작업 스크립트에서 사용할 수 있도록 제공한다.job1: stage: test script: - echo "The job's stage is '$CI_JOB_STAGE'"예를 들어 위 job 같은 경우..
[Shell Script] 스크립트에서 환경 변수가 적용되지 않는 경우 이번에 gitlab CI/CD를 수정하는 업무를 하면서 스크립트를 수정하는 과정에서 while 문 내부에서 정의한 환경 변수를 루프 외부에서도 사용하려고 하니 예상과 다르게 환경 변수값이 사라지는 문제가 발생했다. 이번 포스팅에선 해당 문제의 원인과 해결 방법에 대해 알아보고자 한다. 문제 상황다음과 같은 스크립트를 작성했다고 가정해보자.info="1234 **KEY1**5678 **KEY2**"echo "$info" | while read -r line; do if [[ $line =~ ([0-9]+)\ \*\*([A-Z]+)\*\* ]]; then export "${BASH_REMATCH[2]}=${BASH_REMATCH[..