Hakkında

Bu sayfa, kendi ev ortamımda kurduğum kişisel HomeLab altyapısını ve self-hosted servislerimi teknik olarak belgelemek amacıyla hazırlanmıştır.
Ticari bulut hizmetlerinin maliyeti ve yerel internet kısıtları nedeniyle verilerimi yerelde, kontrollü ve yedekli biçimde barındırmayı tercih ediyorum.

Donanım altyapım, hem Raspberry Pi tabanlı hafif sunucu bileşenlerinden hem de RAIDZ1 yapılandırmalı TrueNAS sisteminden oluşmaktadır.
Ayrıca bu web sitesi, Natro üzerinden yönetilen alan adım kullanılarak, Netcup’ın Viyana veri merkezindeki Debian 13 tabanlı sunucuda barındırılmakta olup; tüm trafik Caddy reverse proxy aracılığıyla yönlendirilmekte ve güvenli şekilde sunulmaktadır.

Tüm bu yapı, öğrenmeye ve yeni teknolojileri test etmeye açık bir geliştirme alanı sunarken, veri güvenliğinden performansa kadar çeşitli senaryoların pratikte denenmesine de imkân tanır.

Bu HomeLab, tamamen kişisel kullanım amacıyla tasarlanmıştır ve zamanla OPNsense tabanlı bir firewall çözümü, Proxmox sanallaştırma altyapısı ve fiziksel rack düzeni gibi yeni bileşenlerle daha güvenli, esnek ve sürdürülebilir hale getirilecektir.

Donanım

Raspberry Pi Sunucusu

  • Model: Raspberry Pi 5 8GB
    • İşlemci: Broadcom BCM2712, 2.4GHz dört çekirdekli 64-bit Arm Cortex-A76 CPU (512KB L2, 2MB L3 cache)
    • Grafik İşlemci: VideoCore VII GPU, OpenGL ES 3.1 ve Vulkan 1.2 desteği
    • Bellek: 8GB LPDDR4X-4267 SDRAM
    • Ağ: Gigabit Ethernet, dual-band 802.11ac Wi-Fi, Bluetooth 5.0 / BLE
    • Depolama: microSD kart yuvası (SDR104 mod desteği)
  • Depolama Kartı: 1TB TEAMGROUP GO MicroSDXC
  • Soğutma: Raspberry Pi Active Cooler
  • Kasa: 3D Baskı Kasa (Thingiverse) — 3D baskı hizmeti ile üretildi.
  • Bağlantı: Ethernet üzerinden yerel ağa bağlı.

Raspberry Pi sunucusu, düşük güç tüketimi gerektiren servisleri çalıştırmak için kullanılmaktadır.


Ağ Anahtarı (Switch)

Raspberry Pi Sunucusu ve Switch

TrueNAS Sunucusu

  • Kasa & Bileşenler:

    • Anakart: Biostar B560MX/E Pro (DDR4 4000, LGA1200)
    • İşlemci: Intel Core i5-11600K @ 3.9GHz, 6 çekirdek / 12 thread
    • Grafik Birimi: Dahili Intel UHD Graphics 750 (iGPU)
    • RAM: 80GB DDR4 (2 × 8GB + 2 × 32GB)
    • Depolama:
      • Ana havuz: 3 × 6TB HDD (RAIDZ1 konfigürasyonu, toplam ~12TB kullanılabilir alan)
      • Önyükleme disk: 465GB NVMe SSD
  • Ağ Bağlantısı:

    • Gigabit Ethernet bağlantısı
    • Yerel ağda sabit IP üzerinden yönetim
    • Aynı switch üzerinden diğer cihazlarla bağlantı
  • Yapı:

    • İşletim Sistemi: TrueNAS SCALE 25.04
    • Dosya Sistemi: ZFS (mainpool & boot-pool)
    • Yönetim: Web arayüzü + SSH

TrueNAS, açık kaynaklı bir NAS (ağ bağlı depolama) çözümüdür ve veri güvenliği için ZFS dosya sistemi kullanır. ZFS, bütünlük denetimi, anlık görüntüler (snapshot) ve kolay ölçeklenebilirlik gibi özellikler sunarak veri kaybı riskini minimize eder. RAIDZ1, en az üç diskin birlikte çalıştığı bir RAID seviyesidir ve tek disk arızasına karşı veri koruması sağlar. Bu yapı, performans ve veri güvenliğini dengelerken depolama kapasitesini de verimli kullanmaya olanak tanır. TrueNAS, kullanıcı dostu web arayüzü sayesinde tüm yapılandırma ve yönetim işlemlerini kolayca yapmayı mümkün kılar.

TrueNAS Sunucusu

Kiralık Bulut Sunucusu (Viyana / Netcup)

  • Konum: Viyana, Avusturya (Netcup Veri Merkezi)
  • İşlemci: AMD EPYC 7282 (Rome) – 8 vCPU
  • RAM: 16GB DDR4
  • Disk: 512GB NVMe SSD
  • Ağ: 2.5 Gbit paylaşımlı hat
  • Yapı: Debian 13 (Stable) üzerinde Docker + Docker Compose mimarisi

Bu sunucu üzerinde tüm servisler Docker Compose üzerinden yönetilmektedir.
Portföy web sitesi, Caddy reverse proxy aracılığıyla yayına alınmakta; CouchDB, Webtop, Filebrowser ve diğer uygulamalar konteyner tabanlı olarak çalışmaktadır.

Ayrıca tüm docker klasörü içerisindeki yapılandırma ve veri klasörleri, evdeki TrueNAS SCALE sunucusuna günlük olarak rclone ile tek yönlü yedeklenmektedir.
Böylece sunucu tarafında herhangi bir arıza yaşanması durumunda dahi bütün yapılandırmalar ve veriler güvenli bir şekilde saklanmış olmaktadır.

Daha Basit ve Konteyner Tabanlı Bir Mimariye Geçiş

Önceki çok katmanlı yapı — kiralık bir Proxmox sunucusu üzerinde nested virtualization, OpenVRT ve Windows tabanlı bir sanal makine kullanılarak oluşturulmuştu. Bu dönem, Proxmox, hipervizör yönetimi ve pratik network konularında bana önemli bir tecrübe kazandırdı. Ancak bu mimari uzun vadede sürdürülebilir bir yapı sunmadığından, artık tüm servislerin Docker + Docker Compose ile yönetildiği tek sunuculu, sade ve modern bir konteyner mimarisine geçildi. Bu sayede yeni bir servis eklemek sadece Compose dosyasına tanım eklemek ve Caddy üzerinde yönlendirme yapmak kadar kolay hale geldi.

  • Yeni mimarinin tam bir kopyası önce lokal ortamda aozturk.test DNS yönlendirmeleriyle test edildi.
  • Testlerin başarılı olmasının ardından Netcup üzerinde yeni sunucu oluşturuldu ve aynı Compose tabanlı yapı burada yeniden kuruldu.
  • Tüm yapılandırmalar, veri klasörleri ve volümler yeni sunucuya taşındı.
  • Her şey doğrulandıktan sonra DNS kayıtları güncellenerek trafik sorunsuz şekilde yeni üretim sunucusuna yönlendirildi.

Yazılım & Servisler

TrueNAS SCALE (katalog uygulamaları)

ServisKısa Açıklama (Kullanım)
BazarrAltyazı otomasyonu (Radarr/Sonarr ile entegre)
CollaboraNextcloud ile çevrim-içi Office/WYSIWYG düzenleme
ConvertXVideo dönüştürme/arşiv transkod servisi
DashdotSunucu donanım & disk sağlık panosu
FlareSolverrCaptcha / Cloudflare bypass proxy
HomarrKişiselleştirilmiş başlangıç paneli / dashboard
HomeboxVarlık-envanter yönetimi (donanım, lisans vb.)
JellyfinYerel medya (film-dizi) akış sunucusu
NetbootXYZAğ üzerinden ISO/OS kurulum (PXE boot)
NextcloudKişisel bulut dosya & takvim senkronizasyonu
Open-Speed-TestLAN/WAN hız testi aracı
ProwlarrTorrent/usenet indexer yöneticisi
qBittorrentWeb arayüzlü torrent istemcisi
RadarrOtomatik film indirme yöneticisi
SonarrOtomatik dizi indirme yöneticisi

Raspberry Pi (Docker / Portainer konteynerleri)

ServisKısa Açıklama (Kullanım)
PortainerDocker ortamı görsel yönetim paneli
HeimdallBasit link-başlatıcı ana sayfa / uygulama hub
RedmineProje & issue takip (Ruby on Rails)
WG-EasyHızlı WireGuard VPN sunucusu kurulumu
pi-dbMariaDB tabanlı küçük veritabanı servisi
SCM-ManagerHafif Git/Mercurial/Subversion sunucusu
WOLwebWake-on-LAN web arabirimi
qBittorrentİkinci/takip torrent istemcisi
WatchtowerDocker konteynerlerini otomatik güncelleme

Kiralık Sunucu Üzerindeki Servisler (Viyana / Netcup)

ServisKısa Açıklama
Debian 13Tüm altyapının üzerinde çalıştığı ana işletim sistemi
CaddyReverse proxy ve otomatik SSL yönetimi
CouchDBObsidian notlarının LiveSync ile eşitlenmesi
WebtopTarayıcı üzerinden erişilebilen web tabanlı masaüstü ortamı
AutheliaGerekli servisler için 2FA destekli kimlik doğrulama katmanı
WireGuard + AdGuard HomeVPN erişimi ve reklam/izleyici engelleme sistemi
OpenSpeedTestİnternet hız testi servisi
FilebrowserWeb tabanlı dosya yönetimi
Oyun SunucularıCS 1.6 (ReHLDS), Valheim vb. oyun sunucuları

Bu servislerin tamamı Docker Compose ile yönetilmektedir.

Gelecek Planları

Aşağıda yer alan planlar, HomeLab altyapımı daha sürdürülebilir, esnek ve güvenli hale getirmek amacıyla planladığım öncelikli geliştirmeleri içermektedir:

  • Depolama genişletme: Disk kapasitesini artırarak ana havuzu daha yüksek kapasiteye taşımak ve gerektiğinde SSD cache/disaster recovery yapılarını test etmek.
  • Kesintisiz güç kaynağı (UPS): Olası elektrik kesintilerine karşı veri kaybı riskini minimize etmek ve RAID havuzlarının güvenli kapanmasını sağlamak.
  • Ağ güvenliği: OPNsense veya benzeri açık kaynak bir firewall dağıtımı kurarak dahili ağı segmentlere ayırmak, trafik izleme ve gelişmiş kural yönetimi uygulamak.
  • Sanallaştırma: Mevcut TrueNAS yapılandırmasına ek olarak Proxmox üzerinde ayrı bir sanal sunucu kurarak container, VM veya test ortamı ihtiyaçlarını daha esnek şekilde yönetmek.
  • Rack kabin kurulumu: 16U kapasiteli bir rack dolabı ile sunucu ve ağ altyapısını merkezi şekilde konumlandırarak yer tasarrufu sağlamak ve yönetilebilirliği artırmak.
  • Fiziksel düzenleme: Kablo düzeni, switch yerleşimi ve kasa içi hava akışını iyileştirerek soğutma verimliliğini maksimuma çıkarmak.