Skip to content

Latest commit

 

History

History
99 lines (77 loc) · 3.67 KB

File metadata and controls

99 lines (77 loc) · 3.67 KB
description
Semaphore installation overview

Install Prerequisites

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import Available from '@site/src/components/Available'; import VideoTutorial from '@site/src/components/VideoTutorial'; import Steps from '@site/src/components/Steps'; import FeatureNotAvailable from '@site/src/components/FeatureNotAvailable'; import { NiceButton, ButtonContainer } from '@site/src/components/NiceButton'; import { GKEIcon, EKSIcon, UbuntuIcon, GCPCompute, AWSEC2Icon } from '@site/src/components/CustomIcons';

This page shows an overview of the prerequisites and different methods to install Semaphore Community Edition on your systems. If you have any questions or issues during installation, you can get help in the official Semaphore Discord server.

Overview

A Semaphore CI/CD platform consists of two components:

  • Control plane: the control plane orchestrates jobs, serves the web application and public API, handles logging, manages permissions, and connects with your repositories. The control plane requires a Kubernetes cluster or a server running k3s.
  • Agents: the only purpose of an agent is to run jobs. The default Semaphore installation includes one agent that runs on the same cluster as the control plane. Agents connect to the control plane, waiting for jobs to be scheduled. See self-hosted agents to learn how to scale your Semaphore setup.

Semaphore architecture

Prerequisites

To install Semaphore, you need:

  • A DNS domain
  • The ability to create A, AAAA, or CNAME records for your domain
  • A Kubernetes cluster or a Ubuntu machine
    • Minumum hardware: 16 GB of RAM and 8 CPUs
  • Installation time
    • Ubuntu machine: 20 to 30 minutes
    • Kubernetes cluster: up to 1 hour

Choose your platform {#install-method}

You can install Semaphore on a single Linux/Ubuntu machine or in a Kubernetes cluster.

Each platform presents trade-off. Use the following table as a guide:

Facility Single-alone machine Kubernetes cluster
Backup and restore Simple Complex
Infraststructure costs Lower Higher
Scalability of control plane Low
Can only be scaled vertically with a more powerful machine.
High
Can be scaled horizontally and vertically.
Scalability of job runner (agents) High High
Redundancy None High
Availability Low
Server is single point of failure.
High
If a node goes down, Kubernetes can autoheal.

Single-machine installation

Kubernetes installation

See also