Skip to content

Commit 2429137

Browse files
Update harbor-satellite-proposal.md
1 parent d77d511 commit 2429137

File tree

1 file changed

+1
-17
lines changed

1 file changed

+1
-17
lines changed

proposals/new/harbor-satellite-proposal.md

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,14 @@ Authors: Vadim Bauer / [Vad1mo](https://github.com/Vad1mo), Csaba Almasi, Philip
66

77
## Abstract
88

9-
[A short summary of the proposal.]
10-
119
Harbor Satellite aims to bring Harbor container registries to edge locations, ensuring consistent, available, and integrity-checked images for edge computing environments. This proposal outlines the development of a stateful, standalone satellite that can function as a primary registry for edge locations and as a fallback option if the central Harbor registry is unavailable.
1210

1311
## Background
1412

15-
[An introduction of the necessary background and the problem being solved by the proposed change.]
16-
1713
In recent years, containers have extended beyond their traditional cloud environments, becoming increasingly prevalent in remote and edge computing contexts. These environments often lack reliable internet connectivity, posing significant challenges in managing and running containerized applications due to difficulties in fetching container images. To address this, the project aims to decentralize container registries, making them more accessible to edge devices. The need for a satellite that can operate independently, store images on disk, and run indefinitely with stored data is crucial for maintaining operations in areas with limited or no internet connectivity.
1814

1915
## Proposal
2016

21-
[A precise statement of the proposed change.]
22-
2317
The proposed change is to develop "Harbor Satellite", an extension to the existing Harbor container registry. This extension will enable the operation of decentralized registries on edge devices.
2418

2519
Harbor Satellite will synchronize with the central Harbor registry, when Internet connectivity permits it, allowing it to receive and store images. This will ensure that even in environments with limited or unreliable internet connectivity, containerized applications can still fetch their required images from the local Harbor Satellite.
@@ -28,14 +22,10 @@ Harbor Satellite will also include a toolset enabling the monitoring and managem
2822

2923
## Non-Goals
3024

31-
[Anything explicitly not covered by the proposed change.]
32-
33-
?
25+
T.B.D.
3426

3527
## Rationale
3628

37-
[A discussion of alternate approaches and the trade offs, advantages, and disadvantages of the specified approach.]
38-
3929
Deploying a complete Harbor instance on edge devices in poor/no coverage areas could prove problematic since :
4030

4131
- Harbor wasn't designed to run on edge devices.(e.g. Multiple processes, no unattended mode)
@@ -47,14 +37,10 @@ Harbor Satellite aims to be resilient, lightweight and will be able to keep func
4737

4838
## Compatibility
4939

50-
[A discussion of any compatibility issues that need to be considered]
51-
5240
Compatibility with all container registries or edge devices can't be guaranteed.
5341

5442
## Implementation
5543

56-
[A description of the steps in the implementation, who will do them, and when.]
57-
5844
Harbor Satellite will run in a single container and will be divided in the following components :
5945

6046
- **Satellite Core** : pulling/pushing images from/to Harbor (using go-libp2p?) and pulling/pushing images from/to the local registry (using Skopeo and/or Crane?).
@@ -66,8 +52,6 @@ Harbor Satellite will run in a single container and will be divided in the follo
6652

6753
## Open issues (if applicable)
6854

69-
[A discussion of issues relating to this proposal for which the author does not know the solution. This section may be omitted if there are none.]
70-
7155
Harbor Satellite aims to manage, coordinate and schedule containers using a Kubernetes cluster.
7256

7357
Harbor Satellite also aims to use and benefit from Spegel, a registry mirror designed to optimize the pulling of container images within a Kubernetes cluster.

0 commit comments

Comments
 (0)