CentOS 7 to CentOS 8 Server Upgrade Nasıl Yapılır?

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