시스템 68

[GitHub Actions] 온디맨드 Self-Hosted Runner 구축 방안 ( 필요할때만 컴퓨팅 자원 사용)

배경 : GitHub Actions의 Self-Hosted Runner를 상시 또는 고정 스케줄(예: 07시 ~ 24시)로 가동하면, 실제 빌드할때만 사용이 되어, 나머지 유휴 시간의 비용이 계속 발생합니다.물론 낮은사양의 EC2를 켜두거나, AWS EventBridge Scheduler를 사용하여 특정시간에만 동작하는것도 방법입니다. (지난번 포스팅 참조)이번에는 아예 필요할때만 동작하는 방안에 대해 작성하였습니다.목적 : 빌드가 있을 때만 러너 머신을 자동으로 기동하고, 잡이 끝나면 스스로 종료되도록 구성하여 유휴 비용을 제거합니다.본 문서에서는 AWS EC2, GCP GCE, On-Premise 각각의 구축 방안을 정리합니다. 1. 개요온디맨드 방식은 어떤 플랫폼이든 아래 세 가지 원리로 동작합니다..

시스템 2026.07.26

Docker Homepage으로 나만의 서비스 대시보드 구성하기

여러 서버와 사이드 프로젝트의 접속 주소를 한곳에서 관리하기 위해 Homepage를 Docker로 설치하고, Nginx Reverse Proxy와 Basic Authentication을 적용하여 외부에서도 안전하게 접근할 수 있도록 구성하였습니다.홈 서버와 개인 프로젝트를 운영하다 보면 접속해야 할 주소가 계속 늘어납니다.Portainer, Grafana, Proxmox VE 같은 인프라 관리 도구부터 Home Assistant, Synology NAS, n8n, Jupyter Notebook, 직접 만든 사이드 프로젝트까지 각각의 URL을 기억하거나 브라우저 즐겨찾기에서 찾는 것이 점점 불편해졌습니다.이를 한 화면에 정리하기 위해 오픈소스 애플리케이션 대시보드인 Homepage를 설치하였습니다.구성한 ..

시스템 2026.07.21

Web SSH Portal

사이드 프로젝트로 SSH 웹 포털을 만들었습니다.홈서버와 클라우드 서버, 도커가 점점 늘어나면서, 매번 터미널 앱 켜고 접속 정보 찾는 게 귀찮아 졌습니다.정확히는 한차례의 소동때문이었는데, 테슬라메이트 잘 쓰다가, 갑자기 안되어서 보니 업데이트로 방식이 바뀌었고 3주나 데이터를 못받았습니다.그래서 접속정보를 찾는데, 한서버가 뚫리면 다 뚫리는걸 방지 한다고 서버마다 id, password를 다르게 했고, 키파일은 또 데스크탑에다가만 넣는데, 지금 육아때문에 데탑을 저기 저 구석에 넣어놓은지라 접속하는데 한 세월이 걸렸네요 ㅠㅠ그래서 브라우저에서 바로 SSH 접속할 수 있는 걸 만들기로 했습니다.Antigravity를 사용하여 개발을 진행했습니다.동작화면은 아래와 같습니다. 메인화면 서버 리스트 확인..

Github Runner - EC2 Self-Hosted Runner 설정

개요GitHub Actions는 무료 플랜 기준 월 2,000분의 러너 실행 시간을 제공합니다. 최근 AI 활용을 비롯한 빌드 파이프라인 사용량 증가로 인해 제공량이 조기 소진됨에 따라, 유료 플랜 전환 대신 비용 효율적인 대안으로 AWS EC2 기반의 Self-Hosted Runner를 구축하고자 합니다.본 문서에서는 AWS EC2를 GitHub Actions Runner로 등록하여 빌드 및 컴파일 작업을 EC2 인프라에서 처리하는 방법을 다룹니다. 특히 인프라 운영 비용을 최소화하기 위해 아래 두 가지 방안을 비교 및 정리했습니다.AWS EC2 온디맨드(On-Demand) 인스턴스를 활용한 기본 구성AWS EC2 스팟(Spot) 인스턴스 + AWS EventBridge Scheduler 조합을 통해 ..

시스템 2026.06.30

MacBook 배터리 보호 유틸 - bat-charge-gi

MacBook 배터리를 지켜주는 무료 오픈소스 배터리 매니저 bat-charge-gi는 MacBook의 배터리 수명을 극대화하기 위해 만들어진 무료 오픈소스 앱입니다.완충, 완방을 하지 않기 위해 원하는 충전%까지 제한하기, 배터리 재교정, 마이크로 충전 방지를 위한 보존모드를 지원합니다.누구나 검증하고 기여할 수 있습니다.다운로드는 아래 주소에서 github : https://github.com/SeongGi/bat-charge-gi GitHub - SeongGi/bat-charge-gi: MacBook 배터리 보호 유틸리티MacBook 배터리 보호 유틸리티. Contribute to SeongGi/bat-charge-gi development by creating an account on GitHub..

Notion, UpNote에서 작성하고, 엔터 한 번에 티스토리 글 발행하기

Notion과 UpNote에서 편하게 작성한 마크다운 문서와 이미지를 티스토리(Tistory)에 원클릭으로 자동 업로드하는 도구입니다. Notion, Upnote에서는 편하게 문서를 작성할 수 있습니다.다만, 이를 다른 플랫폼으로 작성하기 위해서는 단순 복사 붙여넣기로는 템플릿이 깨지기도 하고이미지는 또한 자동업로드가 안되어 불편했습니다. 내보내기 기능을 통해 마크다운으로 글과 이미지를 내보낸 후 이 도구를 실행하면, 자동으로 에디터에 업로드를 할 수 있습니다. 다운로드 주소 : https://github.com/SeongGi/notion-upnote-to-tistory GitHub - SeongGi/notion-upnote-to-tistoryContribute to SeongGi/notion-upnot..

Synology NAS (시놀로지)에 테슬라메이트 설치하기

Teslamate는 테슬라의 정보를 수집하여, DB에 저장 후 Grafana (다양한 데이터 소스를 연결해서 시각화 하고 모니터링할 수 있는 도구)를 통해 보여주는 도구 입니다.보통 NAS인 시놀로지나, 라즈베리파이에서 설치 후 운영을 많이 합니다.관련된 자료들은 많지만, 외부에서 도메인을 통해 접근하는 방안은 못보아서 작성하게 되었습니다.이번 문서는 Synology NAS에 Container Manager를 이용하여 테슬라메이트를 설치하는 방안입니다.Synology는 이하 시놀로지로 표현합니다.Telsamate는 이하 테슬라메이트로 표현합니다.Container Manager 설치전에 시놀로지에서는 Docker 란 이름으로 지원하다가, Docker Compose를 지원하게 되면서 아예 이름을 바꾸었습니다..

시스템 2025.10.19

Reverse Proxy NPMplus (nginx-proxy-manager) 설치 가이드

Teslamate는 테슬라의 정보를 수집하여, DB에 저장 후 Grafana (다양한 데이터 소스를 연결해서 시각화 하고 모니터링할 수 있는 도구)를 통해 보여주는 도구 입니다. 보통 NAS인 시놀로지나, 라즈베리파이에서 설치 후 운영을 많이 합니다.관련된 자료들은 많지만, 외부에서 도메인을 통해 접근하는 방안은 못보아서 작성하게 되었습니다.nginx의 reverse proxy를 이용하여 도메인에 SSL인증서를 발급받아 https를 사용하여 자기 도메인으로 테슬라메이트를 접속할 수 있습니다.본 문서는 도메인을 통한 teslamate 설치 내용 중 reverse Proxy가 가능한 NPMplus(nginx-proxy-manager)설치 가이드 입니다. 사전 준비물 : 개인 도메인별도로 가비아, 호스팅케이..

시스템 2025.10.16

crontab 정상기동 확인 및 비정상시 조치 방법

가끔 crontab이 뻗는경우가 있는데, 다음과 같이 확인 해보고, 문제가 있으면 재실행을 해준다.일단 AIX기준이나, 디렉토리 위치만 틀리지 unix, linux 동일하다. 1. /var/adm/cron 디렉토리로 진입2. log파일을 tail -f로 확인 (tail -f log)3. 로그파일 확인-> queue max run limit메시지 발생하면, 재기동을 실행한다.4. ps -ef | grep -i cron으로 cron 프로세스 확인5. 해당 프로세스를 kill -9 pid(번호)로 종료6. 자동으로 재실행되며, tail -f log로 crontab 로그를 확인해본다.가끔 돌아가야할 작업들이 안돌아가고 있으면 한번씩 확인 필요

시스템/IBM-AIX 2025.02.10

2025년 Homelab 구성

2025년 프로젝트로 홈랩 환경을 다시 재구축 했다.큰맘먹고 기존 서버들 OS를 재설치했는데, 요즘 리눅스 설치가 너무 쉬워져서 오히려 당황스러웠음 분명 좋은 일이지만, 옛날 드라이버 적용부터 정말 설치만으로도 힘들었는데 뭔가 억울하기도 하고..특히 라즈베리파이는 이제 윈도우처럼 USB 설치 툴이 있어서 진짜 5분만에 뚝딱 이었다.덕분에 설치보다는 기술 구현에 더 집중할 수 있기는 했지만 Oracle Cloud와 GCP로 클라우드 환경을 구성하고, Ansible로 서버 관리를 일원화했다. 한방에 쭈루룩 명령을 내려서 수집, 수행을 할 수 있게혹시 모를 상황을 대비해 Oracle Cloud 서버에서 내부 홈 서버로 rsync로 백업 받도록 설정도 했고  메인서버에 MicroK8s를 설치하고 라즈베리파이들을..

시스템 2025.01.19
반응형