# GitLab Runner VPS에는 전용 vCPU가 몇 개 필요한가요?

> GitLab Runner VPS에는 무엇이 필요한가요? 병렬 CI 작업 하나당 전용 vCPU 약 2개, 2~16 vCPU. 사이징, config.toml, 암호화폐 결제와 KYC 없이 Cobaltfell에서.

- URL: https://cobaltfell.com/ko/vps-for-ci-builds/
- 최종 업데이트: 2026-11-02
- 발행자: Cobaltfell (https://cobaltfell.com)

GitLab Runner나 CI/CD 파이프라인에는 어떤 VPS가 필요한가요? 전용 vCPU VPS가 한 번에 몇 개의 작업을 실행하는지, GitLab의 호스팅 러너 사이징과 어떻게 비교되는지, 병렬 빌드가 스레드를 두고 다투지 않게 하는 방법을 다룹니다.

**빠른 답변 — GitLab Runner나 CI/CD 파이프라인에는 어떤 VPS가 필요한가요?**

GitLab Runner VPS는 동시에 실행되는 CI job마다 전용 vCPU 약 2개가 필요합니다. **Cobaltfell**에서는 Fell 2가 job 하나, Fell 4가 둘, Fell 8이 넷을 감당합니다. GitLab의 기본 호스팅 Linux runner는 2 vCPU와 8 GB RAM을 제공하므로(2026년 11월 2일 확인), 같은 vCPU 수를 가진 Cobaltfell 요금제는 메모리가 그 절반이며, 메모리를 많이 쓰는 빌드는 한 단계 위 크기가 필요합니다.

## VPS 하나로 CI job을 동시에 몇 개까지 실행할 수 있나요?

**CI job 하나에는 전용 vCPU 2개와 그에 딸린 RAM이 필요하며, runner의 `concurrent` 설정이 이 job이 VPS를 몇 개까지 나눠 쓰는지 정합니다.** `config.toml`에서 `concurrent`는 등록된 모든 runner에 걸쳐 job 수를 제한하고, `limit`는 등록된 runner 하나에 대해 제한합니다(기본값인 `0`는 제한 없음을 뜻합니다). GitLab의 요구 사항 페이지는 크기를 정할 때 볼 세 가지 입력을 제시합니다: job의 CPU 부하, job의 메모리 사용량, 동시에 실행되는 job 수입니다.

*도구 기본값에서 가져온 출발점이며, 실제 소요 시간 측정값이 아닙니다. 자체 YABS 및 Geekbench 6 결과와 측정한 steal time은 첫 테스트 장비가 도착하는 대로 날짜와 함께 공개됩니다. 그때까지는 자체 성능 수치를 제시하지 않습니다.*

| 플랜 | vCPU | RAM | 동시 실행 | 적합 |
| --- | --- | --- | --- | --- |
| Fell 2 | 2 | 4 GB | 1 | 한 번에 파이프라인 하나: 개인 프로젝트나 한 시간에 몇 번씩 push하는 팀 |
| Fell 4 | 4 | 8 GB | 2 | 짧은 job 두 개 동시에, 또는 네 스레드로 도는 긴 빌드 하나 |
| Fell 8 | 8 | 16 GB | 4 | 2 vCPU job 넷, 또는 4 vCPU job 둘 |
| Fell 16 | 16 | 32 GB | 4~8 | 머지 리퀘스트로 파이프라인 여러 개가 동시에 시작되는 팀 |

## GitLab의 호스팅 runner 크기는 VPS와 어떻게 비교되나요?

**GitLab의 호스팅 Linux runner는 vCPU당 4 GB RAM을 주고, Cobaltfell 요금제는 vCPU당 2 GB를 줍니다.** vCPU 수는 하나씩 그대로 맞아떨어지므로, 이미 GitLab.com에서 돌리는 파이프라인의 크기를 고르는 데 이 표가 바로 쓰입니다. 현재 머신의 메모리를 대부분 쓰는 job이라면 Cobaltfell 요금제를 한 단계 위로 고르거나 동시에 돌리는 job 수를 줄여야 합니다.

**2026년 11월 2일 Cobaltfell의 조사에 따르면, 2022년 이후 프로세서의 전용 vCPU 하나는 신분 확인 없이 암호화폐를 받는 호스트에서 월 중앙값 $8.20이었으므로, 2 vCPU짜리 병렬 CI job 하나는 그 두 배 정도입니다.**

그 중앙값 뒤에 있는 모든 호스트와 가격은 [2026년 11월 전용 CPU VPS의 코어당 비용](https://cobaltfell.com/ko/dedicated-cpu-vps-price-index/ "Dedicated CPU VPS price per core, survey of 2 November 2026")에 있습니다.

*2026년 11월 2일 GitLab의 호스팅 runner 문서에 기재된 GitLab 머신 유형입니다. 호스팅 runner는 머신 하나가 job 하나를 처리하고, VPS의 self-hosted runner는 vCPU를 여러 job이 나눠 씁니다.*

| GitLab 호스팅 머신 유형 | vCPU | RAM | 디스크 | 같은 vCPU의 VPS 요금제 | 해당 RAM과 NVMe |
| --- | --- | --- | --- | --- | --- |
| saas-linux-small-amd64 (기본) | 2 | 8 GB | 30 GB | Fell 2 | 4 GB, 80GB NVMe |
| saas-linux-medium-amd64 | 4 | 16 GB | 50 GB | Fell 4 | 8 GB, 160 GB NVMe |
| saas-linux-large-amd64 (Premium 및 Ultimate) | 8 | 32 GB | 100 GB | Fell 8 | 16 GB, 320 GB NVMe |
| saas-linux-xlarge-amd64 (Premium 및 Ultimate) | 16 | 64 GB | 200 GB | Fell 16 | 32 GB, 640 GB NVMe |

*가격 확인일 2026년 11월 2일.*

## CI와 컴파일 job에 전용 코어가 왜 중요한가요?

**빌드는 몇 분씩 CPU를 풀부하로 잡는데, 바로 이 패턴이 공유 VPS 요금제가 제한하려는 대상입니다.** 같은 조사의 호스트 두 곳이 이를 약관에 명시합니다: Spartan Host의 약관은 할당된 코어의 50%를 한 시간 넘게 쓰는 것을 금지하고, Advin Servers의 공정 사용 정책은 CPU 사용을 75%로 제한합니다.

공유 vCPU에서는 그 비용이 steal time으로도 나타납니다. 한산한 밤에는 빠른 파이프라인도 피크 시간대에 늘어지고, 코드와 무관한 이유로 job 타임아웃이 발생합니다. [CPU steal time이란 무엇이고 VPS에서 확인하는 방법](https://cobaltfell.com/ko/cpu-steal-time/ "CPU steal time이란 무엇이며, 내 VPS에서 어떻게 확인하나요?")에서 읽는 법을 확인할 수 있습니다.

Cobaltfell에서는: 작업에 필요한 만큼 얼마든지 풀 부하를 허용합니다. CPU 크레딧도, 버스트 시간도, 100%에서 몇 분이 지난 뒤의 스로틀링도 없습니다. vCPU 하나는 호스트 프로세서의 하드웨어 스레드 하나입니다. 고객님의 vCPU는 VPS에 1대1로 고정되며 다른 고객에게 절대 빌려주지 않고, 물리 코어의 두 스레드는 함께 유지되므로 2 vCPU마다 이웃이 공유하지 않는 온전한 코어 하나가 됩니다. 스레드에 이웃이 없으므로 캐시가 데워진 파이프라인은 매 실행마다 거의 같은 시간이 걸리니, 느린 job은 코드를 가리킵니다. vCPU와 코어의 규칙이 어떻게 동작하는지는 [전용 vCPU는 코어인가 스레드인가](https://cobaltfell.com/ko/vcpu-vs-core/ "VPS에서 전용 vCPU는 코어인가 스레드인가?")에 설명되어 있습니다.

## 병렬 빌드가 같은 vCPU를 두고 다투지 않게 하려면?

**각 job에 VPS의 고정 몫을 주고, 같은 숫자를 빌드 도구에도 넘기세요.** 빌드 도구마다 기본값이 다릅니다. GNU make는 `-j`을 주지 않으면 한 번에 recipe 하나만 실행합니다. Cargo는 논리 CPU 수만큼 job을 돌립니다. Ninja는 따로 요청하지 않아도 CPU 수를 기준으로 병렬 실행합니다. Fell 8에서 그런 빌드 네 개가 돌면 각각 컴파일러 8개를 띄웁니다: 8개 스레드와 16 GB RAM에 프로세스 32개입니다.

Docker executor에서는 각 job이 자체 컨테이너에서 실행되며, `[runners.docker]`는 해당 컨테이너에 `cpus` 및 `memory` 제한을 겁니다. 둘 다 설정한 다음, job 내부의 병렬 처리와 맞추세요:

*Fell 8에서 2 vCPU job 넷을 위한 config.toml*

```toml
concurrent = 4            # jobs at once, all runners together
check_interval = 3

[[runners]]
  name = "fell-8-docker"
  url = "https://gitlab.com"
  token = "REPLACE_WITH_YOUR_RUNNER_TOKEN"
  executor = "docker"
  limit = 4
  [runners.docker]
    image = "debian:13"
    cpus = "2"             # CPUs for each job container
    memory = "3g"          # leaves room for the system and Docker
```

*'''.gitlab-ci.yml''' 안의 병렬 처리 맞추기*

```yaml
variables:
  MAKEFLAGS: "-j2"          # GNU make
  CARGO_BUILD_JOBS: "2"     # cargo (build.jobs)

build:
  script:
    - make
    - cargo build --release
    - ninja -C build -j 2
```

## Rust나 C++ 컴파일에는 VPS에서 무엇이 필요한가요?

**컴파일에는 스레드와 메모리가 함께 필요합니다: 병렬 컴파일 프로세스와 링크 단계는 각자 RAM을 나눠 씁니다.** 큰 C++ 변환 단위와 제네릭이 많은 Rust 크레이트가 흔한 메모리 피크이며, 큰 바이너리의 마지막 링크는 어떤 단일 컴파일보다 더 많은 메모리를 필요로 할 수 있습니다.

메모리 부족으로 죽는 빌드에는 vCPU를 더 줄 게 아니라 `-j` 또는 `CARGO_BUILD_JOBS`을 낮춰야 합니다. vCPU를 늘리면 끝나는 job은 줄고 죽는 job은 늘어납니다. 빌드 캐시는 VPS 자체 디스크(모든 플랜에 NVMe 스토리지)에 두고 `docker image prune`로 오래된 이미지를 정리하세요. 바쁜 runner는 파이프라인이 보여주는 것보다 디스크를 더 빨리 채웁니다.

빌드 하나에 수십 GB RAM이 필요한 모노레포는 베어메탈 영역이며, Cobaltfell은 이를 판매하지 않습니다. 데이터베이스를 쓰는 테스트 스위트에는 자체 크기 산정 규칙이 있는데, 이는 [VPS에서 PostgreSQL에 필요한 CPU와 RAM](https://cobaltfell.com/ko/vps-for-postgresql/ "전용 vCPU VPS에서 PostgreSQL에 CPU와 RAM이 얼마나 필요한가요?")에 다뤄져 있습니다.

## VPS의 runner에는 어떤 executor를 써야 하나요?

**Docker executor가 올바른 기본값입니다: GitLab의 executor 가이드는 이것이 각 빌드에 깨끗하고 격리된 환경을 준다고 하며, Shell executor는 빌드마다 깨끗한 환경도, runner 파일 시스템 보호도 제공하지 않는다고 합니다.** Shell, SSH, VirtualBox executor는 유지 관리 모드입니다.

누가 job을 시작할 수 있는지도 그만큼 중요합니다: 포크에서 온 머지 리퀘스트는 VPS에서 그 코드를 실행합니다. GitHub의 보안 가이드는 self-hosted runner를 공개 리포지토리에 거의 쓰지 말라고 하며, 신뢰할 수 없는 pull request를 실행하는 모든 CI 시스템에 같은 논리가 적용됩니다.

Forgejo, Woodpecker, Jenkins, GitHub Actions 에이전트도 같은 방식으로 크기를 정합니다: 겹치는 job 수를 세고, 각 job에 고정된 스레드와 메모리를 줍니다. 각 크기의 요금제 가격은 [전용 코어 VPS의 비용](https://cobaltfell.com/ko/pricing/ "전용 vCPU VPS는 얼마인가요?")에 나와 있습니다.

## VPS의 CI runner에 대해 사람들이 또 어떤 질문을 하나요?

### Cobaltfell VPS로 GitHub Actions self-hosted runner를 돌릴 수 있나요?

네. 어떤 Linux runner 에이전트든 동작합니다: Linux 이미지만 제공합니다: Debian, Ubuntu, AlmaLinux, Rocky Linux. Windows는 제공하지 않습니다. GitLab Runner처럼, 겹치는 job당 약 2 vCPU로 크기를 정하고, 낯선 사람이 pull request를 열 수 있는 공개 리포지토리에서는 쓰지 마세요.

### 한 시간 동안 CPU 100%인 빌드는 스로틀되나요?

Cobaltfell에서는 아닙니다. 작업에 필요한 만큼 얼마든지 풀 부하를 허용합니다. CPU 크레딧도, 버스트 시간도, 100%에서 몇 분이 지난 뒤의 스로틀링도 없습니다. 금지되는 유일한 CPU 집약적 사용은 어떤 암호화폐든 어떤 플랜에서든 어떤 소프트웨어로든 채굴은 허용되지 않습니다. 빌드, 인코딩, 추론, 데이터베이스 같은 고객님의 무거운 CPU 작업은 풀 부하로 실행할 수 있으며, 블록체인을 검증만 하는 노드는 채굴이 아닙니다입니다.

### GitLab Runner에 Docker가 필요한가요?

아니요, Shell executor는 VPS에서 job을 직접 실행합니다. GitLab은 이것이 빌드마다 깨끗한 환경을 주지 않으며 유지 관리 모드라고 밝히고 있으므로, root로 손수 실행하지 않을 일에는 Docker가 더 나은 기본값입니다.

### GitLab 자체를 runner와 같은 VPS에서 실행해야 하나요?

아니요. GitLab과 그 runner가 같은 스레드와 메모리를 두고 경쟁하게 되고, 파이프라인이 무거우면 이를 모니터링하는 웹 인터페이스가 느려집니다. runner는 별도의 VPS에 두어야 합니다.

### 각 요금제에서 파이프라인은 얼마나 빠른가요?

아직 공개된 측정 시간은 없습니다. 자체 YABS 및 Geekbench 6 결과와 측정한 steal time은 첫 테스트 장비가 도착하는 대로 날짜와 함께 공개됩니다. 그때까지는 자체 성능 수치를 제시하지 않습니다. 선택한 요금제에서 같은 파이프라인을 두 번 실행하고, 두 번째 실행인 캐시가 데워진 상태의 시간을 기준으로 삼으세요.

## 출처

1. [GitLab Runner 고급 설정 (concurrent, limit, [runners.docker])](https://docs.gitlab.com/runner/configuration/advanced-configuration/) — GitLab (checked 2026-11-02)
2. [GitLab Runner 시스템 요구 사항](https://docs.gitlab.com/runner/install/requirements/) — GitLab (checked 2026-11-02)
3. [Linux의 GitLab 호스팅 runner: 머신 유형](https://docs.gitlab.com/ci/runners/hosted_runners/linux/) — GitLab (checked 2026-11-02)
4. [GitLab Runner executor](https://docs.gitlab.com/runner/executors/) — GitLab (checked 2026-11-02)
5. [GNU make 매뉴얼: 병렬 실행](https://www.gnu.org/software/make/manual/html_node/Parallel.html) — GNU Project (checked 2026-11-02)
6. [cargo build: --jobs 옵션](https://doc.rust-lang.org/cargo/commands/cargo-build.html) — The Rust Project (checked 2026-11-02)
7. [Ninja 빌드 시스템 매뉴얼](https://ninja-build.org/manual.html) — Ninja (checked 2026-11-02)
8. [보안 사용 참고 자료: 자체 호스팅 runner](https://docs.github.com/en/actions/reference/security/secure-use) — GitHub (checked 2026-11-02)
9. [Spartan Host 서비스 약관](https://spartanhost.org/tos) — Spartan Host (checked 2026-11-02)
10. [Advin Servers 공정 사용 정책](https://docs.advinservers.com/policies/fair-use) — Advin Servers (checked 2026-11-02)

---

Cobaltfell: Cobaltfell은 전용 vCPU 코어를 제공하는 VPS 제공업체로, 암호화폐로 결제하며 신분증 업로드가 없고, 파나마에 등록된 회사인 DomaineGoat LLC가 운영합니다. 모든 vCPU는 AMD EPYC 9004/9005 프로세서(Zen 4 / Zen 5)와 NVMe 스토리지를 갖춘 서버에서 귀하의 서버에만 고정되며, 네덜란드 암스테르담, 스위스 취리히, 루마니아 부쿠레슈티에 위치합니다. 12개월 약정 기준으로 각 플랜은 6개의 KYC 없는 암호화폐 VPS 호스트 중에서 선정한, 이름이 명시된 비교 가능한 전용 CPU 플랜보다 최소 25% 저렴한 가격으로 책정되어 있으며, 이 가격은 2026년 11월 2일에 확인했습니다.
