Vorwort
Es ist 2 Tage her, dass die neue Version des CentOS-Betriebssystems herauskam, nämlich CentOS 8. Und bis jetzt gibt es im Internet einige Artikel darüber, wie man etwas darin macht, also habe ich beschlossen, diese Lücke zu schließen. Darüber hinaus werde ich Ihnen nicht nur erklären, wie Sie dieses Programmpaar installieren, sondern auch, wie ich die Installation von Linux in einer virtuellen Umgebung in der modernen Welt für allgemeine Aufgaben wie Festplattenpartitionierung und mehr im Allgemeinen sehe.
Aber am Anfang möchte ich kurz darüber sprechen, warum Sie von allen vorherigen zu dieser Version wechseln sollten, und dafür gibt es zwei Gründe:
- PHP7! In der vorherigen Version von CentOS wurde "Orthodox" php5.4 installiert ...
Nun, wenn auch etwas ernster, dann sprangen viele Pakete über mehrere Versionen in großen Mengen. Wir (Fans von Redhat-ähnlichen Betriebssystemen) sind endlich eingetreten, wenn nicht die Zukunft, dann zumindest die Gegenwart. Und Ubuntu-Anhänger werden uns nicht mehr auslachen und mit den Fingern nach uns stechen, na ja ... zumindest für eine Weile;). - Übergang von yum zu dnf. Der Hauptunterschied besteht darin, dass jetzt die Arbeit mit mehreren Versionen von Paketen offiziell unterstützt wird. Genau hier in der Abbildung acht hat es mir noch nie geholfen, aber es klingt vielversprechend.
Erstellen einer virtuellen Maschine
Hypervisoren sind unterschiedlich und ich habe keinen Zweck, den Leser für einen bestimmten zu schärfen. Ich werde Ihnen allgemeine Prinzipien erläutern.
Die Erinnerung
Erstens ... Um das CentOS-System sicher ab 7 zu installieren, und meiner Meinung nach war es bei 6 dasselbe („aber das ist nicht korrekt“), werden
mindestens 2 GB RAM benötigt. Deshalb rate ich Ihnen, zu beginnen und so viel zu geben.
Wenn dies jedoch nach der Installation der Fall ist, kann der Speicherplatz reduziert werden. Bei 1 GB funktioniert das nackte System ganz gut, habe ich überprüft.
Fahren
Erstellen Sie für eine normale Installation eine virtuelle Festplatte mit 20 bis 30 GB. Dies reicht für das System. Und eine zweite Platte für Daten. Es kann sowohl beim Erstellen einer virtuellen Maschine als auch danach hinzugefügt werden. Normalerweise füge ich später hinzu.
CPU
Auf einem Kern verlangsamt sich ein nacktes System nicht. Und da Ressourcen frei skalierbar sind, sehe ich keinen Grund, in der Installationsphase mehr zu geben (es sei denn, Sie kennen die Anforderungen im Idealfall und sind zu faul, um erneut in den Konfigurator zu wechseln).
Der Rest kann normalerweise standardmäßig belassen werden.
Installation selbst
Also ... Wir starten das Installationsprogramm ... Ich persönlich habe diese Dienste schon lange nur in Form von virtuellen Maschinen bereitgestellt, daher beschreibe ich nicht alle Arten von Verteilungsdatensätzen auf einem USB-Flash-Laufwerk. Ich habe die ISO einfach als CD in meinen Lieblingshypervisor gemountet, sie heruntergeladen und gefahren.
Die Grundinstallation ist recht typisch, ich werde mich nur auf einige Punkte konzentrieren.
Quellenauswahl
Seit der Veröffentlichung der achten Version hat der Spiegel von Yandex den ganzen Tag gelogen. Nun, das heißt, es steigt periodisch an und zeigt dann wieder einen Fehler an. Ich bin sicher, dass die Angelegenheit eine übermäßige Belastung des Dienstes darstellt. Um die Quelle anzugeben, musste ich persönlich, anstatt die übliche Adresse einzugeben,
hierher gehen, den Spiegel auswählen, den ich dort mag, und die Adresse manuell in das Installationsfenster eingeben. Es ist wichtig zu
beachten, dass Sie den Pfad zu dem Ordner angeben müssen, in dem sich das
Repodata-Verzeichnis befindet . Zum Beispiel
mirror.corbina.net/pub/Linux/centos/8/BaseOS/x86_64/os .
Festplattenausfall
Diese Frage ist meiner Meinung nach eher religiös. Jeder Administrator hat seine eigene Position zu diesem Thema. Aber ich teile immer noch meinen Standpunkt zu dieser Frage.
Ja, im Prinzip können Sie den gesamten Platz der Wurzel zuordnen und arbeiten, meistens ist es sogar ganz gut. Warum dann einen Garten mit verschiedenen Abschnitten umzäunen? - Die Hauptgründe dafür sind meiner Meinung nach 2: Quoten und Portabilität.
Wenn beispielsweise ein Fehler aufgetreten ist und Fehler im Hauptdatenbereich aufgetreten sind, möchte ich das System trotzdem laden und Wiederbelebungsmaßnahmen durchführen können. Daher ordne ich persönlich eine separate Partition unter / boot zu. Da liegt der Kernel und der Bootloader. Normalerweise reichen 500 Megabyte aus, aber in seltenen Fällen kann es länger dauern. Da wir bereits daran gewöhnt sind, Speicherplatz mit Terabyte zu messen, ordne ich diesem Abschnitt 2 GB zu. Und hier ist es wichtig, dass es nicht lvm gemacht werden kann.
Als nächstes kommt die Wurzel des Systems. Für eine normale Installation benötigte ich nie mehr als 4 GB pro System, aber bei geplanten Ereignissen verwende ich häufig das Verzeichnis / tmp, um Distributionen zu entpacken, und ich sehe keinen Sinn darin, es als separaten Abschnitt hervorzuheben - in modernen Systemen wird es automatisch bereinigt, daher füllt es sich nicht . Also ordne ich unter dem Stamm 8 GB zu.
Tauschen ... Im Großen und Ganzen gibt es wenig praktischen Nutzen daraus. Wenn Sie begonnen haben, Swap auf dem Server zu verwenden, bedeutet dies heute in der realen Welt nur, dass der Server mehr RAM hinzufügen muss. Andernfalls sind Leistungsprobleme garantiert (oder ein Programm hat einen Speicherverlust). Daher dient dieser Abschnitt nur zu Diagnosezwecken. Daher sind 2 GB eine große Zahl. Ja, egal wie viel Speicher der Server hat. Ja, ich habe alle Artikel gelesen, in denen über das Verhältnis von Speicher zu Auslagerungsvolumen geschrieben wurde ... IMHO, sie sind veraltet. Für 10 Jahre Praxis war dies für mich nie nützlich. Vor 15 Jahren habe ich sie benutzt, ja.
Jeder kann entscheiden, ob / zu Hause in einem separaten Abschnitt IMHO zuweisen. Wenn jemand dieses Verzeichnis auf dem Server aktiv verwendet, ist es besser, es hervorzuheben. Wenn niemand - kein Grund.
Als nächstes / var. Meiner Meinung nach ist es notwendig, es herauszustellen. Für den Anfang können Sie sich auf eine 4-GB-Nummer beschränken und dann, wie es geht. Und ja, mit "wie es geht" meine ich das
- Erstens können Sie jederzeit eine andere Festplatte in das Unterverzeichnis / var einhängen (was ich später anhand eines Beispiels zeigen werde).
- Zweitens haben wir lvm - Sie können immer hinzufügen. Und normalerweise müssen Sie hinzufügen, wenn zu viele Protokolle dort eingehen. Aber ich konnte diese Zahl noch nie im Voraus vorhersagen, also beginne ich mit 2 GB und schaue dann.
Der nicht zugewiesene Speicherplatz bleibt in der Datenträgergruppe frei, Sie können ihn später jederzeit verwenden.
LVM
Es ist sinnvoll,
alle Partitionen außer / boot in LVM zu erstellen. Ja, einschließlich Tausch. Ja, der Austausch für alle Spitzen sollte am Anfang der Festplatte erfolgen, und im Fall von LVM kann dessen Position im Prinzip nicht bestimmt werden. Aber wie ich oben geschrieben habe, sollte Ihr System
überhaupt keinen Swap verwenden. Daher spielt es keine Rolle, wo er ist. Nun, nicht '95 leben wir ehrlich!
Darüber hinaus gibt es in LVM mehrere grundlegende Entitäten, mit denen Sie leben können müssen:
- physisches Volumen
- Volumengruppe
- logisches Volumen
Physische Volumes werden zusammen gruppiert, wobei sich jedes physische Volume nur in einer Gruppe befindet und sich die Gruppe auf mehreren physischen Volumes gleichzeitig befinden kann.
Und logische Volumes gehören jeweils zur selben Gruppe.
Aber ... Wir sind verdammt noch mal das 21. Jahrhundert auf dem Hof. Und die Server sind virtuell. Es macht keinen Sinn, auf sie dieselben Mechanismen anzuwenden, die auf physische angewendet wurden. Und für virtuelle ist es wichtig, dass die Daten vom System getrennt sind! Dies ist insbesondere für die Möglichkeit sehr wichtig, Daten schnell auf eine andere virtuelle Maschine umzuschalten (z. B. beim Umschalten auf ein neues Betriebssystem) und im Allgemeinen für alle möglichen nützlichen Vorteile (z. B. getrennte Sicherungen nach Abschnitten mithilfe des Hypervisors). Daher wird eine Datenträgergruppe für das System verwendet, und notwendigerweise wird eine andere für Daten verwendet! Diese logische Trennung hilft viel im Leben!
Wenn Sie beim Erstellen einer virtuellen Maschine nur eine virtuelle Festplatte erstellt haben, ist die Konfiguration beendet. Und wenn zwei, dann markieren Sie die zweite noch nicht.
Wir starten die Installation.Nach der Installation
Das frisch installierte System wurde also endlich hochgefahren. Das erste, was überprüft werden muss, ist das Internet.
ping ya.ru
Gibt es eine Antwort? - Gut, drücken Sie Strg-C.
Wenn nicht, richten Sie das Netzwerk ein, es gibt kein Leben ohne dies, aber in meinem Artikel geht es nicht darum.
Wenn wir nicht schon unter der Wurzel sind, gehen wir unter die Wurzel, denn um
so viele Befehle mit sudo einzugeben, vlom ich persönlich (und paranoide Admins vergeben mir):
sudo -i
Jetzt tippen wir als erstes
dnf -y update
Und wenn Sie diesen Artikel im Jahr 2019 lesen, wird höchstwahrscheinlich nichts passieren, aber es war einen Versuch wert.
Konfigurieren Sie nun das verbleibende Laufwerk
Angenommen, wir hatten eine xvda-Partition mit einem System, dann ist die Datenfestplatte xvdb. Ok
Die meisten Tipps beginnen mit den Worten "Starten Sie fdisk und erstellen Sie eine Partition ...".
Das
ist also nicht wahr !
Ich werde den Pfannkuchen noch einmal wiederholen, weil es wichtig ist! In diesem Fall ist es schädlich, Partitionen darauf zu erstellen, wenn Sie mit LVM arbeiten, das ein Ganzes belegt, auch wenn es sich um eine virtuelle Festplatte handelt! Jedes Wort ist in diesem Satz wichtig. Wenn wir ohne LVM arbeiten, ist es notwendig. Wenn wir auf dem Festplattensystem und Daten sagen - es ist notwendig. Wenn wir aus irgendeinem Grund die Hälfte der Festplatte leer lassen müssen - auch notwendig. Aber normalerweise sind alle diese Annahmen rein theoretisch. Wenn wir dem vorhandenen Abschnitt Orte hinzufügen möchten, ist dies mit dieser Konfiguration am einfachsten. Und die einfache Verwaltung überwiegt so sehr, dass wir uns bewusst dieser Konfiguration zuwenden.
Und der Vorteil ist, dass Sie, wenn Sie den Datenbereich erweitern möchten, dem virtuellen Bereich nur Speicherplatz hinzufügen und dann die Gruppe mit vgextend erweitern. In seltenen Fällen kann etwas anderes erforderlich sein, aber zumindest müssen Sie am Anfang nicht das logische erweitern, was bereits nett ist. Um dieses Volume selbst zu erweitern, wird empfohlen, das vorhandene am Anfang zu löschen und dann ein neues zu erstellen. Dies sieht nicht besonders gut aus und kann nicht live durchgeführt werden. Die Erweiterung gemäß dem von mir angegebenen Szenario kann im laufenden Betrieb durchgeführt werden, ohne dass die Partition ausgehängt werden muss.
Insgesamt erstellen wir ein physisches Volume, dann eine Gruppe von Volumes, einschließlich dieses Volumes, und dann einen Abschnitt für unseren Server:
pvcreate /dev/xvdb vgcreate data /dev/xvdb lvcreate -n www -L40G data mke2fs -t ext4 /dev/mapper/data-www
Hier können Sie anstelle des Großbuchstabens "L" (und der Größe in GB) eine kleine angeben und dann die relative Größe anstelle der absoluten Größe angeben. Um beispielsweise die Hälfte des derzeit in der Datenträgergruppe verfügbaren Speicherplatzes zu verwenden, müssen Sie "-l + 50% FREE" angeben.
Und der letzte Befehl formatiert die Partition im ext4-Dateisystem (das in meiner Praxis bisher die größte Stabilität zeigt, falls alles kaputt geht, also bevorzuge ich es).
Montieren Sie nun die Partition an der richtigen Stelle. Fügen Sie dazu die richtige Zeile zu / etc / fstab hinzu:
/dev/mapper/data-www /var/www ext4 defaults 1 2
Und wir tippen
mount /var/www
Wenn ein Fehler auftritt, schlagen wir Alarm! Weil es bedeutet, dass wir einen Fehler in / etc / fstab haben. Und dass wir beim nächsten Neustart sehr große Probleme haben werden. Das System bootet möglicherweise überhaupt nicht, was für Cloud-Dienste oft sehr traurig ist. Daher müssen Sie entweder die zuletzt angehängte Zeile dringend korrigieren oder ganz löschen! Aus diesem Grund haben wir nicht begonnen, den Befehl mount manuell zu schreiben - dann hätten wir keine so hervorragende Gelegenheit gehabt, die Konfiguration von Direct-to-Home-Appliances zu überprüfen.
Jetzt stellen wir tatsächlich alles, was wir wollten, und öffnen die Ports unter dem Web:
dnf groupinstall "Development Tools" dnf -y install httpd @nodejs @redis php firewall-cmd --add-service http --permanent firewall-cmd --add-service https --permanent
Optional können Sie die Datenbank auch hier ablegen, aber ich persönlich versuche, sie vom Webserver getrennt zu halten. Obwohl es schneller ist, sie in der Nähe zu halten, ja. Die Geschwindigkeit virtueller Netzwerkadapter liegt normalerweise im Gigabit-Bereich, und wenn Sie auf demselben Computer arbeiten, erfolgt der Zugriff fast sofort. Aber weniger sicher. Hier ist wem wichtiger.
Fügen Sie nun den Parameter zur Konfigurationsdatei hinzu (erstellen Sie eine neue, moderne CentOS-Ideologie wie diese).
echo "vm.overcommit_memory = 1"> /etc/sysctl.d/98-sysctl.conf
Starten Sie den Server neu.
In den Kommentaren wurde ich beschimpft, weil ich Ihnen geraten habe, SeLinux auszuschalten. Deshalb werde ich das Problem beheben und darüber schreiben, dass Sie danach daran denken müssen, SeLinux zu konfigurieren.
Eigentlich Gewinn! :) :)