yeke.io · dokümanlar

Air-gap kurulum

Ağınıza uygun kurulum yolunu seçin: Docker Hub’dan doğrudan indirme, iç registry veya tamamen çevrimdışı paket.

Üç yol, bir bakışta

İkisi zaten var olan mekanizmalar; üçüncüsü ayrı bir paket ister.

YolNe zaman
1. Normal kurulumKurulum anında internet erişimi olan (gerekiyorsa proxy/allowlist ile) çoğu kurum için. İmaj etiketleri doğrudan Docker Hub'dan çekilir.
2. İç registry aynasıKendi iç Docker registry'sini işleten kurumlar için. Paket gerektirmez, iki ortam değişkeniyle çalışır.
3. Tam çevrimdışı paketNadir. Ağı tamamen kapalı, elden teslim edilen kurulumlar için: imzalı, tek arşiv.

Yol 1: Normal kurulum

Bu sitenin kurulum sayfasının zaten anlattığı yol.

Kurulum sırasında internete erişebiliyorsanız imajları Docker Hub’dan çekin. Gerekirse şirket proxy’sini veya allowlist kullanın. Docker Compose ve Kubernetes manifestleri için ek registry ayarı gerekmez.

Yol 2: İç registry aynası

Kendi iç Docker registry'nizi işletiyorsanız, iki ortam değişkeniyle.

Agent ve toolbox imajlarını önce iç registry’ye yükleyin. Ardından YEKE_AGENT_IMAGE ve YEKE_TOOLBOX_IMAGE değerlerini bu adreslerle ayarlayın. YEKE, agent manifestinde ve Shell oturumlarında bu imajları kullanır. Değerler boşsa Docker Hub kullanılır; ayrı bir paket gerekmez.

# nairotech/yeke-agent deposunda
docker buildx build --platform linux/amd64,linux/arm64 \
  -t registry.ic.ornek.com/yeke-agent:0.51.2 --push .

# apps/toolbox altında
docker buildx build --platform linux/amd64,linux/arm64 \
  -t registry.ic.ornek.com/yeke-toolbox:v3 --push .

docker-compose'ta core servisinin environment: bloğuna ekleyin; dosya bu iki satırı varsayılan olarak taşımaz, isteğe bağlı elle eklenen satırlardır:

    environment:
      YEKE_AGENT_IMAGE: registry.ic.ornek.com/yeke-agent:0.51.2
      YEKE_TOOLBOX_IMAGE: registry.ic.ornek.com/yeke-toolbox:v3

Kubernetes'te aynı iki değişkeni deploy/kubernetes/02-core-deployment.yamlin env: listesine ekleyin; mekanizma aynı, yalnızca dosya biçimi farklı. core'un kendi imajı bu yoldan etkilenmez; hâlâ normal docker pull/imagePullPolicy: Always ile çekilir, yalnız agent/toolbox'ın nereden çekildiği değişir.

En sık atlanan adım

Core'un kendi konumu, agent/toolbox'ın konumuyla karıştırılıyor.

Core tek makinede koşsa bile agent ve toolbox imajları cluster'ın erişebildiği bir registry'de durmalı

Agent ve toolbox imajlarını YEKE sunucusu değil, hedef cluster’ın node’ları çeker. Core tek makinede çalışsa da imajlar bu node’ların erişebildiği bir registry’de olmalıdır. İmajları yüklemez veya adreslerini ayarlamazsanız agent kurulumu ya da Shell açılışı ImagePullBackOff hatasıyla durabilir.

Yol 3: Tam çevrimdışı paket

Nadir. Ağı tamamen kapalı ve kurulumun elden (fiziksel bir dosyayla) teslim edildiği kurumlar içindir; çoğu kurum ya doğrudan internete ya da kendi iç aynasına erişebildiği için yol 1 ya da yol 2 yeterlidir.

yeke-airgap-<sürüm>.tar tek bir arşivdir ve yayınlanmış imajlardan türetilir — yerel bir yeniden derleme değil, paketin taşıdığı bayt yayının doğruladığı bayttır.

ParçaNe
images/core+agent+toolbox, Kubernetes yolu için çok-mimarili OCI arşivi; compose yolu için core'un tek-mimari docker load biçimi (varsayılan yalnız amd64).
cli/Tek dosyalık yeke CLI'ı ve yeke-migrate bundle'ı.
deploy/compose + Kubernetes manifestleri, imaj alanları bu sürüme sabitli, registry adı yer tutuculu.
docs/INSTALL.md, UPGRADE.mdKurulum ve yükseltme adımları: İngilizce, okuyucusu müşteri operatörüdür.
SHA256SUMS + .sigEd25519 imza, lisans anahtarından ayrı, satıcının yayın anahtarıyla.

Doğrulama — kurulumdan önce

Paket imzası, arşivin yayıncıdan geldiğini doğrular; lisans anahtarından ayrıdır. Paketteki public key’i yayıncının ayrı bir kanalda paylaştığı anahtarla karşılaştırın. Yalnızca arşivin içindeki anahtara güvenmeyin.

sha256sum -c SHA256SUMS
openssl pkeyutl -verify -pubin -inkey release-public.pem \
  -rawin -in SHA256SUMS -sigfile SHA256SUMS.sig

Kurulum — tek makine (compose)

Core imajı doğrudan yerel Docker daemon'ına yüklenir; iç registry ya da skopeo gerekmez:

docker load < images/yeke-<sürüm>-amd64.docker.tar   # ya da …-arm64.docker.tar

Bu yükleme sonrasında bile yukarıdaki uyarı geçerlidir: agent ve toolbox imajlarını iç registry'nize skopeo copy ile göndermeniz gerekir (aşağıdaki Kubernetes bölümündeki komutlar).

Kurulum — Kubernetes (kalıcı cluster)

Kubernetes node'ları bir tar dosyasını değil registry'yi çeker; imajları önce iç registry'nize yüklersiniz:

REGISTRY=registry.internal.ornek.com

# core'un kendisi de Kubernetes'te koşacaksa (compose yolunda gerekmez):
skopeo copy --multi-arch all \
  oci-archive:images/yeke-<sürüm>.oci.tar \
  docker://$REGISTRY/yeke:<sürüm>

# her kurulumda gerekli:
skopeo copy --multi-arch all \
  oci-archive:images/yeke-agent-<sürüm>.oci.tar \
  docker://$REGISTRY/yeke-agent:<sürüm>

skopeo copy --multi-arch all \
  oci-archive:images/yeke-toolbox-<etiket>.oci.tar \
  docker://$REGISTRY/yeke-toolbox:<etiket>

Mimari seçimi

Paket, satış anında hazırlanan ve elden teslim edilen bir süreçtir — müşterinin makine mimarisi paketleme anında genellikle zaten bilinir. Bu yüzden varsayılan paket yalnız amd64 taşır; arm64 ya da her ikisi de gerekiyorsa paket --arch arm64 / --arch both ile yeniden üretilir. Kubernetes yolunun çok-mimarili OCI arşivi bu seçimden etkilenmez — cluster node'ları karışık mimarili olabileceği için o arşiv her zaman iki mimariyi birden taşır.

Sınırlar

Hiçbir adımda dış ağa çıkılmaz.

  • Lisans doğrulaması tamamen çevrimdışıdır. Ürün lisans için hiçbir dış adrese bağlanmaz.
  • Paket nadiren gerekir. Kabul turu (gerçek bir ağsız makinede uçtan uca kurulum) her sürümde değil, paketleme mekanizması değiştiğinde koşulur.
  • toolbox'ın imaj içinde yeniden derlenmesi desteklenmez. Paket hazır imajı taşır; müşteri kendi tarafında derleme yapmaz.
  • Yükseltme de aynı paketin yeni sürümünü ister. Elle imaj oluşturma ya da parça parça güncelleme desteklenmez.
  • Kurumun kendi CA'sıyla imzalı bir core sertifikası kullanıyorsanız agent, Shell ve CLI'nin buna güvenmesi ayrı bir adımdır — Kurum içi CA sayfasına bakın.

Kurulumdan sonra veritabanı büyürse

Ağdan kopuk bir kurulum da PostgreSQL'e taşınabilir; yol aynı yeke-migrate aracıdır.