Add diagrams and overview
This commit is contained in:
parent
1396852a08
commit
a1b6d1f422
2 changed files with 155 additions and 4 deletions
85
HTWG-Infrastructure.md
Normal file
85
HTWG-Infrastructure.md
Normal file
|
@ -0,0 +1,85 @@
|
||||||
|
|
||||||
|
### HTWG Initial Situation
|
||||||
|
|
||||||
|
#### Infrastructure Overview
|
||||||
|
|
||||||
|
```nwdiag
|
||||||
|
nwdiag {
|
||||||
|
Router [shape = cloud];
|
||||||
|
VMs [stacked, shape=note]
|
||||||
|
FullContainers [stacked, shape = "ellipse"]
|
||||||
|
Baremetal [stacked]
|
||||||
|
Storage [shape = flowchart.database]
|
||||||
|
|
||||||
|
network WAN {
|
||||||
|
Router
|
||||||
|
}
|
||||||
|
|
||||||
|
network ethernet-switch {
|
||||||
|
Baremetal
|
||||||
|
ThinClients
|
||||||
|
Router
|
||||||
|
}
|
||||||
|
|
||||||
|
network virtual-ethernet {
|
||||||
|
FullContainers
|
||||||
|
VMs
|
||||||
|
Baremetal
|
||||||
|
}
|
||||||
|
|
||||||
|
network fibrechannel-switch {
|
||||||
|
Baremetal
|
||||||
|
Storage
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```blockdiag
|
||||||
|
blockdiag overview {
|
||||||
|
# orientation = portrait;
|
||||||
|
|
||||||
|
thinclients [stacked];
|
||||||
|
|
||||||
|
class ovzcnt [shape = roundedbox];
|
||||||
|
class kvm [shape = note];
|
||||||
|
|
||||||
|
system_containers [stacked];
|
||||||
|
|
||||||
|
HDD [stacked, shape = flowchart.database];
|
||||||
|
|
||||||
|
group storage {
|
||||||
|
}
|
||||||
|
|
||||||
|
group tisrvs {
|
||||||
|
LVM [shape = square, stacked];
|
||||||
|
LVM -> HDD [style = dashed];
|
||||||
|
|
||||||
|
group {
|
||||||
|
label = "Containers (OpenVZ)";
|
||||||
|
homer [class = ovzcnt];
|
||||||
|
burns [class = ovzcnt];
|
||||||
|
skinner [class = ovzcnt];
|
||||||
|
|
||||||
|
group {
|
||||||
|
label = "marge";
|
||||||
|
marge [class = ovzcnt];
|
||||||
|
LV -> LVM [style = dashed];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
group {
|
||||||
|
label = "Machines (KVM)";
|
||||||
|
lisa [class = kvm];
|
||||||
|
ainsrv0 [class = kvm];
|
||||||
|
more [class = kvm, stacked];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
group {
|
||||||
|
label="thinclients";
|
||||||
|
terminal-client -> thinclients [folded];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
```
|
74
README.md
74
README.md
|
@ -1,14 +1,80 @@
|
||||||
This will include a paper according to https://writing.wisc.edu/Handbook/ScienceReport.html
|
|
||||||
|
|
||||||
# Title
|
# Title
|
||||||
|
|
||||||
|
Using Linux Application-Containers for a Distributed University Computer Lab Terminal-Service Focused on Efficiency, Scalability and Security
|
||||||
|
|
||||||
# Abstract
|
# Abstract
|
||||||
|
|
||||||
# Introduction
|
# Introduction
|
||||||
|
|
||||||
# Methods
|
## Goals
|
||||||
|
|
||||||
|
* Providing Remote Terminal Services For Running Linux Applications
|
||||||
|
* Terminal Services run in application containers
|
||||||
|
* Application Containers can be built from arbitrary sources
|
||||||
|
|
||||||
|
* Terminal User's are isolated from each other on the Operating System level
|
||||||
|
|
||||||
|
Isolated Resources:
|
||||||
|
* Root Privileges
|
||||||
|
* CPU
|
||||||
|
* RAM
|
||||||
|
* Network Stack
|
||||||
|
* Disk
|
||||||
|
|
||||||
|
* User's have full control over their own processes
|
||||||
|
* Long-running applications (Terminal Services) in the ephemeral application-container ecosystem
|
||||||
|
* Migrating vs. Re-Starting Terminal Services
|
||||||
|
* Integrated User Management Platform
|
||||||
|
* Cluster Container Manager
|
||||||
|
* Separable Storage For Containers
|
||||||
|
* Operating System
|
||||||
|
|
||||||
|
### Optionals
|
||||||
|
|
||||||
|
* Infrastructure Management
|
||||||
|
* Software Defined Networking Management
|
||||||
|
|
||||||
|
|
||||||
|
### Similar Projects
|
||||||
|
|
||||||
|
* Diploma Work
|
||||||
|
* [embedux][embedux]
|
||||||
|
* labworks
|
||||||
|
|
||||||
|
* same requirements as in [embEDUx][] and [labworks][], just a greater scope
|
||||||
|
|
||||||
|
# Solution Design
|
||||||
|
|
||||||
|
## Issues
|
||||||
|
* Only one main Gitlab Server
|
||||||
|
* Doesn't scale
|
||||||
|
* Only one terminal server
|
||||||
|
* not all servers are used by this terminal server
|
||||||
|
* all users work in the same environment
|
||||||
|
* users share resources like CPU, Memory, partially temporary disk space
|
||||||
|
* Terminal Server OS has every courses applications installed
|
||||||
|
* Terminal Server is not easily relocatable due to Local-FS usage
|
||||||
|
* Classical Disk Quota is buggy with SimFS used for the OpenVZ guests
|
||||||
|
* DLM/CMAN Quorum is not reliable --> Clustered Volume Management is not reliable
|
||||||
|
|
||||||
|
|
||||||
|
## Requirement Analysis
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
# Research and Evaluation
|
||||||
|
|
||||||
|
Evaluate
|
||||||
|
* Operating System
|
||||||
|
* Cluster Container Manager
|
||||||
|
* Separable Storage For Containers
|
||||||
|
|
||||||
|
# Implementation
|
||||||
|
|
||||||
# Results
|
|
||||||
|
|
||||||
# Discussion
|
# Discussion
|
||||||
|
|
||||||
|
# Links
|
||||||
|
[embedux]: https://embedux.github.io/documentation/
|
||||||
|
[labworks]: https://millhouse.in.htwg-konstanz.de/infra/labworks
|
||||||
|
[]:http://www.research.att.com/export/sites/att_labs/techdocs/TD_100222.pdf
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue