cncf / cncf/mentoring

[CNCF LFX Proposal] Harbor Habor-Satellite

Open
#1,999 22 comments 0 reactions 0 assignees View on GitHub
2026 Exported lfx mentorship Maintainer/Contribex Approved Mentors Confirmed Proposal Term 3: Sept-Nov Validation Passed
Dominant language
JavaScript
Stars
3.1k
Forks
816
Avg merge
12h 32m
Merged PRs (30d)
8

Description

### CNCF Project

Harbor

### Term

2026 Term 3 (Sep-Nov)

### Program Name

Air-Gapped Peer-to-Peer Image Proxying in Harbor-Satellite

### Program Description

## Description
Harbor Satellite makes OCI images and artifacts available at edge locations. In air-gapped or intermittently connected deployments, a Satellite that misses an artifact currently depends on a central registry, Ground Control, or manually imported offline media. This creates unnecessary operational work when another trusted Satellite on the same local network already has the required content.

This project will add an opt-in peer-to-peer distribution mode for Harbor Satellite. A Satellite will be able to use a configured set of trusted local peers, identify a peer that has a requested OCI artifact, and copy that artifact into its own local registry. The design must work without Internet or Ground Control connectivity and preserve OCI digest-based integrity verification.

## Expected outcomes

- An approved design/ADR covering architecture, trust model, failure modes, and compatibility with headless and air-gapped deployments.
- An opt-in configuration model for trusted peer endpoints, timeouts, retry policy, concurrency limits, and feature enablement.
- Peer selection and artifact-availability checks for OCI manifests and blobs.
- A peer-to-peer transfer path that imports requested artifacts into the local Satellite registry and verifies manifest and blob digests.
- Clear fallback behavior when no eligible peer is reachable.
- Metrics and structured logs for peer attempts, transfer outcomes, bytes transferred, and cache-fill results.
- Unit and integration tests, including a multi-Satellite air-gapped test environment demonstrating successful transfer and failure recovery.
- User and operator documentation, including configuration and troubleshooting.

### Technologies

Go, OCI Distribution Spec, OCI Image Spec, ORAS, go-containerregistry

### Skills same as Technologies?

- [x] Yes, the required skills are the same as the technologies listed above.

### Required/Desirable Skills

_No response_

### Mentors

Lakshit Singh | @NucleoFusion | lakshitsinghmail@gmail.com | nucleofusion
Orlin Vasilev | @OrlinVasilev | orlin@orlix.org | Orlix
Prasanth Baskar | @bupd | prasanth@8gears.com | bupd
Vadim Bauer | @Vad1mo | vb@container-registry.com | vad1mo

### Upstream Issue URL

https://github.com/container-registry/harbor-satellite/issues/542

### Application Prerequisites

- [x] Resume
- [x] Cover Letter
- [ ] School Enrollment Verification
- [ ] Participation Permission from school or employer
- [ ] Coding Challenge
- [ ] Custom Prerequisite (fill in details below)

### Coding Challenge URL

_No response_

### Custom Prerequisite Name

_No response_

### Custom Prerequisite Description

_No response_

### Custom Prerequisite — File Upload

- [ ] Yes — completion of this task requires the mentee to submit a file.

---
**LFX program:** [CNCF - Harbor: Air-Gapped Peer-to-Peer Image Proxying in Harbor-Satellite (2026 Term 3)](https://mentorship.lfx.linuxfoundation.org/project/65f18185-8b71-4b12-bccf-478a50896c16)

Contributor guide

Open the contributing guide

Research direction

Start with the upstream Harbor-Satellite issue 542 and review the proposal's expected outcomes. Done means an approved architecture and trust-model ADR, opt-in peer configuration and transfer behavior, digest verification, fallback handling, metrics, tests including an air-gapped multi-Satellite environment, and user documentation.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.