Re: [pve-devel] DHCP server

2014-07-20 Thread Alexandre DERUMIER

The problem is that each node has its own copy of the lease file and
that merging is done by corosync after a node has made changes to the
file so we will need to implement some kind of two-phase commit among
the nodes taking part in the cluster. Alternatively we deside that only
one node is handling DHCP requests at a time but this will break the
concept of multi master functionality in proxmox.

Hi, Isn't it possible to filter dhcp request with iptables, on the host outside 
interface ?

Like this, each host have a dhcp server which respond only to vms hosted on the 
host.




- Mail original - 

De: Michael Rasmussen m...@datanom.net 
À: Dietmar Maurer diet...@proxmox.com 
Cc: pve-devel@pve.proxmox.com 
Envoyé: Samedi 19 Juillet 2014 18:53:34 
Objet: Re: [pve-devel] DHCP server 

On Sat, 19 Jul 2014 16:38:02 + 
Dietmar Maurer diet...@proxmox.com wrote: 

 
 just lock the file before you write (or what is the question?) 
 
I was thinking of these scenarios: 
1a) Client broadcast request for IP 
2a) Each nodes listen so each could give a reply simultaneously! 

1b) Several clients request for an IP simultaneously 
2b) Each nodes listen so each could give a reply simultaneously and 
therefore the same IP could be distributed to different clients! 

The problem is that each node has its own copy of the lease file and 
that merging is done by corosync after a node has made changes to the 
file so we will need to implement some kind of two-phase commit among 
the nodes taking part in the cluster. Alternatively we deside that only 
one node is handling DHCP requests at a time but this will break the 
concept of multi master functionality in proxmox. 

-- 
Hilsen/Regards 
Michael Rasmussen 

Get my public GnuPG keys: 
michael at rasmussen dot cc 
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0xD3C9A00E 
mir at datanom dot net 
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0xE501F51C 
mir at miras dot org 
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0xE3E80917 
-- 
/usr/games/fortune -es says: 
The trouble with eating Italian food is that five or six days later 
you're hungry again. 
-- George Miller 

___ 
pve-devel mailing list 
pve-devel@pve.proxmox.com 
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel 
___
pve-devel mailing list
pve-devel@pve.proxmox.com
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


Re: [pve-devel] DHCP server

2014-07-20 Thread Michael Rasmussen
On Sun, 20 Jul 2014 15:04:29 +0200 (CEST)
Alexandre DERUMIER aderum...@odiso.com wrote:

 
 Hi, Isn't it possible to filter dhcp request with iptables, on the host 
 outside interface ?
 
 Like this, each host have a dhcp server which respond only to vms hosted on 
 the host.
 
It should not be necessary since each host knows the MAC for each VM
running on the host and because the discover request will contain the
MAC of the client we can filter on MAC in the DHCP server. This way
only the host hosting the client will respond to the DHCP request.

-- 
Hilsen/Regards
Michael Rasmussen

Get my public GnuPG keys:
michael at rasmussen dot cc
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0xD3C9A00E
mir at datanom dot net
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0xE501F51C
mir at miras dot org
http://pgp.mit.edu:11371/pks/lookup?op=getsearch=0xE3E80917
--
/usr/games/fortune -es says:
Time is but the stream I go a-fishing in.
-- Henry David Thoreau


signature.asc
Description: PGP signature
___
pve-devel mailing list
pve-devel@pve.proxmox.com
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


Re: [pve-devel] Better translate to Spanish language

2014-07-20 Thread Dietmar Maurer
 Here you will see an excerpt of the topics pending:
 
 #: ../www/manager/qemu/Options.js:149
 ../www/manager/qemu/Options.js:154
 msgid KVM hardware virtualization
 msgstr Virtualización de Hardware KVM
 So what is the question/problem?
 The stanza isn't shown fully

fixed
 
 3-
 but gettext('Clone') is only used as verb everywhere - where exactly
 is the conflict?
 Please answer my question first.
 No conflict, It is only to be more orderly
 
 7-
  Checked by me, please use my es.po file and see it.
 I think this is also fixed - please check again.
 I have the problem with my es.po file...
 maybe you are using other es.po file?, or maybe it is because i am using a
 Windows XP as workstation and not a Linux?, and That strange, i don't see
 the words of days of the week into the es.po file.

OK, found the problem - it is fixed now.

 9-
 The name 'remote-viewer' is the name of the corresponding binary . It
 makes no sense to translate that.
  As you want, but in the spanish world, the text visor remoto (in
  Spanish) is
  is widely used by all people. I believe that we should to do the
  translation.
  I talk abaou a unix binaray file:
 I don't like, but what you say also makes sense, as you want.
 
 12-
  When you see my translation in PVE GUI, you will can understand it.
 Sorry. I can't see the error?
  No, sorry - I do not see the problem.
 Don't worry, isn't important
 
 
 OK, I uploaded the new file in git - so please do the final translations.
 For be more ordered, when you and me we review all subjects pending, and
 after, you do whatever you have to do, finally i will download the new es.po
 file for do the latest check.
 My question: I guess it is in the same web download link, right?

https://git.proxmox.com/?p=pve-manager.git;a=tree;f=po;hb=HEAD


___
pve-devel mailing list
pve-devel@pve.proxmox.com
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


Re: [pve-devel] Pool View

2014-07-20 Thread Dietmar Maurer

 We figure that since this has been so useful for us, it would most likely be
 useful for other PVE users, and would be nice to see included in PVE.
 
 Patch inline:

Hi Andrew,

please can you use 'git format-patch' and 'git send-email'? You also need to 
add a signoff line to the patch (--signoff option).

See http://pve.proxmox.com/wiki/Developer_Documentation

- Dietmar
___
pve-devel mailing list
pve-devel@pve.proxmox.com
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel


Re: [pve-devel] Pool View

2014-07-20 Thread Dietmar Maurer
here are a few comments and question (inline):

 diff -Nuarp usr/share/perl5/PVE/AccessControl.pm
 usr/share/perl5/PVE/AccessControl.pm
 --- usr/share/perl5/PVE/AccessControl.pm  2014-06-27 16:23:34.305587119
 +1200
 +++ usr/share/perl5/PVE/AccessControl.pm  2014-06-27 16:23:44.077692909
 +1200
 @@ -492,7 +492,7 @@ my $privgroups = {
      },
  };
 
 -my $valid_privs = {};
 +our $valid_privs = {};

using global vars is bad design!

  my $special_roles = {
      'NoAccess' = {}, # no priviledges
 diff -Nuarp usr/share/perl5/PVE/API2/Cluster.pm
 usr/share/perl5/PVE/API2/Cluster.pm
 --- usr/share/perl5/PVE/API2/Cluster.pm   2014-06-27 16:22:37.302970017
 +1200
 +++ usr/share/perl5/PVE/API2/Cluster.pm   2014-06-27 16:26:30.939493106
 +1200
 @@ -19,6 +19,8 @@ use PVE::RESTHandler;
  use PVE::RPCEnvironment;
  use PVE::JSONSchema qw(get_standard_option);
 
 +use PVE::AccessControl qw(valid_privs);
 +
  use base qw(PVE::RESTHandler);
 
  __PACKAGE__-register_method ({
 @@ -160,12 +162,20 @@ __PACKAGE__-register_method({
   my $vmlist = PVE::Cluster::get_vmlist() || {};
   my $idlist = $vmlist-{ids} || {};
 
 + my $storage_pool = {};
 +
 + foreach my $pool (keys(%{$usercfg-{pools}})) {
 + foreach my $storage (keys(%{$usercfg-{pools}-{$pool}-
 {storage}})) {
 + $storage_pool-{$storage}=$pool;
 + }
 + }
 +
   my $pooldata = {};
   if (!$param-{type} || $param-{type} eq 'pool') {
       foreach my $pool (keys %{$usercfg-{pools}}) {
   my $d = $usercfg-{pools}-{$pool};
 
 - next if !$rpcenv-check($authuser, /pool/$pool, [
 'Pool.Allocate' ], 1);
 + next if !$rpcenv-check_any($authuser, /pool/$pool, [keys
 $PVE::AccessControl::valid_privs], 1);

Please can you explain that change?

 
   my $entry = {
       id = /pool/$pool,
 @@ -185,9 +195,9 @@ __PACKAGE__-register_method({
 
   my $data = $idlist-{$vmid};
   my $entry = PVE::API2Tools::extract_vm_stats($vmid, $data,
 $rrd);
 - if ($entry-{uptime}) {
 -     if (my $pool = $usercfg-{vms}-{$vmid}) {
 - if (my $pe = $pooldata-{$pool}) {
 + if (my $pool = $usercfg-{vms}-{$vmid}) {
 +     if (my $pe = $pooldata-{$pool}) {
 + if ($entry-{uptime}) {
       $pe-{uptime} = $entry-{uptime} if !$pe-
 {uptime} || $entry-{uptime}  $pe-{uptime};
       $pe-{mem} = 0 if !$pe-{mem};
       $pe-{mem} += $entry-{mem};
 @@ -198,6 +208,7 @@ __PACKAGE__-register_method({
       $pe-{maxcpu} = 0 if !$pe-{maxcpu};
       $pe-{maxcpu} += $entry-{maxcpu};
   }
 + $entry-{pool} = $pe-{pool};
       }
   }
 
 @@ -228,6 +239,9 @@ __PACKAGE__-register_method({
       next if !PVE::Storage::storage_check_enabled($cfg,
 $storeid, $node, 1);
 
       my $entry =
 PVE::API2Tools::extract_storage_stats($storeid, $scfg, $node, $rrd);
 +     if (exists $storage_pool-{$entry-{storage}}) {
 + $entry-{pool}=$storage_pool-{$entry-
 {storage}};
 +     }
       push @$res, $entry;
   }
       }
 diff -Nuarp usr/share/pve-manager/css/ext-pve.css usr/share/pve-
 manager/css/ext-pve.css
 --- usr/share/pve-manager/css/ext-pve.css 2014-06-27 16:33:46.291799762
 +1200
 +++ usr/share/pve-manager/css/ext-pve.css 2014-06-27 16:34:56.083492567
 +1200
 @@ -108,7 +108,7 @@
  .x-tree-node-pool,
  .x-grid-tree-pool-expanded .x-tree-node-pool
  {
 -    background-image:url(../images/connect_established.png);
 +    background-image:url(../images/connect_established.png) !important;

why is this required?


___
pve-devel mailing list
pve-devel@pve.proxmox.com
http://pve.proxmox.com/cgi-bin/mailman/listinfo/pve-devel