Server (Sunucu) nedir?
Server çok basitçe temel parçaları olan bir bilgisayardır. En önemli özelliği 7/24 çalışması ve spesifik amaçlara yönelik değiştirebileceğiniz bir sistem olmasıdır. Bir oyun serverı kuracaksanız yüksek grafik kartı özellikleri ön plana çıkabilirken bir iş yerişi sunucusu için yüksek depolama kapasitesi daha değerli görülebilir. Eğer gereksinimlerinizi karşılıyorsa, evinizde bulunan eski bir bilgisayarı bile sunucu olarak kullanılabilir. Ancak kendi bilgisayarınıza yapılan kurulum genellikle, eskime payı, elektrik faturası gibi giderler nedeniyle pahalı olacağından ve 7/24 çalışan bir bilgisayar gerektirdiğinden çoğu zaman uzak bir sunucu kiralamak doğru bir alternatif olabilir. Bu kiralama işlemi aşağıda belirtilen örnek firmalar aracılığı ile yapılabilir.
Sunucu sağlayan firmalar
https://cloud.google.com/
https://www.digitalocean.com/
https://www.linode.com/
https://aws.amazon.com/
https://contabo.com/en/
https://azure.microsoft.com/en-us/
https://www.kamatera.com/ (@nuknuk)
https://www.oracle.com/tr/cloud/free/ (@mehmetkoltigin)
https://www.alibabacloud.com/tr/free (@mehmetkoltigin)
https://www.ilkbyte.com/ (@Cyberwolftr)
Bu firmaların her biri geniş bir yelpaze aralığında sunucu seçenekleri sunmaktadır. Bu seçeneklerin her biri sundukları sistem özelliklerine göre ücretlendirilmiştir ama birçoğunun 1 aylık veya daha fazla deneme sürümleri mevcuttur. İstediğiniz özelliklerde sunucuyu karşılaştırıp en uygunu teklif ile devam edebilirsiniz. Azure, AWS, ve Google diğer rakiplerine göre daha kurumsal şirketler oldukları için fiyatları nispeten daha pahalı olacaktır bununla birlikte standartları çok daha belirgindir.
Her sağlayıcı sitede üzerinde ilk üyeliğiniz oluştururken:
Mail adresi ve kredi kartı bilgilerinin gerçek olması gerekmektedir.
Eğer belirtmek istemiyorsanız adres bilgilerini doğru girmek durumunda değilsiniz. (Fatura almak isteyenler için doğru girilmesi gerekmektedir)
Genelde kredi kartlarından gerçek olduklarını kanıtlamak adına küçük bir ön ödeme yapılır daha sonra geri yatırılır. ($5 veya daha az)
Her bankanın kredi kartı ve bazı sanal kartlar sağlayıcı tarafından kabul edilmeyebilir böyle durumlarda mümkünse birden fazla kredi kartı deneyin.
Node için uygun sistemi seçmek:
Node için uygun sistemi seçerken ilk yapmanız gereken kuracağınız node’un medium veya github hesaplarına girerek sistem gereksinimleri (System Requirements) başlığı altındaki özellikleri incelemektir.
Bu özellikler genellikle 3 temel parçayı içerir. İşlemci, ram ve harddisk. Özel nodelar için ekran kartı da belirtilmiş olabilir.
Belirtilen özelliklere sağlayan seçimleri kiralayacağınız sağlayıcı üzerinden yapabilirsiniz.
Node kurulumu sırasında işletim sistemi için genelde ubuntu tercih edilir. Ubuntu’nun şu an için güncel son sürümü Ubuntu 20.04 LTS’dir.
Bu seçenekler haricinde sisteminizi kurarken şifre oluşturmanız ve tercih edilmesi durumunda ek kullanıcılar oluşturmanız gibi seçenekler sunulabilir.
Bu adımlar tamamlandığında birkaç dakika içinde sunucunuz hazır hale gelecektir.
Sunucuya Bağlanma
Sunucuya bağlanmak için çeşitli protokoller bulunmaktadır. Bunlar arasında en çok tercih edileni SSH protokolüdür. Bu protokol herhangi iki bilgisayar arasında güvenli bir hat oluşmasını sağlar.
Bu protokolü direkt olarak kiraladığını servis üzerinden veya PUTTY gibi arayüz programları aracılığı ile kullanabilirsiniz. Aynı şekilde eğer Windows kullanıcısı iseniz cmd ekranı veya Powershell kullanarakta aynı özelliği aktive edebilirsiniz.
Sunucuya ip adresini ve şifrenizi girerek bağlandıktan sonra
sudo apt install update
sudo apt install upgrade
Komutlarıyla son ubuntu güncellemerini sisteminize indirebilirsiniz.
Screen veya Tmux nedir?
Screen veya Tmux ikiside terminal üzerinde ek pencereler açarak takip ettiğiniz farklı işlemleri birçok pencerede aynı anda izleyebilmenize imkan sunan çalışmakta olan bir işlemi durdurmadan bir başka işlem başlatmanıza olanak tanıyan uygulamalardır.
sudo apt install screen
sudo apt install tmux
komutlarıyla screen ve tmux eklentilerini sisteminize yükleyebilirsiniz.
Kullanım komutlarıda oldukça benzerdir ve seçim kullanıcının tercihine kalmıştır.
Örneğin node kurulumunda sıklıkla karşınıza çıkan log izleme komutunu yeni bir screen veya tmux ekranında başlatıp (screen -S screenismi veya tmux new -s tmuxismi). İlgili ekrandan ayrıldıktan sonra (Ctrl + a + d veya Ctrl + b + d komutları) log akışının arka planda çalışmasına olanak tanınmış olunur istenildiği zaman ilgili ekrana bağlanılarak loglar anlık olarak kontrol edilebilir.
PUTTY sadece ara bağlantı programıdır bu nedenle Putty bağlantısının kopması bağlandığınız sunucudaki açık pencerelerdeki işlemleri etkilemez.
Linux ve Ubuntu nedir?
Linux 1991 yılında Linus Torvalds tarafından açık kaynak kodlu olarak yazılmaya başlanan o zamanlar pazar hakimi UNIX kerneline karşı herkesin ulaşabileceği ve faydalanabileceği bir sistem olması amaçlanarak başlanmıştır. Kısa bir süre içinde popülerliği artmış ve ilk işletim sistemlerinden biri olan Debian Linux kernel temelinde oluşturulmuştur. Kernel bilgisayar donanımın birbirleri ile uyum içinde çalışmasını(işlemci, ram, fare, ekran) sağlayan temel ağdır ve memory üzerinden sistemle birlikte otomatik olarak başlar. Linux yazılımı açık kaynak kodlu olması ve nispeten kolay özelleştirilebilmesi nedeniyle birçok büyük firma tarafından tercih edilmektedir. Özellikle Linux Kernel’i Android ve Chrome gibi dünyanın en çok tercih edilen uygulamaların temelinde yer almaktadır. Debian işletim sisteminden sonra günümüzde de yaygın olarak kullanılan Ubuntu işletim sistemi kurulmuştur. Ubuntu, Windows gibi bir işletim sistemidir ancak açık kaynak kodlu ve çeşitli grupların üzerinde yaptığı çalışmalarla 6 ayda bir yeni sürümleri çıkarılan ve geliştirilen alternatif bir sistemdir. Sunucular tarafından en çok tercih edilen işletim sistemlerinden biridir. Ubuntu aynı zamanda Windows gibi kullanılabilecek bir arayüze de sahiptir.