CentOS 8 piyasaya sürüldü ve çoğu kuruluş mevcut CentOS 7 tabanlı sunucu kurulumlarını CentOS 8’e yükseltmeyi dört gözle bekliyor. Burada, yüklü uygulamalar ve veritabanlarıyla birlikte CentOS 7’den CentOS 8’e tam bir yükseltme gerçekleştiriyoruz.
Upgrade işlemlerini, aşağıdaki adımlarla gerçekleştireceğiz.
- Sunucu özellikleri
- CentOS 7 Sistem Bilgilerini Toplama
- CentOS 7’ye EPEL yum Deposunu Yükleme
- CentOS 7’de Gerekli Paketleri Yükleme
- Yinelenen / Kullanılmayan Paketleri ve Yapılandırmaları Kaldırma
- Paket Yöneticisi’ni YUM’dan DNF’ye geçirin
- CentOS 7 sunucusunu En Son Kararlı Sürüme Yükseltme
- Yum Depolarını CentOS 7’den CentOS 8’e Yükseltme
- CentOS 7’yi CentOS 8 Sunucusuna Yükseltme
- CentOS 8’e Yükselttikten Sonra Yazılım Sürümlerini Doğrulayın
NOT : Sunucunuzun full yedeğini ve acil ihtiyaç halinde hızlı restore için snapshot’ını almayı unutmayınız.
Sunucu Özellikleri
WEB Sunucu olarak kullandığım CentOS 7 sunucu (LAMP) özellikleri aşağıdaki gibidir:
- CPU – 4 core
- Memory – 8 GB
- Storage – 40 GB
- Operating System – CentOS 7.7.1908
- Hostname – websrv.isleyen.net
- IP Address – 20.20.20.121/24
CentOS 7 Sistem Bilgilerini Toplama
Bu adımda, kullandığımız sistem özelliklerini kontrol edelim. Bir SSH programıyla sunucumuza bağlanıyoruz. Kullandığım sistem bir web sunucu olduğu için, httpd, apache ve mariadb kontrollerini yaptım. Sizin sistemininzde bunlar yoksa, ilk birkaç maddeyi dikkate almayabilirsiniz.
Linux Çekirdeğinin geçerli sürümünü kontrol edelim öncelikle.
uname -r
Apache HTTP Sunucusunun geçerli sürümünü kontrol edelim.
httpd -v
PHP’nin geçerli sürümünü kontrol edelim.
php -v
MariaDB’nin geçerli sürümünü kontrol edelim.
mysql -V
CentOS 7’ye EPEL yum Deposunu Yükleme
EPEL (Enterprise Linux için Ekstra Paketler) yum deposunda bulunan bazı paketler gerekmektedir.
Bu nedenle, EPEL yum deposunu etkinleştirmek için epel-release paketi kuruyoruz. Bende şu an EPEL kurulu durumda ve sizde kurulu değilse, aşağıdaki komutla yükleyebilirsiniz.
yum install -y epel-release
EPEL yum deposu için önbellek oluşturun.
yum makecache fast
CentOS 7’de Gerekli Paketleri Yükleme
Upgrade sırasında kullanılmak üzere, gerekli olan paketleri yüklemek için aşağıdaki komutu çalıştırın.
yum install -y yum-utils rpmconf
Yinelenen / Kullanılmayan Paketleri ve Yapılandırmaları Kaldırma
İlgili paketlerin yeni sürümlerinin yüklenmesi sırasında oluşturulan çakışan yapılandırma dosyalarını (.rpmnew, .rpmsave ve .rpmorigfiles) bulun ve kaldırın.
rpmconf -a
Herhangi bir çıktı olmadığına göre, upgrade sırasında problem çıkaracak paket yok demektir.
Kurulu başka bir paket tarafından güvenilmeyen paketleri listeleyin ve temizleyin.
package-cleanup –leaves
Şu anda yapılandırılmış yum depolarında bulunmayan eski veya yinelenen paketleri listeleyin ve temizleyin.
package-cleanup –orphans
Paket Yöneticisi’ni YUM’dan DNF’ye geçirin
CentOS 8’de, varsayılan paket yöneticisi olan yum’un yerini dnf (Dandified Yum) almıştır. Bu nedenle, CentOS 7 sunucumuzu yükseltmeden önce dnf paket yöneticisini de yüklemeliyiz.
Yum komutunu kullanarak dnf paket yöneticisini kurun.
yum install -y dnf
Yum artık gerekli değildir, bu nedenle dnf komutunu kullanarak yum paket yöneticisini kaldırıyoruz. Aslında bu adımı da dikkate almayabilirsiniz. Yum ve dnf, hala bir arada kullanılabiliyor.
dnf remove -y yum yum-metadata-parser
Yum yapılandırmalarına ait tüm kalanları kaldırın.
rm -Rf /etc/yum
DNF yum depoları için önbellek oluşturun.
dnf makecache
CentOS 7 sunucusunu En Son Kararlı Sürüme Yükseltme
CentOS 7’nin hangi sürümünü kullanıyorsak, sistem paketlerini CentOS 7’nin en son versiyonuna güncellemek için aşağıdaki komutu çalıştırın.
dnf upgrade -y
Yum Depolarını CentOS 7’den CentOS 8’e Yükseltme
Yum depolarımızı upgrade etmek için centos-release paketini CentOS 7’den CentOS 8’e yükseltmeliyiz.
dnf upgrade -y http://mirror.centos.org/centos/8/BaseOS/x86_64/os/Packages/{centos-release-8.1-1.1911.0.8.el8.x86_64.rpm,centos-gpg-keys-8.1-1.1911.0.8.el8.noarch.rpm,centos-repos-8.1-1.1911.0.8.el8.x86_64.rpm}
EPEL yum deposunu EL 7’den EL 8’e yükseltin.
dnf upgrade -y epel-release
Tüm yum depoları için önbellek oluşturun.
dnf makecache
Tüm yum depolarımız CentOS 7’den CentOS 8’e yükseltildi.
CentOS 7’yi CentOS 8 Sunucusuna Yükseltme
Aşağıdaki komutu kullanarak kurulu tüm çekirdekleri kaldırın.
rpm -e `rpm -q kernel`
Çakışan paketleri de kaldırıyoruz.
rpm -e –nodeps sysvinit-tools
Aşağıdaki komutu kullanarak sistem yükseltmeyi başlatın.
dnf -y –releasever=8 –allowerasing –setopt=deltarpm=false distro-sync
Yeni CentOS 8 kernel-core yüklemesi yapıyoruz.
dnf install -y kernel-core
Minimal ve Core paket gruplarını sunucuya kurun.
dnf -y groupupdate “Core” “Minimal Install”
Yeni Linux Çekirdeğini yüklemek için sunucuyu yeniden başlatın.
systemctl reboot
CentOS 8’e Yükselttikten Sonra Yazılım Sürümlerini Doğrulayın
Yeniden başlattıktan sonra, kurulu Linux Çekirdeğinin sürümünü kontrol edin. En başta yaptığımız kontrol adımlarını tekrar yapacağız.
uname -r
CentOS dağıtım bilgisini kontrol edelim.
Yüklü Apache HTTP Sunucusunun sürümünü kontrol edin.
httpd -v
Yüklü PHP’nin sürümünü kontrol edin.
php -v
Kurulu MariaDB sunucusunun sürümünü kontrol edin.
mysql -V
Web sunucumuz hala çalışıp çalışmadığını test edelim. Web sunucum üzerinde, test amaçlı bir web sitesi barındırıyordum. Upgrade sonrası herhangi bir problem olup olmadığına bakalım. Browser’da web sitemin ismini yazıyorum.
www.isleyen-test.net
Başarılı şekilde CentOS 8 versiyonuna upgrade etmiş olduk. Snapshot almışsanız, testlerinizi yaptıktan sonra bu snapshot’ı silmeyi unutmayınız.
Yararlı olması dileğiyle.
Yusuf İşleyen