Kata Pengantar
Sudah 2 hari sejak versi baru sistem operasi CentOS keluar, yaitu, CentOS 8. Dan sejauh ini ada beberapa artikel di Internet tentang bagaimana melakukan sesuatu di dalamnya, jadi saya memutuskan untuk mengisi celah ini. Selain itu, saya akan memberi tahu Anda tidak hanya tentang cara menginstal pasangan program ini, tetapi juga tentang bagaimana saya biasanya melihat instalasi Linux di lingkungan virtual di dunia modern untuk tugas-tugas umum, termasuk partisi disk dan banyak lagi.
Tetapi pada awalnya saya ingin berbicara secara singkat tentang mengapa Anda harus beralih ke versi ini dari semua yang sebelumnya, dan ada dua alasan untuk ini:
- php7! Dalam versi CentOS sebelumnya, "Orthodox" php5.4 diinstal ...
Nah, jika sedikit lebih serius, maka banyak paket melompati beberapa versi secara massal. Kami (penggemar OS redhat-like) akhirnya masuk, jika bukan masa depan, maka setidaknya sekarang. Dan pendukung Ubuntu tidak akan lagi menertawakan kami dan menusuk kami, ya ... setidaknya untuk sementara waktu;). - Transisi dari yum ke dnf. Perbedaan utama adalah bahwa sekarang berfungsi dengan beberapa versi paket yang didukung secara resmi. Di sini, di angka delapan ini belum pernah berguna bagi saya, tetapi kedengarannya menjanjikan.
Menciptakan mesin virtual
Hypervisor berbeda dan saya tidak memiliki tujuan untuk mempertajam pembaca untuk pembaca tertentu, saya akan memberi tahu Anda tentang prinsip-prinsip umum.
Memori
Pertama ... Untuk menginstal sistem CentOS mulai dari 7 pasti, dan menurut saya pada 6 itu sama ("tapi itu tidak akurat"),
setidaknya diperlukan 2 GB RAM. Karena itu, saya menyarankan Anda untuk memulai dan memberi begitu banyak.
Tetapi jika itu, setelah instalasi, jumlah memori dapat dikurangi. Pada 1 GB, sistem telanjang bekerja dengan cukup baik, saya memeriksa.
Berkendara
Untuk instalasi normal, buat disk virtual 20-30 GB. Ini cukup untuk sistem. Dan disk kedua untuk data. Itu dapat ditambahkan pada tahap menciptakan mesin virtual, dan setelahnya. Saya biasanya menambahkan nanti.
CPU
Pada satu inti, sistem telanjang tidak melambat. Dan karena sumber daya dapat diskalakan secara bebas, saya tidak melihat gunanya memberi lebih banyak pada tahap pemasangan (kecuali Anda idealnya mengetahui persyaratannya dan terlalu malas untuk masuk ke konfigurator sekali lagi)
Sisanya biasanya dapat dibiarkan secara default.
Instalasi itu sendiri
Jadi ... Kami meluncurkan penginstal ... Secara pribadi, saya telah menempatkan layanan ini untuk waktu yang lama hanya dalam bentuk mesin virtual, jadi saya tidak akan menjelaskan semua jenis catatan distribusi pada USB flash drive - Saya hanya memasang ISO sebagai CD di hypervisor favorit saya, saya mengunduhnya dan mengendarainya.
Instalasi dasar cukup khas, saya hanya akan fokus pada beberapa poin.
Pemilihan sumber
Sejak rilis versi kedelapan, mirror dari Yandex telah berbohong sepanjang hari. Yaitu, itu naik secara berkala, dan sekali lagi mulai menunjukkan kesalahan. Saya yakin masalahnya adalah beban berlebihan pada layanan. Oleh karena itu, untuk menunjukkan sumbernya, saya pribadi harus, alih-alih memasukkan alamat yang biasa, buka di
sini , pilih cermin yang saya suka di sana dan masukkan alamat secara manual di jendela pemasang. Penting untuk diingat bahwa Anda harus menentukan jalur ke folder tempat
direktori repodata berada . Misalnya,
mirror.corbina.net/pub/Linux/centos/8/BaseOS/x86_64/os .
Disk rusak
Pertanyaan ini agak religius menurut saya. Setiap admin memiliki posisinya sendiri dalam hal ini. Tapi saya masih berbagi pandangan saya tentang pertanyaan itu.
Ya, pada prinsipnya, Anda dapat mengalokasikan seluruh tempat ke root dan bekerja, paling sering bahkan cukup bagus. Lalu mengapa pagar di taman dengan bagian yang berbeda? - Alasan utama untuk ini, menurut saya 2: kuota dan portabilitas.
Sebagai contoh, jika ada kesalahan dan terjadi kesalahan pada bagian data utama, saya ingin dapat memuat sistem dan melakukan langkah-langkah resusitasi. Oleh karena itu, saya pribadi mengalokasikan partisi terpisah di bawah / boot. Disinilah letak kernel dan bootloader. Biasanya, 500 megabyte sudah cukup, tetapi dalam kasus yang jarang terjadi mungkin membutuhkan lebih banyak, dan mengingat bahwa kita sudah terbiasa mengukur ruang dengan terabyte, saya mengalokasikan 2GB untuk bagian ini. Dan di sini penting bahwa itu tidak dapat dilakukan lvm.
Selanjutnya adalah root dari sistem. Untuk pemasangan normal, saya tidak pernah membutuhkan lebih dari 4 GB per sistem, tetapi selama acara yang dijadwalkan saya sering menggunakan direktori / tmp untuk membongkar distribusi, dan saya tidak melihat titik menyorotnya sebagai bagian terpisah - itu membersihkan secara otomatis dalam sistem modern, sehingga tidak mengisi penuh . Jadi di bawah root saya mengalokasikan 8GB.
Tukar ... Secara umum, ada sedikit manfaat praktis dari itu. Jika Anda mulai menggunakan swap di server, hari ini di dunia nyata ini hanya berarti bahwa server perlu menambah lebih banyak RAM. Jika tidak, masalah kinerja dijamin (atau beberapa program mengalami kebocoran memori). Oleh karena itu, bagian ini hanya untuk tujuan diagnostik. Oleh karena itu, 2 GB adalah angka yang bagus. Ya, tidak peduli berapa banyak memori yang dimiliki server. Ya, saya membaca semua artikel di mana ada tertulis tentang rasio memori dengan volume swap ... IMHO, mereka sudah ketinggalan zaman. Selama 10 tahun latihan, ini tidak pernah berguna bagi saya. 15 tahun yang lalu saya menggunakannya, ya.
Setiap orang dapat memutuskan apakah akan mengalokasikan / rumah di bagian terpisah IMHO. Jika seseorang secara aktif menggunakan direktori ini di server, lebih baik untuk menyorot. Jika tidak ada - tidak ada alasan.
Selanjutnya, / var. Menurut pendapat saya, perlu untuk memilihnya. Sebagai permulaan, Anda dapat membatasi diri hingga 4 GB, dan lalu bagaimana hasilnya. Dan ya, dengan "bagaimana kelanjutannya," maksud saya itu
- Pertama, Anda selalu dapat me-mount disk lain di subdirektori / var (yang akan saya tunjukkan nanti dengan sebuah contoh)
- Kedua, kami memiliki lvm - Anda selalu dapat menambahkan. Dan biasanya Anda harus menambahkan ketika terlalu banyak log mulai tuangkan di sana. Tapi saya tidak pernah bisa memprediksi angka ini sebelumnya, jadi saya mulai dengan 2 GB, dan kemudian melihat.
Ruang yang tidak terisi akan tetap bebas di grup volume, maka Anda selalu dapat menggunakannya nanti.
LVM
Masuk akal untuk membuat
semua partisi kecuali / boot di LVM. Ya, termasuk swap. Ya, tukar untuk semua tips harus di awal disk, dan dalam kasus LVM lokasinya tidak dapat ditentukan secara prinsip. Tetapi seperti yang saya tulis di atas, sistem Anda
seharusnya tidak menggunakan swap sama sekali. Karena itu, tidak masalah di mana dia berada. Ya, tidak di tahun '95 kita hidup, jujur!
Selanjutnya, dalam LVM ada beberapa entitas dasar yang Anda harus dapat hidup:
- volume fisik
- grup volume
- volume logis
Volume fisik dikelompokkan bersama, dengan masing-masing volume fisik berada hanya dalam satu kelompok, dan grup dapat berada di beberapa volume fisik sekaligus.
Dan volume logis masing-masing dalam kelompok yang sama.
Tapi ... Kami, sekali lagi, adalah abad ke-21 di halaman. Dan servernya virtual. Tidak masuk akal untuk menerapkan kepada mereka mekanisme yang sama yang diterapkan pada yang fisik. Dan untuk virtual, penting untuk memiliki data yang terpisah dari sistem! Ini sangat penting khususnya untuk kemampuan untuk dengan cepat mengalihkan data ke mesin virtual lain (misalnya, ketika beralih ke OS baru) dan secara umum semua jenis plus bermanfaat (pisahkan cadangan dengan bagian menggunakan hypervisor misalnya). Oleh karena itu, satu grup volume digunakan untuk sistem, dan yang lainnya digunakan untuk data! Pemisahan yang logis ini sangat membantu dalam kehidupan!
Jika Anda hanya membuat satu hard disk virtual saat membuat mesin virtual, ini adalah akhir dari konfigurasi. Dan jika dua, maka jangan menandai yang kedua.
Kami memulai instalasi.Instalasi pos
Jadi, sistem yang baru saja diinstal akhirnya boot. Hal pertama yang perlu diperiksa adalah Internet.
ping ya.ru
Apakah ada jawaban? - Baik, tekan Ctrl-C.
Jika tidak, pergi mengatur jaringan, tidak ada kehidupan tanpa ini, tetapi artikel saya bukan tentang itu.
Sekarang, jika kita belum berada di bawah root, kita pergi di bawah root, karena untuk mengetik
begitu banyak perintah dengan sudo saya pribadi vlom (dan admin paranoid maafkan aku):
sudo -i
Sekarang hal pertama yang kita ketikkan
dnf -y update
Dan jika Anda membaca artikel ini pada 2019, kemungkinan besar tidak akan terjadi apa-apa, tetapi patut dicoba.
Sekarang konfigurasikan drive yang tersisa
Misalkan kita memiliki partisi xvda dengan sistem, maka disk data akan menjadi xvdb. Ok
Sebagian besar tip akan dimulai dengan kata-kata "Luncurkan fdisk dan buat partisi ..."
Jadi, ini
tidak benar !
Saya akan mengulangi pancake lagi, karena ini penting! Dalam hal ini, bekerja dengan LVM, yang menempati satu keseluruhan, bahkan jika itu adalah disk virtual, membuat partisi di dalamnya berbahaya! Setiap kata penting dalam frasa ini. Jika kita bekerja tanpa LVM - itu perlu. Jika kita katakan pada sistem disk dan data - itu perlu. Jika karena alasan tertentu kita perlu membiarkan setengah dari disk kosong - juga diperlukan. Tetapi biasanya semua asumsi ini murni teoretis. Karena jika kita memutuskan untuk menambahkan tempat ke bagian yang ada, maka cara termudah untuk melakukannya adalah dengan konfigurasi ini. Dan kemudahan administrasi lebih besar daripada itu sehingga kami dengan sengaja bergerak menuju konfigurasi ini.
Dan kemudahannya adalah jika Anda ingin memperluas bagian data, Anda cukup menambahkan ruang ke bagian virtual, kemudian perluas grup dengan vgextend dan hanya itu! Dalam kasus yang jarang terjadi, sesuatu yang lain mungkin diperlukan, tetapi setidaknya Anda tidak perlu memperluas pada awalnya yang logis, yang sudah bagus. Dan kemudian, untuk memperluas volume ini sendiri, disarankan untuk menghapus yang sudah ada di awal, dan kemudian membuat yang baru di atas ... Yang tidak terlihat sangat bagus dan tidak dapat dilakukan secara langsung, dan ekspansi sesuai dengan skenario yang saya tentukan dapat dilakukan dengan cepat tanpa harus melepas partisi.
Secara total, kami membuat volume fisik, lalu sekelompok volume, termasuk volume lalu bagian untuk server kami:
pvcreate /dev/xvdb vgcreate data /dev/xvdb lvcreate -n www -L40G data mke2fs -t ext4 /dev/mapper/data-www
Di sini, alih-alih huruf kapital "L" (dan ukuran dalam GB), Anda dapat menentukan yang kecil dan kemudian menunjukkan ukuran relatif alih-alih ukuran absolut, misalnya, untuk menggunakan setengah ruang yang saat ini tersedia dalam grup volume, Anda harus menentukan "-l + 50% GRATIS"
Dan perintah terakhir memformat partisi dalam sistem file ext4 (yang sejauh ini, dalam praktik saya, menunjukkan stabilitas terbesar jika semuanya rusak, jadi saya lebih suka itu).
Sekarang pasang partisi di tempat yang tepat. Untuk melakukan ini, tambahkan baris yang benar ke / etc / fstab:
/dev/mapper/data-www /var/www ext4 defaults 1 2
Dan kami mengetik
mount /var/www
Jika kesalahan muncul - kami membunyikan alarm! Karena itu berarti kita memiliki kesalahan di / etc / fstab. Dan bahwa pada reboot berikutnya kita akan memiliki masalah yang sangat besar. Sistem mungkin tidak bisa boot sama sekali, yang seringkali sangat menyedihkan untuk layanan cloud. Karena itu, Anda harus segera memperbaiki baris yang ditambahkan terakhir, atau menghapusnya sama sekali! Itu sebabnya kami tidak mulai menulis perintah mount secara manual - maka kami tidak akan mendapat kesempatan yang sangat baik untuk memeriksa konfigurasi peralatan direct-to-home.
Sekarang kita benar-benar meletakkan semua yang kita inginkan dan membuka porta di bawah web:
dnf groupinstall "Development Tools" dnf -y install httpd @nodejs @redis php firewall-cmd --add-service http --permanent firewall-cmd --add-service https --permanent
Secara opsional, Anda juga dapat meletakkan basis data di sini, tetapi secara pribadi, saya mencoba membuatnya terpisah dari server web. Meskipun membuatnya dekat lebih cepat, ya. Kecepatan adapter jaringan virtual biasanya di wilayah gigabit, dan ketika bekerja pada mesin yang sama, akses terjadi hampir secara instan. Namun kurang aman. Di sini untuk siapa lebih penting.
Sekarang tambahkan parameter ke file konfigurasi (buat ideologi CentOS baru dan modern seperti ini)
echo "vm.overcommit_memory = 1"> /etc/sysctl.d/98-sysctl.conf
Nyalakan ulang server.
Dalam komentar, saya dimarahi karena menyarankan Anda untuk mematikan SeLinux, jadi saya akan memperbaikinya dan menulis tentang fakta bahwa setelah itu Anda harus ingat untuk mengonfigurasi SeLinux.
Sebenarnya untung! :)