Ein Tool, mit dem Clustercomputer auf AWS einfach erstellt werden können Offizielle Version von Starcluster Klicken Sie hier für Erste Schritte
Aktuelle Umgebung
- ASUS C300
- Chrome OS(linux-64)
- miniconda3-3.18.3
Erstellen Sie einen Benutzer in der AWS-Konsole (https://console.aws.amazon.com/iam/home?region=ap-northeast-1#users/).
--Erstellen Sie einen neuen Benutzer --Wählen Sie Benutzer> Berechtigungen> Richtlinie anhängen> Administratorzugriff
Ich weiß nicht, ob andere Rollen akzeptabel sind
--Credentials> Zugriffsschlüssel erstellen> Anmeldeinformationen herunterladen
-Erstellen Sie Schlüsselpaar> Laden Sie die PEM-Datei herunter
--Erstellen Sie eine virtuelle Umgebung mit Anaconda
conda create -n cfn python=2.7 boto boto3 #Legen Sie den Boto vorerst in den Conda-Beamten
source activate cfn
pip install cfncluster
(cfn)chronos@localhost / $ cfncluster configure
Geben Sie verschiedene Informationen in einem Assistentenformat ein --Cluster-Vorlage: # Name des Cluster-Computers. Diesmal mycluster --AWS Access Key ID: # Siehe Anmeldeinformationen --AWS Secret Access Key ID: # Auf Anmeldeinformationen verweisen --AWS Region ID: # Auswahlmöglichkeiten werden angezeigt. Diesmal ap-nordost-1 --VPC-Name: #VPC-Name kann alles sein, diesmal Test --Key Name: #Wählen Sie den Schlüssel, den Sie gerade erstellt haben --VPC ID: # Auswahlmöglichkeiten werden angezeigt, wählen Sie sie aus
Hier wurde die eingestellte Konfigurationsdatei generiert ~/.cfncluster/config
[aws]
aws_region_name = ap-northeast-1
aws_access_key_id = xxxxxxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
[cluster mycluster]
vpc_settings = test
key_name = xxxxxx
[vpc test]
master_subnet_id = subnet-xxxxxxxx
vpc_id = vpc-xxxxxxxx
[global]
update_check = true
sanity_check = true
cluster_template = mycluster
Ausführliche Einstellungen finden Sie unter hier.
Fügen Sie es nach dem Abschnitt [Cluster] in der Konfigurationsdatei hinzu und es ist in Ordnung Diese Elemente werden mit Standardwerten ohne Einstellung gestartet
--master_instance_type: Der Standardwert für die Masterinstanz ist t2.micro --compute_instance_type: Der Standardwert für die Rechenknoteninstanz ist t2.micro --initial_queue_size: Anzahl der Rechenknoten, die zuerst gestartet werden sollen. Standard ist 2 --maintain_initial_size: Gibt an, ob automatisch skaliert werden soll. Beachten Sie, dass der Standardwert false ist (Skalierung), was das Gegenteil des Gefühls ist. --max_queue_size: Maximale Anzahl von Rechenknoten bei der automatischen Skalierung. Standard ist 10 --cluster_type: Gibt an, ob ein Cluster bei Bedarf oder vor Ort eingerichtet werden soll. Der Standardwert ist ondemand.
Auch wenn Sie spot angeben, ist MasterServer ondemand (da es ein Problem darstellt, wenn es in die Mitte fällt)
--spot_price: Gebotsbetrag, wenn cluster_type = spot. defalut = 0,00 --custom_ami: AMI kann angegeben werden
Ich habe die folgenden Elemente hinzugefügt und als Testversion gestartet
maintain_initial_size = true
initial_queue_size = 1
cluster_type = spot
compute_instance_type = m3.medium
spot_price = 0.02
(cfn)chronos@localhost / $ cfncluster create mycluster
Im Vergleich zu Sternhaufen nimmt es viel Zeit in Anspruch. Mit 1 Master und 1 Rechenknoten dauert es weniger als 20 Minuten Die Aufteilung ist ungefähr wie folgt
Wenn das Gebot zu billig ist, wird EC2 zu einem Zombie, selbst wenn Sie cfncluster mit Strg-x stoppen. Stoppen Sie es richtig mit
cfncluster delete mycluster
.
Beim Start mit cfn wird auch das Serverüberwachungstool Ganglia gestartet.
Output:"GangliaPublicURL"="http://xx.xxx.xxx.xxx/ganglia/"
qhost
(cfn)chronos@localhost / $ cfncluster delete mycluster
-Es gibt ein Gefühl der Sicherheit, weil es echt ist. Aber warum ist es so langsam? --Wie vergrößern oder verkleinern Sie die Rechenknoten explizit? Update? ――Auto-Skalierung scheint interessant zu sein, wurde jedoch nicht untersucht
mkdir sshkey
cp key.pem ./sshkey/
chmod 600 ./sshkey/
sudo ssh-keygen -y -f ./sshkey/key.pem >key.pub
cp key.pem key
Importieren Sie den generierten Schlüssel (umbenannt in key.pem) und key.pub in Secure Shell.
Recommended Posts