Benyamin Limanto

Just Random Thought from myself

Core 2 Duo CPU : Di tahun 2022 – Bisa buat apa?

Total Views

130 views

Sesuai judulnya, post kali ini agak sedikit mengarah melakukan refleksi. Ya, refleksi dan melihat kembali. Kenapa? karena kebetulan di lab tempat saya bekerja, ada komputer mangkrak milik program studi(prodi) yang dulu digunakan sebagai server utama untuk meng-host aplikasi jurusan yang berbasis web (PHP). Selain itu saya ter inspirasi dengan posting blogger lain nya yaitu Tahun 2021 Core 2 Duo bisa dipakai apa? Server ini memiliki spec yang cukup kecil, 1TB HDD (RAID 0, ya haha..), 4GB DDR3 RAM, dan Core 2 Duo E6300 CPU. Ya tidak salah lihat E6300. CPU seri budget paling budget dari Intel di jaman nya (2006). Komputer ini di pensiunkan pada tahun 2019, karena sekarang semua server di pusatkan di Server Farm di gedung lain di tempat saya bekerja. Spesifikasi nya bisa dilihat sebagai berikut :

root@git:~# cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU          6300  @ 1.86GHz
stepping        : 6
microcode       : 0xd0
cpu MHz         : 1866.506
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 2
apicid          : 0
initial apicid  : 0
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm pti tpr_shadow dtherm
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips        : 3733.01
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 6
model           : 15
model name      : Intel(R) Core(TM)2 CPU          6300  @ 1.86GHz
stepping        : 6
microcode       : 0xd0
cpu MHz         : 1866.506
cache size      : 2048 KB
physical id     : 0
siblings        : 2
core id         : 1
cpu cores       : 2
apicid          : 1
initial apicid  : 1
fpu             : yes
fpu_exception   : yes
cpuid level     : 10
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ht tm pbe syscall nx lm constant_tsc arch_perfmon pebs bts rep_good nopl cpuid aperfmperf pni dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm lahf_lm pti tpr_shadow dtherm
bugs            : cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs itlb_multihit
bogomips        : 3733.01
clflush size    : 64
cache_alignment : 64
address sizes   : 36 bits physical, 48 bits virtual
power management:

Hanya kebijakan ini menyebabkan jurusan ketika mau meningkatkan kapasitas disk/space dan juga Core CPU, harus berurusan dengan Biro Data Center dan Network kampus. Ya sebenarnya sih saya termasuk di dalam Biro ini, karena saya di bidang networknya. Hanya saja terkadang tidak semudah teriak minta X langsung diberi X, haha… Berangkat dari kebutuhan adanya server khusus untuk repository kode program mahasiswa, akhirnya saya berpikir dan ingat, kan server yang ‘pensiun’ milik prodi masih ada, hidup tidak terpakai. Akhirnya saya mengajukan kepada Kepala Prodi jurusan untuk saya tarik ke lab, dannnnn boleh.

Singkat cerita, muncullah pertanyaan, komputer ini bisa apa ? Kan cuman Core 2 Duo, serta saya berpikir tidak mungkin bisa menjalankan program repository kode berbasis git di server ini, jika berbasiskan Gitlab community edition. RAM minimum nya sangat minimum (untuk jalankan gitlab, 4gb belum DB service nya), sehingga saya cari RAM bekas tambahan 2GB ke server tersebut, dan jadilah server tersebut memiliki 6GB RAM, dan 8GB swap (uhuk, di HDD, RAID 0 lagi). Selain itu saya mencari alternatif untuk Gitlab CE, dan saya menemukan Gogs, git server berbasis golang.

Saya download binary nya, dan saya run, peggunaan RAM oleh Gogs sangat kecil, hanya 64mb! Plus ditambah DB server berbasis MySQL, hanya 300mb terpakai. sisa RAM 5gb diam tanpa digunakan. Ketika peak/banyak user mengakses server Core 2 Duo E6300 ini, CPU nya tidak spike banyak, bisa dibilang kecil sekali 3-4% saja. Jadi bisa dibilang Core 2 Duo E6300 budget CPU, masih bisa digunakan sebagai git server.

Apakah saya berhenti disitu? Tentu tidak! Saya membawa nya ke level selanjutnya. Server ini saya upgrade dari Ubuntu 18.04.6 LTS ke 20.04.4 LTS, dan tidak ada kendala sama sekali dengan server nya, mulus. Lalu saya upgrade MySQL 5.7.37 ke MySQL 8.0.2, mulus, dan proses read data lebih cepat (ketika akses isu dan juga repo git). Berikut contoh penampakan git server di akses lewat web :

Tampilan Gogs Git Web View di Core 2 Duo E6300
Tampilan Gogs Git Web View di Core 2 Duo E6300

Dengan Ubuntu 20.04 LTS, saya bisa menjalankan container engine berbasiskan podman dari Red Hat. Target saya bisa menjalankan MS SQL Server 2019 dan .NET Core App. Ketika saya running dengan container, SQL Server 2019 bisa run, tetapi memakan RAM hingga 1.3 GB, ya cukup lumayan dibandingkan di Windows, tetapi itu sudah lebih hemat daripada versi 2017 nya yang berbasiskan di Linux, memakan 2GB ketika IDLE. Saya mencoba menjalankan query query dan restore DB. Berjalan dengan baik! Bukti service MySQL, Gogs, dan MS SQL Berjalan bisa dilihat sebagai berikut :

root@git:~# systemctl status gitd
● gitd.service - Gogs Git SIB Service
     Loaded: loaded (/etc/systemd/system/gitd.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-03-17 20:20:42 WIB; 2 days ago
   Main PID: 731 (gogs)
      Tasks: 10 (limit: 7019)
     Memory: 99.5M
     CGroup: /system.slice/gitd.service
             └─731 /home/git/gogs/gogs web

Mar 17 20:20:42 x.edu systemd[1]: Started Gogs Git SIB Service.
Mar 17 20:20:42 x.edu gogs[731]: 2022/03/17 20:20:42 [TRACE] Log mode: File (Info)
root@git:~# systemctl status mysql
● mysql.service - MySQL Community Server
     Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2022-03-17 20:20:42 WIB; 2 days ago
       Docs: man:mysqld(8)
             http://dev.mysql.com/doc/refman/en/using-systemd.html
   Main PID: 618 (mysqld)
     Status: "Server is operational"
      Tasks: 42 (limit: 7019)
     Memory: 491.8M
     CGroup: /system.slice/mysql.service
             └─618 /usr/sbin/mysqld

Mar 17 20:20:28 x.edu systemd[1]: Starting MySQL Community Server...
Mar 17 20:20:42 x.edu systemd[1]: Started MySQL Community Server.
root@git:~# mysql --version
mysql  Ver 8.0.28 for Linux on x86_64 (MySQL Community Server - GPL)
root@git:~# exit
ben@git:~$ podman ps
CONTAINER ID  IMAGE                                       COMMAND               CREATED       STATUS            PORTS       NAMES
4b7312a7e5de  mcr.microsoft.com/mssql/server:2019-latest  /opt/mssql/bin/sq...  25 hours ago  Up 7 minutes ago              sqlserver
ben@git:~$ sqlcmd -S 127.0.0.1,1433 -U sa
Password:
1> select @@version;
2> go
                                                                                                                                                                        
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Microsoft SQL Server 2019 (RTM-CU15) (KB5008996) - 15.0.4198.2 (X64)
        Jan 12 2022 22:30:08
        Copyright (C) 2019 Microsoft Corporation
        Developer Edition (64-bit) on Linux (Ubuntu 20.04.3 LTS)                                                                                                   

(1 rows affected)
root@git:/home/ben# ps_mem
 Private  +   Shared  =  RAM used       Program

 96.0 KiB + 158.0 KiB = 254.0 KiB       none
236.0 KiB + 408.0 KiB = 644.0 KiB       atd
344.0 KiB + 476.0 KiB = 820.0 KiB       agetty
380.0 KiB + 452.0 KiB = 832.0 KiB       htcacheclean
344.0 KiB + 628.0 KiB = 972.0 KiB       cron
376.0 KiB + 844.0 KiB =   1.2 MiB       irqbalance
444.0 KiB +   1.0 MiB =   1.5 MiB       conmon
560.0 KiB +   1.4 MiB =   1.9 MiB       su
916.0 KiB +   2.1 MiB =   3.0 MiB       systemd-timesyncd
  1.4 MiB +   2.0 MiB =   3.3 MiB       sudo
  1.2 MiB +   2.5 MiB =   3.6 MiB       systemd-logind
  1.4 MiB +   3.0 MiB =   4.4 MiB       dbus-daemon (2)
  1.3 MiB +   3.2 MiB =   4.5 MiB       accounts-daemon
  2.4 MiB +   2.7 MiB =   5.1 MiB       systemd-udevd
  1.5 MiB +   3.7 MiB =   5.3 MiB       polkitd
  2.6 MiB +   2.9 MiB =   5.5 MiB       rsyslogd
  2.5 MiB +   3.1 MiB =   5.6 MiB       wpa_supplicant
  2.7 MiB +   3.3 MiB =   6.0 MiB       systemd-networkd
  3.5 MiB +   3.6 MiB =   7.0 MiB       fuse-overlayfs
  2.3 MiB +   5.1 MiB =   7.4 MiB       bash (2)
  2.7 MiB +   9.9 MiB =  12.7 MiB       sshd (3)
  6.4 MiB +   7.7 MiB =  14.2 MiB       systemd-resolved
  1.8 MiB +  15.5 MiB =  17.4 MiB       (sd-pam)
  7.5 MiB +  11.1 MiB =  18.6 MiB       networkd-dispat
  9.3 MiB +  13.8 MiB =  23.1 MiB       unattended-upgr
  3.4 MiB +  21.9 MiB =  25.3 MiB       systemd (2)
 16.6 MiB +  16.7 MiB =  33.3 MiB       podman pause
 20.8 MiB +  25.9 MiB =  46.7 MiB       firewalld
 25.7 MiB +  98.2 MiB = 124.0 MiB       systemd-journald
 69.2 MiB +  69.3 MiB = 138.6 MiB       gogs
434.1 MiB + 436.3 MiB = 870.4 MiB       mysqld
729.8 MiB + 755.8 MiB =   1.5 GiB       sqlservr (2)
---------------------------------
                          2.8 GiB
=================================
root@git:/home/ben# free -m
              total        used        free      shared  buff/cache   available
Mem:           5907        1319         160           1        4426        4295
Swap:          7812           1        7811

Aplikasi .NET Core 6.0? Ngacir di E6300! Cukup luar biasa sih untuk komputer setua ini. Saya cukup salut, dan mungkin 2-3 tahun kedepan masih bisa digunakan untuk tugas tugas lain nya.

Akhir kata, untuk menjawab judul post nya, maka bisa disimpulkan, Core 2 Duo di 2022, bisa digunakan untuk : Database server, Web Server, dan Containerize platform development, pastinya dengan OS Linux Up to date! Keren!

 


Comments

Leave a Reply. I will come back and maybe we can have some conversation 🙂

This site uses Akismet to reduce spam. Learn how your comment data is processed.