Add IP Aliasing (#72)
* complete support for IP Alias's throughout panel Includes a database change and probably better allocation handling anyways closes #37
This commit is contained in:
parent
f1a3008a50
commit
e8c175f385
14 changed files with 206 additions and 76 deletions
|
@ -46,7 +46,7 @@
|
|||
<td><a href="/admin/servers/view/{{ $server->id }}">{{ $server->name }}</td>
|
||||
<td><a href="/admin/users/view/{{ $server->owner }}">{{ $server->a_ownerEmail }}</a></td>
|
||||
<td class="hidden-xs"><a href="/admin/nodes/view/{{ $server->node }}">{{ $server->a_nodeName }}</a></td>
|
||||
<td><code>{{ $server->ip }}:{{ $server->port }}</code></td>
|
||||
<td><code>{{ $server->ip_alias }}:{{ $server->port }}</code> @if($server->ip !== $server->ip_alias)<span class="label label-default">alias</span>@endif</td>
|
||||
<td class="hidden-xs"><code>{{ $server->username }}</code></td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
|
|
@ -85,11 +85,15 @@
|
|||
</tr>
|
||||
<tr>
|
||||
<td>Memory</td>
|
||||
<td><code>{{ $server->memory }}MB</code> (Swap: {{ $server->swap }}MB) (OOM Killer: <strong>{{ ($server->oom_disabled === 0) ? 'enabled' : 'disabled' }}</strong>)</td>
|
||||
<td><code>{{ $server->memory }}MB</code> / <code data-toggle="tooltip" data-placement="top" title="Swap Space">{{ $server->swap }}MB</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><abbr title="Out of Memory">OOM</abbr> Killer</td>
|
||||
<td>{!! ($server->oom_disabled === 0) ? '<span class="label label-success">enabled</span>' : '<span class="label label-default">disabled</span>' !!}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Disk Space</td>
|
||||
<td><code>{{ $server->disk }}MB</code> (Enforced: <strong>no</strong>)</td>
|
||||
<td><code>{{ $server->disk }}MB</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Block IO Weight</td>
|
||||
|
@ -103,9 +107,19 @@
|
|||
<td>Default Connection</td>
|
||||
<td><code>{{ $server->ip }}:{{ $server->port }}</code></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Connection Alias</td>
|
||||
<td>
|
||||
@if($server->ip !== $server->ip_alias)
|
||||
<code>{{ $server->ip_alias }}:{{ $server->port }}</code>
|
||||
@else
|
||||
<span class="label label-default">No Alias Assigned</span>
|
||||
@endif
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>Installed</td>
|
||||
<td>{{ ($server->installed === 1) ? 'Yes' : 'No' }}</td>
|
||||
<td>{!! ($server->installed === 1) ? '<span class="label label-success">Yes</span>' : '<span class="label label-danger">No</span>' !!}</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
@ -213,7 +227,7 @@
|
|||
<span class="input-group-addon">
|
||||
<input type="radio" @if($assignment->ip == $server->ip && $assignment->port == $server->port) checked="checked" @endif name="default" value="{{ $assignment->ip }}:{{ $assignment->port }}"/>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="{{ $assignment->ip }}:{{ $assignment->port }}" readonly />
|
||||
<input type="text" class="form-control" value="{{ $assignment->ip_alias }}:{{ $assignment->port }}@if($assignment->ip !== $assignment->ip_alias) (alias of {{ $assignment->ip }})@endif" readonly />
|
||||
</div>
|
||||
@endforeach
|
||||
</div>
|
||||
|
@ -224,7 +238,7 @@
|
|||
<div>
|
||||
<select name="add_additional[]" class="form-control" multiple>
|
||||
@foreach ($unassigned as $assignment)
|
||||
<option value="{{ $assignment->ip }}:{{ $assignment->port }}">{{ $assignment->ip }}:{{ $assignment->port }}</option>
|
||||
<option value="{{ $assignment->ip }}:{{ $assignment->port }}">{{ $assignment->ip_alias }}:{{ $assignment->port }}@if($assignment->ip !== $assignment->ip_alias) (alias of {{ $assignment->ip }})@endif</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
|
@ -237,7 +251,7 @@
|
|||
<div>
|
||||
<select name="remove_additional[]" class="form-control" multiple>
|
||||
@foreach ($assigned as $assignment)
|
||||
<option value="{{ $assignment->ip }}:{{ $assignment->port }}" @if($assignment->ip == $server->ip && $assignment->port == $server->port) disabled @endif>{{ $assignment->ip }}:{{ $assignment->port }}</option>
|
||||
<option value="{{ $assignment->ip }}:{{ $assignment->port }}" @if($assignment->ip == $server->ip && $assignment->port == $server->port) disabled @endif>{{ $assignment->ip_alias }}:{{ $assignment->port }}@if($assignment->ip !== $assignment->ip_alias) (alias of {{ $assignment->ip }})@endif</option>
|
||||
@endforeach
|
||||
</select>
|
||||
</div>
|
||||
|
|
|
@ -171,7 +171,6 @@
|
|||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Owner</th>
|
||||
<th>Connection</th>
|
||||
<th>Updated</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -180,7 +179,6 @@
|
|||
<tr>
|
||||
<td><a href="{{ route('admin.servers.view', $server->id) }}">{{ $server->name }}</a></td>
|
||||
<td><a href="{{ route('admin.users.view', $server->owner) }}">{{ $server->a_ownerEmail }}</a></td>
|
||||
<td><code>{{ $server->ip }}:{{ $server->port }}</code></td>
|
||||
<td>{{ $server->updated_at }}</td>
|
||||
</tr>
|
||||
@endforeach
|
||||
|
|
|
@ -95,9 +95,9 @@
|
|||
<thead>
|
||||
<tr>
|
||||
<th style="width:2%;"></th>
|
||||
<th>Identifier</th>
|
||||
<th>Server Name</th>
|
||||
<th>Node</th>
|
||||
<th>Connection</th>
|
||||
<th style="width:10%;"></th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -105,9 +105,9 @@
|
|||
@foreach($servers as $server)
|
||||
<tr>
|
||||
<td><a href="/server/{{ $server->uuidShort }}/"><i class="fa fa-tachometer"></i></a></td>
|
||||
<td><code>{{ $server->uuidShort }}</code></td>
|
||||
<td><a href="/admin/servers/view/{{ $server->id }}">{{ $server->name }}</a></td>
|
||||
<td>{{ $server->nodeName }}</td>
|
||||
<td><code>{{ $server->ip }}:{{ $server->port }}</code></td>
|
||||
<td>@if($server->active)<span class="label label-success">Enabled</span>@else<span class="label label-danger">Disabled</span>@endif</td>
|
||||
</td>
|
||||
@endforeach
|
||||
|
|
|
@ -59,7 +59,7 @@
|
|||
@endif
|
||||
<td><a href="/server/{{ $server->uuidShort }}">{{ $server->name }}</a></td>
|
||||
<td>{{ $server->nodeName }} ({{ $server->a_locationShort }})</td>
|
||||
<td><code>{{ $server->ip }}:{{ $server->port }}</code></td>
|
||||
<td><code>{{ $server->ip_alias }}:{{ $server->port }}</code></td>
|
||||
<td class="text-center" data-action="players">--</td>
|
||||
<td class="text-center"><span data-action="memory">--</span> / {{ $server->memory === 0 ? '∞' : $server->memory }} MB</td>
|
||||
<td class="text-center"><span data-action="cpu" data-cpumax="{{ $server->cpu }}">--</span> %</td>
|
||||
|
|
|
@ -94,7 +94,12 @@
|
|||
<div class="alert alert-info">Below is a listing of all avaliable IPs and Ports for your service. To change the default connection address for your server, simply click on the one you would like to make default below.</div>
|
||||
<ul class="nav nav-pills nav-stacked" id="conn_options">
|
||||
@foreach ($allocations as $allocation)
|
||||
<li role="presentation" @if($allocation->ip === $server->ip && $allocation->port === $server->port) class="active" @endif><a href="#/set-connnection/{{ $allocation->ip }}:{{ $allocation->port }}" data-action="set-connection" data-connection="{{ $allocation->ip }}:{{ $allocation->port }}">{{ $allocation->ip }} <span class="badge">{{ $allocation->port }}</span></a></li>
|
||||
<li role="presentation" @if($allocation->id === $server->allocation) class="active" @endif>
|
||||
<a href="#/set-connnection/{{ $allocation->ip }}:{{ $allocation->port }}" data-action="set-connection" data-connection="{{ $allocation->ip }}:{{ $allocation->port }}">{{ $allocation->ip_alias }}
|
||||
<span class="badge">{{ $allocation->port }}</span>
|
||||
@if($allocation->ip !== $allocation->ip_alias)<small><span class="pull-right">Alias for {{ $allocation->ip }}</span></small>@endif
|
||||
</a>
|
||||
</li>
|
||||
@endforeach
|
||||
</ul>
|
||||
</div>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue