From ded51ef4f52ca88dc75c2d3f0cea1597c7fd5c44 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Fri, 16 Feb 2018 13:42:28 +0100 Subject: [vmstore] Simplify permissions --- modules-available/vmstore/lang/de/permissions.json | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'modules-available/vmstore/lang/de') diff --git a/modules-available/vmstore/lang/de/permissions.json b/modules-available/vmstore/lang/de/permissions.json index f3148ea8..1f8d18d7 100644 --- a/modules-available/vmstore/lang/de/permissions.json +++ b/modules-available/vmstore/lang/de/permissions.json @@ -1,5 +1,3 @@ { - "choose.internal": "Internen Speicher auswählen.", - "choose.nfs": "Einen NFS Netzwerkspeicher auswählen.", - "choose.cifs": "Einen CIFS Netzwerkspeicher auswählen." + "edit": "Den verwendeten VM-Speicher konfigurieren." } \ No newline at end of file -- cgit v1.2.3-55-g7522 From 651a4082d0d2d6cebfd3532ea6617dffdea2aec6 Mon Sep 17 00:00:00 2001 From: Simon Rettberg Date: Wed, 21 Mar 2018 11:22:18 +0100 Subject: [vmstore] Add fields to specify mount options --- inc/taskmanagercallback.inc.php | 3 ++- inc/trigger.inc.php | 7 +++++++ modules-available/vmstore/lang/de/template-tags.json | 4 ++-- modules-available/vmstore/lang/en/template-tags.json | 4 ++-- modules-available/vmstore/page.inc.php | 2 +- modules-available/vmstore/templates/page-vmstore.html | 6 ++++++ 6 files changed, 20 insertions(+), 6 deletions(-) (limited to 'modules-available/vmstore/lang/de') diff --git a/inc/taskmanagercallback.inc.php b/inc/taskmanagercallback.inc.php index 114530cf..55e01ba2 100644 --- a/inc/taskmanagercallback.inc.php +++ b/inc/taskmanagercallback.inc.php @@ -172,7 +172,8 @@ class TaskmanagerCallback Property::setVmStoreConfig($args); return; } - if ($task['data']['exitCode'] > 0) { + // If code is 99 then the script failed to even unmount -- don't change anything + if ($task['data']['exitCode'] != 99) { // Manual mount failed with non-taskmanager related error - reset storage type to reflect situation $data = Property::getVmStoreConfig(); if (isset($data['storetype'])) { diff --git a/inc/trigger.inc.php b/inc/trigger.inc.php index 2af73872..f055d384 100644 --- a/inc/trigger.inc.php +++ b/inc/trigger.inc.php @@ -127,14 +127,21 @@ class Trigger } if ($storetype === 'nfs') { $addr = $vmstore['nfsaddr']; + $opts = 'nfsopts'; } elseif ($storetype === 'cifs') { $addr = $vmstore['cifsaddr']; + $opts = 'cifsopts'; } else { + $opts = null; $addr = 'null'; } + if (isset($vmstore[$opts])) { + $opts = $vmstore[$opts]; + } return Taskmanager::submit('MountVmStore', array( 'address' => $addr, 'type' => 'images', + 'opts' => $opts, 'username' => $vmstore['cifsuser'], 'password' => $vmstore['cifspasswd'] )); diff --git a/modules-available/vmstore/lang/de/template-tags.json b/modules-available/vmstore/lang/de/template-tags.json index 0b56d84f..021e019b 100644 --- a/modules-available/vmstore/lang/de/template-tags.json +++ b/modules-available/vmstore/lang/de/template-tags.json @@ -9,7 +9,7 @@ "lang_nfsHelp3": "Die erste Zeile erlaubt den Lese- und Schreibzugriff des\r\nSatellitenservers. Die zweite Zeile erteilt allen anderen Rechnern\r\nausschlie\u00dflich Lesezugriff. Sie k\u00f6nnen dies nat\u00fcrlich auch auf\r\nspezielle Subnetze oder IP-Bereiche beschr\u00e4nken.", "lang_nfsHelp4": "Wenn exklusiv DNBD3 verwendet wird, kann die zweite Zeile ausgelassen\r\nwerden. Dies erh\u00f6ht die Sicherheit.", "lang_noAdditionalInformation": "Keine weitere Konfiguration notwendig", - "lang_path": "Pfad", + "lang_optionalMountOptions": "Zu verwendende Mount-Optionen (optional):", "lang_readOnly": "Nur-Lese-Zugangsdaten", "lang_readWrite": "Lese\/Schreib-Zugangsdaten", "lang_vmLocation": "VM Speicherort", @@ -19,4 +19,4 @@ "lang_vmLocationHelp2": "Im Produktivbetrieb bietet es sich an, hierf\u00fcr einen performanten\r\nNetzwerkspeicher zu benutzen. Dieser Netzwerkspeicher kann per NFS oder\r\nCIFS\/SMB eingebunden werden. In jedem Fall muss sichergestellt werden,\r\ndass der Satellitenserver zum Hinzuf\u00fcgen neuer Virtueller Maschinen\r\nSchreibzugriff auf diesen Netzwerkspeicher hat. Bei der Nutzung von\r\nNFSv3 kann dies IP-Basiert eingerichtet werden, f\u00fcr die Nutzung von\r\nCIFS\/SMB k\u00f6nnen Sie Zugangsdaten angeben, die zum Schreiben\r\nberechtigen.", "lang_vmLocationHelp3": "Im Fall von NFS und CIFS ben\u00f6tigen die bwLehrpool-Clients\r\nausschlie\u00dflich Lesezugriff auf den Netzwerkspeicher (und sollten aus\r\nSicherheitsgr\u00fcnden auch wirklich nur lesen k\u00f6nnen). Wenn Sie exklusiv\r\nDNBD3 verwenden, sind f\u00fcr die Clients keine Freigaben oder\r\nBerechtigungen notwendig, da der Zugriff \u00fcber den Sallitenserver\r\nstattfindet.", "lang_vmLocationHelp4": "Sie k\u00f6nnen DNBD3 entweder exklusiv oder mit Fallback auf NFS\/CIFS verwenden. Im exklusiven Modus wird der Zugriff der Clients auf den kompletten VM-Speicher verhindert bzw. erschwert. Die Clients ben\u00f6tigen keinerlei Berechtigungen auf dem konfigurierten Share. Wenn Sie den Fallback Modus nutzen, werden f\u00fcr die Clients weiterhin Leseberechtigungen ben\u00f6tigt." -} +} \ No newline at end of file diff --git a/modules-available/vmstore/lang/en/template-tags.json b/modules-available/vmstore/lang/en/template-tags.json index 1e712b13..5ec68318 100644 --- a/modules-available/vmstore/lang/en/template-tags.json +++ b/modules-available/vmstore/lang/en/template-tags.json @@ -9,7 +9,7 @@ "lang_nfsHelp3": "The first line allows read\/write access for the satellite server. The second line grants read-only access for every other IP address. You could limit the second line to specific IP ranges only if desired.", "lang_nfsHelp4": "If using DNBD3 in exclusive mode, you can remove the second line completely, so only the satellite server has access to the NFS store.", "lang_noAdditionalInformation": "No additional cofiguration required", - "lang_path": "Path", + "lang_optionalMountOptions": "Mount options to use (optional):", "lang_readOnly": "Read-only Access", "lang_readWrite": "Read\/Write Access", "lang_vmLocation": "VM Storage Location", @@ -19,4 +19,4 @@ "lang_vmLocationHelp2": "In productive operation, it makes sense for this to use a high-performance network storage. This network storage can be integrated via NFS or CIFS \/ SMB. In any case, it must be ensured that the satellite server has write access to this network storage to add a new Virtual Machine . When using NFSv3 this can be set up IP-based, for the use of CIFS \/ SMB, you can access data disclosures that would entitle them to write.", "lang_vmLocationHelp3": "The bwLehrpool clients only need read access to the network storage (and for security reasons, really can only read). In CIFS \/ SMB You can do this most easily by allowing passwordless guest access with read access to the share.", "lang_vmLocationHelp4": "You can use DNBD3 exclusively or with NFS\/CIFS as fallback. In exclusive mode, you can deny direct access to the NFS\/CIFS store for clients, to prevent anyone from browsing the VM store directly. In fallback mode, the clients first try to use DNBD3 to run a VM and if that fails, they use NFS\/CIFS directly." -} +} \ No newline at end of file diff --git a/modules-available/vmstore/page.inc.php b/modules-available/vmstore/page.inc.php index 126e56d3..88b27811 100644 --- a/modules-available/vmstore/page.inc.php +++ b/modules-available/vmstore/page.inc.php @@ -36,7 +36,7 @@ class Page_VmStore extends Page private function setStore() { $vmstore = array(); - foreach (array('storetype', 'nfsaddr', 'cifsaddr', 'cifsuser', 'cifspasswd', 'cifsuserro', 'cifspasswdro') as $key) { + foreach (array('storetype', 'nfsaddr', 'nfsopts', 'cifsaddr', 'cifsuser', 'cifspasswd', 'cifsuserro', 'cifspasswdro', 'cifsopts') as $key) { $vmstore[$key] = trim(Request::post($key, '', 'string')); } $storetype = $vmstore['storetype']; diff --git a/modules-available/vmstore/templates/page-vmstore.html b/modules-available/vmstore/templates/page-vmstore.html index 10eccc68..0e1ad601 100644 --- a/modules-available/vmstore/templates/page-vmstore.html +++ b/modules-available/vmstore/templates/page-vmstore.html @@ -32,6 +32,9 @@
+
+ +
@@ -49,6 +52,9 @@
+ + +
-- cgit v1.2.3-55-g7522 From c00f1228aec01e84329025df4ad11ffb5a461d99 Mon Sep 17 00:00:00 2001 From: Steffen Ritter Date: Tue, 24 Apr 2018 15:47:53 +0200 Subject: [translation] Satelliten-Server -> Satellitenserver --- modules-available/dnbd3/lang/de/template-tags.json | 2 +- modules-available/main/lang/de/template-tags.json | 4 ++-- modules-available/sysconfig/lang/de/template-tags.json | 2 +- modules-available/systemstatus/lang/de/template-tags.json | 2 +- modules-available/vmstore/lang/de/template-tags.json | 2 +- 5 files changed, 6 insertions(+), 6 deletions(-) (limited to 'modules-available/vmstore/lang/de') diff --git a/modules-available/dnbd3/lang/de/template-tags.json b/modules-available/dnbd3/lang/de/template-tags.json index 5158a999..22c74b7d 100644 --- a/modules-available/dnbd3/lang/de/template-tags.json +++ b/modules-available/dnbd3/lang/de/template-tags.json @@ -40,7 +40,7 @@ "lang_manageAccessTo": "Zugriff auf Server festlegen:", "lang_managedServer": "Automatisch konfigurierter DNBD3-Proxy", "lang_managedServerAdd": "Automatisch konfigurierten Proxy hinzuf\u00fcgen", - "lang_managedServerHelp": "Automatisch konfigurierte DNBD3-Proxies booten wie gew\u00f6hnliche bwLehrpool-Clients via PXE \u00fcber den Satelliten-Server. Sobald ein bwLehrpool-Client als DNBD3-Proxy konfiguriert wird, erh\u00e4lt er beim Booten eine gesonderte Konfiguration, sodass er fortan exklusiv als DNBD3-Proxy arbeitet, und nicht mehr als Arbeitsstation zur Verf\u00fcgung steht. Der Vorteil ist, dass die Konfiguration automatisiert erfolgt, und durch w\u00f6chentliche Reboots sichergestellt wird, dass eventuelle Updates des MiniLinux angewendet werden. In diesem Fall legen Sie bitte eine Partition mit der ID 45 auf der Festplatte des Proxy-Servers an; diese wird persistent Behandelt und im Gegensatz zur ID44-Partition nicht beim Booten formatiert. Generell sollte diese Partition so gro\u00df wie m\u00f6glich sein, abh\u00e4ngig von der Anzahl der genutzten VMs. Bei Platzmangel l\u00f6scht der Proxy automatisch die VM, die am l\u00e4ngsten nicht verwendet wurde, um neuen VMs Platz zu machen. Weitere Informationen dazu finden Sie im Wiki.", + "lang_managedServerHelp": "Automatisch konfigurierte DNBD3-Proxies booten wie gew\u00f6hnliche bwLehrpool-Clients via PXE \u00fcber den Satellitenserver. Sobald ein bwLehrpool-Client als DNBD3-Proxy konfiguriert wird, erh\u00e4lt er beim Booten eine gesonderte Konfiguration, sodass er fortan exklusiv als DNBD3-Proxy arbeitet, und nicht mehr als Arbeitsstation zur Verf\u00fcgung steht. Der Vorteil ist, dass die Konfiguration automatisiert erfolgt, und durch w\u00f6chentliche Reboots sichergestellt wird, dass eventuelle Updates des MiniLinux angewendet werden. In diesem Fall legen Sie bitte eine Partition mit der ID 45 auf der Festplatte des Proxy-Servers an; diese wird persistent Behandelt und im Gegensatz zur ID44-Partition nicht beim Booten formatiert. Generell sollte diese Partition so gro\u00df wie m\u00f6glich sein, abh\u00e4ngig von der Anzahl der genutzten VMs. Bei Platzmangel l\u00f6scht der Proxy automatisch die VM, die am l\u00e4ngsten nicht verwendet wurde, um neuen VMs Platz zu machen. Weitere Informationen dazu finden Sie im Wiki.", "lang_manualRefresh": "Jetzt abfragen", "lang_manualRefreshInfo": "Normalerweile werden die in dieser Tabelle angezeigten Daten alle 5 Minuten aktualisiert. Mit diesem Button k\u00f6nnen Sie die Daten sofort aktualisieren.", "lang_numFails": "Fehler", diff --git a/modules-available/main/lang/de/template-tags.json b/modules-available/main/lang/de/template-tags.json index 00e27502..327e19e4 100644 --- a/modules-available/main/lang/de/template-tags.json +++ b/modules-available/main/lang/de/template-tags.json @@ -1,7 +1,7 @@ { "lang_browserTime": "Browser", "lang_changePassword": "Passwort \u00e4ndern", - "lang_clockDriftWarn": "Die Uhrzeit des Satelliten-Servers weicht von der Uhrzeit des lokalen Systems\/Browsers ab. Bitte stellen Sie sicher, dass die Uhrzeit des Servers korrekt ist, da sonst zeitabh\u00e4ngige Einstellungen und Aufgaben evtl. nicht korrekt durchgef\u00fchrt werden.", + "lang_clockDriftWarn": "Die Uhrzeit des Satellitenservers weicht von der Uhrzeit des lokalen Systems\/Browsers ab. Bitte stellen Sie sicher, dass die Uhrzeit des Servers korrekt ist, da sonst zeitabh\u00e4ngige Einstellungen und Aufgaben evtl. nicht korrekt durchgef\u00fchrt werden.", "lang_goTo": "Gehe zu", "lang_intro": "Dies ist die bwLehrpool Konfigurationsoberfl\u00e4che.", "lang_introGuest": "Dies ist das Administrations-Interface der lokalen bwLehrpool-Installation. Bitte authentifizieren Sie sich, um Einstellungen vorzunehmen.", @@ -11,7 +11,7 @@ "lang_login": "Anmelden", "lang_logout": "Abmelden", "lang_needsSetup": "Einrichtung unvollst\u00e4ndig", - "lang_noExistingAccount": "Es existiert noch kein Administrator-Zugang f\u00fcr diesen Satelliten-Server.", + "lang_noExistingAccount": "Es existiert noch kein Administrator-Zugang f\u00fcr diesen Satellitenserver.", "lang_register": "Registrieren", "lang_serverTime": "Server", "lang_toggleNavigation": "Navigation ein\/ausblenden", diff --git a/modules-available/sysconfig/lang/de/template-tags.json b/modules-available/sysconfig/lang/de/template-tags.json index c2738ca4..cea8e282 100644 --- a/modules-available/sysconfig/lang/de/template-tags.json +++ b/modules-available/sysconfig/lang/de/template-tags.json @@ -60,7 +60,7 @@ "lang_ldapAttrMountOpts": "LDAP-Attribut f\u00fcr Mount-Optionen", "lang_ldapStarted": "Der LDAP-Proxy wurde gestartet", "lang_ldapText1": "Mit diesem Wizard k\u00f6nnen Sie Authentifizierung gegen einen LDAP-Server einrichten.", - "lang_ldapText2": "Zu diesem Zweck wird ein LDAP-Proxy auf dem Satelliten-Server gestartet. Dies bedeutet, dass der LDAP-Server von diesem Server aus erreichbar sein muss. Die Pool-PCs hingegen m\u00fcssen nicht direkt mit dem LDAP-Server kommunizieren k\u00f6nnen.", + "lang_ldapText2": "Zu diesem Zweck wird ein LDAP-Proxy auf dem Satellitenserver gestartet. Dies bedeutet, dass der LDAP-Server von diesem Server aus erreichbar sein muss. Die Pool-PCs hingegen m\u00fcssen nicht direkt mit dem LDAP-Server kommunizieren k\u00f6nnen.", "lang_legend": "Legende", "lang_listenPort": "Listen port", "lang_listenPortInfo": "Der Port, auf dem der sshd lauscht. Der offizielle Standard ist 22.", diff --git a/modules-available/systemstatus/lang/de/template-tags.json b/modules-available/systemstatus/lang/de/template-tags.json index 89066257..eeb75f9a 100644 --- a/modules-available/systemstatus/lang/de/template-tags.json +++ b/modules-available/systemstatus/lang/de/template-tags.json @@ -26,7 +26,7 @@ "lang_storeMissingExpected": "VM-Store nicht eingebunden. Erwartet:", "lang_storeNotConfigured": "Kein VM-Store konfiguriert!", "lang_swapUsage": "swap-Nutzung", - "lang_swapWarning": "Es wird swap-Speicher genutzt. Dies kann ein Hinweis darauf sein, dass dem Satelliten-Server zu wenig physikalischer Speicher zur Verf\u00fcgung steht. Im Falle von Performance-Problemen oder Instabilit\u00e4t des Servers sollten Sie erw\u00e4gen, den Server mit mehr RAM auszustatten.", + "lang_swapWarning": "Es wird swap-Speicher genutzt. Dies kann ein Hinweis darauf sein, dass dem Satellitenserver zu wenig physikalischer Speicher zur Verf\u00fcgung steht. Im Falle von Performance-Problemen oder Instabilit\u00e4t des Servers sollten Sie erw\u00e4gen, den Server mit mehr RAM auszustatten.", "lang_system": "System", "lang_systemPartition": "Systempartition", "lang_systemStoreError": "Fehler beim Ermitteln des verf\u00fcgbaren Systemspeichers", diff --git a/modules-available/vmstore/lang/de/template-tags.json b/modules-available/vmstore/lang/de/template-tags.json index 021e019b..8b6661c2 100644 --- a/modules-available/vmstore/lang/de/template-tags.json +++ b/modules-available/vmstore/lang/de/template-tags.json @@ -4,7 +4,7 @@ "lang_cifsHelp3": "Wenn exklusiv DNBD3 verwendet wird, k\u00f6nnen Sie den passwortlosen\r\nGastzugriff deaktivieren und die Zeile \"Nur-Lese-Zugangsdaten\" leer\r\nlassen. Dies erh\u00f6ht die Sicherheit.", "lang_configure": "Konfigurieren", "lang_internal": "Intern", - "lang_nfsHelp1": "Ben\u00f6tigt wird ein NFSv4\/3-Share, der f\u00fcr den Satelliten-Server schreibbar, und f\u00fcr die Arbeitsstationen lesbar ist. Beispielkonfiguration auf dem NFS-Server, wenn der Satelliten-Server die Adresse 1.2.3.4 hat:", + "lang_nfsHelp1": "Ben\u00f6tigt wird ein NFSv4\/3-Share, der f\u00fcr den Satellitenserver schreibbar, und f\u00fcr die Arbeitsstationen lesbar ist. Beispielkonfiguration auf dem NFS-Server, wenn der Satellitenserver die Adresse 1.2.3.4 hat:", "lang_nfsHelp2": "Alternative Konfiguration mittels all_squash. In diesem Fall muss das Verzeichnis auf dem Server dem Benutzer mit der uid 1234 geh\u00f6ren:", "lang_nfsHelp3": "Die erste Zeile erlaubt den Lese- und Schreibzugriff des\r\nSatellitenservers. Die zweite Zeile erteilt allen anderen Rechnern\r\nausschlie\u00dflich Lesezugriff. Sie k\u00f6nnen dies nat\u00fcrlich auch auf\r\nspezielle Subnetze oder IP-Bereiche beschr\u00e4nken.", "lang_nfsHelp4": "Wenn exklusiv DNBD3 verwendet wird, kann die zweite Zeile ausgelassen\r\nwerden. Dies erh\u00f6ht die Sicherheit.", -- cgit v1.2.3-55-g7522