Ich betreibe einen Webdienst durch persönliche Entwicklung. Ich habe es lange Zeit mit einem Mietserver für 500 Yen pro Monat geschafft, aber ich habe aus folgenden Gründen darüber nachgedacht, den Server zu migrieren.
・ Middleware kann nicht frei installiert werden ・ Kann nicht vergrößert werden ・ Das Zugriffsprotokoll kann nicht in Echtzeit angezeigt werden ・ Der Mietserver entscheidet über den Zeitplan für die Abschaffung von TLS1.0 / 1.1 ・ Ich möchte DKIM einstellen, um die E-Mail-Ankunftsrate zu erhöhen
Ich habe auch AWS berührt, war aber mit BigQuery in meinem Unternehmen vertraut und habe mich daher für die Verwendung der Google Cloud Platform entschieden.
Normalerweise entwickle ich Webanwendungen, daher berühre ich die Infrastruktur nur leicht, versuche sie aber nach dem Studium zu erstellen.
1 Cloud Load Balancing 1 Produktions-Web / DB-Server (Compute Engine, CentOS) 1 Webserver für die Wartung (Compute Engine, CentOS) Platzieren Sie eine Instanz des Produktions-Web / DB-Servers und des Wartungs-Webservers hinter dem Load Balancer.
Schreiben Sie den Grund für die Verwendung des Load Balancers auch auf einer nicht sehr großen Site auf.
Bei der Migration von einem Mietserver müssen Sie lediglich den A-Datensatz in die IP des Load Balancers ändern.
Wenn Sie den Server veröffentlichen, werden illegale Anfragen mit direkter IP usw. eingehen. Ein solcher Zugriff, z. B. der Zugriff auf das .git-Verzeichnis oder das Suchen nach Schwachstellendateien, verhindert, dass Anforderungen an den Produktionswebserver gesendet werden.
DB kann skaliert werden, indem es mithilfe von Cloud SQL usw. unabhängig gemacht und mehrere Produktionswebserver konfiguriert werden.
Der Load Balancer beendet SSL und der Webserver hinter dem Load Balancer hat HTTP-Zugriff. Ich denke, es ist billiger als das Entschlüsseln von SSL auf einem Webserver. Sie können Ihre Zertifikate auch auf den Load Balancer konzentrieren, wenn Sie über mehrere Webserver verfügen.
Wenn Sie beispielsweise die Produktionswebserverinstanz stoppen möchten, um ihre Leistung zu verbessern, können Sie den Load Balancer während der Wartung problemlos auf den Wartungsserver verteilen.
Ich kann keine E-Mails direkt von einer Instanz von Compute Engine senden. Daher habe ich mich für einen externen Dienst entschieden, der mit der Web-API verwendet werden kann.
Das SSL-Zertifikat verwendet Let's Encrypt. Fügen Sie das, was Sie mit dem Befehl certbot certonly auf dem Webserver erstellt haben, in den Bildschirm mit den Einstellungen für den Lastenausgleich ein. Es ist ein bisschen nervig, weil ich es alle drei Monate einmal machen muss.
Machen Sie regelmäßig Schnappschüsse Ihrer Instanzen. Snapshots können aufgenommen werden, während die Instanz ausgeführt wird. Im Notfall können Sie aus dem Snapshot eine neue Instanz erstellen.
Standardmäßig verfügen CentOS-Instanzen von Compute Engine über automatische Paketaktualisierungen, die von yum-cron aktiviert werden. Daher werden die Sicherheitspatches der installierten Pakete automatisch aktualisiert.
Wenn Sie sich beispielsweise den Aktualisierungsverlauf des PHP-Pakets ansehen, sehen Sie, dass es zuletzt automatisch auf "5.4.16-46.1.el7_7.x86_64" aktualisiert wurde.
$ sudo yum history package-list php
Loaded plugins: fastestmirror
ID | Action(s) | Package
-------------------------------------------------------------------------------
142 | Updated | php-5.4.16-46.el7.x86_64
142 | Update | 5.4.16-46.1.el7_7.x86_64
57 | Updated | php-5.4.16-45.el7.x86_64
57 | Update | 5.4.16-46.el7.x86_64
10 | Install | php-5.4.16-45.el7.x86_64
history package-list
Im Gegensatz zu dem Mietserver, der alles schützt, sind die Kosten gestiegen, aber der Freiheitsgrad bei der Entwicklung hat zugenommen, und das Serviceniveau, das bereitgestellt werden kann, hat sich ebenfalls dramatisch erhöht.
Ich möchte nach und nach die optimale Betriebsmethode finden, während ich verschiedene Dinge berühre.
Recommended Posts