- touch: Änderung von Zugriffs- und Änderungszeitstempel. Existiert die Datei noch nicht, wird sie neu angelegt
- cat: ursprünglich zum zusammensetzen von Dateien gedacht, wird aber zwischenzeitlich hauptsächlich eingesetzt um kleinere Dateien im Terminal anzuzeigen
- wget: Dateien von HTTP oder FTP Seiten downloaden
- apt-key: Aktionen den Schlüsselbund betreffend
- wget -q https://www.virtualbox.org/download/oracle_vbox.asc -O- | sudo apt-key add -
- Download der angegebenen Datei im "quiet" Modus (-q) und Ausgabe im Terminal (-O-) und Übergabe der Ausgabe (-) an den apt-key add, damit der Schlüssel hinzugefügt werden kann
- apt-get: Paketverwaltung! update, upgrade, install, remove, autoremove, etc.(siehe auch: https://wiki.ubuntuusers.de/apt/apt-get)
- pwd: gibt das aktuelle Verzeichnis zurück, indem man sich gerade befindet, print working directory
- git clone git://ADRESSE: Herunterladen nur den Quellcode aus dem Git-Repository
- cd: change directory (Wechsel der Verszeichnisse)
- mkdir: Anlegen eines Verzeichnisses
- sollte die Uhr aus dem Panel verschwunden sein:
pkill -f indicator-datetime-service , nachdem man sich vergewissert hat, dass in den Systemeinstellungen die Uhr für das Panel aktiviert ist - VERBOSE: Ausführungsmodus von Computerprogrammen (meist Aufruf aus einer Kommandozeile), der dafür sorgt, dass die Ausführung des Programms mit geloggt wird. Verwendung erfolgt meist mit -v oder --verbose und kann z.B. bei chmod, mkdir, cd, rm, cat verwendet werden.
- tar -xzf Dateiname: (Ent)packen von tar-Archiven. Bei den Optionen müssen immer die Dateiendungen beachtet werden. Handelt es sich nicht nur um ein gepacktes, sondern auch komprimiertes Archiv, müssen die Optionen entsprechend angepasst werden siehe auch: wiki.ubuntuusers.de/tar
- ln: Erzeugung eines Links; Entweder ein Softlink -s, oder ein Hardlink (ohne Option)
- uname -r: Kernelversion ermitteln
- sudo apt-get install linux-headers-$(uname -r): Aktuellen Kernel installieren
- usermod -d /Verzeichnis/ -m "Benutzer": Benutzer Home-Verzeichnis ändern
- möchte man in einem Server den aktuellen Benutzer abmelden, weil man sich vielleicht mit einem anderen anmelden möchte, benutzt man einfach den Befehlt exit
- ip link show (device) ip a s
- md5sum: Quersumme einer Datei bilden -> z.B. kann man damit abgleichen, ob eine Datei auch vollständig und korrekt kopiert wurde
- iotop: Anzeige der laufenden Prozesse des Systems im Terminal
- free: zeigt die momentane Speicherbelegung des RAM an (Option -m: Angabe in MByte)
- vmstat (Sekunden): tabellarische Auskunft über Prozesse, Arbeitsspeicher, Auslagerung- sowie Festplatten und Prozessor-Aktivitäten
- apt-get install <paketname1> <paketname2> ...
- apt-get remove <paketname1> <paketname2> ...
- apt-get purge <paketname1> <paketname2> ...
- apt-cache search <paketname>
- dpkg -l : Installierte Pakete zeigen lassen
- dpkg -l | grep <Suchbegriff> In den installierten Paketen nach einem bestimmten suchen
- less : pager zur Ausgabe von (Text-) Dateien im Terminal
- head Datei: Ausgabe der ersten 10 Zeilen der Datei
Donnerstag, 15. Oktober 2015
Terminalbefehle und ihre Bedeutung
Donnerstag, 8. Oktober 2015
OpenStack
- Initiiert wurde das Softwareprojekt von Rackspace & NASA und wird unterstützt durch z.B. Firmen wie SUSE Linux GmbH, Dell, Canonical, etc
- OpenStack wird als freie Software in Python unter Apache Lizenz entwickelt
- Cloud Computing (als Dienstleistung) umfasst das gesamte Spektrum der Informationstechnologie (Infrastruktur => z.B. Rechenerleistung, Speicherplatz), Plattformen & Software)
- OpenStack Compute -> Nova:
- Kann Gruppen von virtuellen Maschinen verwalten
- unterstützt Hypervisoren -> XEN & KVM & Hyper-V(MS)
- Ansteuerung über libvirt
- Bereitstellung von Storage: iSCSI, sheepDog oder Swift
- Bereitstellung von Object Storage: Glance
- Verwaltung erfolgt über REST API, die mit dem CLI von Eucalyptus angesteuert wird
- Für den Betrieb von Nova ist noch eine Datenbank notwendig
- OpenStack Storage -> Swift:
- verantwortlich für reduntante Datenspeicherung (Object Storage)
- Als Backend für Glance oder Cinder einsetzbar
- Für Dateiverwaltung z.B. Cyberduck
- OpenStack Image Service -> Glance:
- stellt den OpenStack Usern Images für virtuelle Maschinen zur Verfügung
- Images dienen Nova dazu, Instanzen zu kompilieren
- OpenStack Identity ->Keystone:
- Authentifizierungs- und Rechtesystem zwischen den OpenStack Komponenten
- Gliederung des Projektzugriffs in sog. Mandanten (tenants)
- Der Tenenat ist Mieter der Cloud und hat mind. einen zugeordenten Benutzer
- Verschiedene Benutzer mit unterschiedlichen Rechten pro Mandant möglich
- Token System zur Authorisierung
- Anbindung anderer Authentifizierungssysteme möglich (z.B. LDAP)
- Abstrahieren der Authentifizierung auf vorgelagerten Webservern möglich -> Erweiterung der Authentifizierungssysteme
- OpenStack Dashboard -> Horizon:
- Webinterface zur Verwaltung der OpenStack Cloud
- Bereitstellung der wichtigsten Funktionen der OpenStack Komponenten in einer GUI
- OpenStack Block Storage -> Cinder
- Bereitstellung virtuellen Blockspeichers in Form virtualisierter Speichermedien (Festplatten, CDs, etc.)
- Blockspeicher kann an VMs angehängt werden
- Über eine API-Schnittstelle lässt sich Cinder mit Swift verbinden => Blockspeicher kann mit Objektspeicher kommunizieren
- OpenStack Networking -> Neutron (ehem. Quantum)
- Netzwerkdienst für OpenStack
- Verwaltung von Netzwerken, Subnetze, IP-Adressen/ Floating IPs
- Floating IP: IP die als Schnittstelle zwischen dem öffentlichen und internen Netzwerk dient
- Unterstützung von Load Balancer (?), HA-Proxy(?), Health-Monitor, sowie VLAN & VPN
- Firewall mit vielseitigen Portregeln
- OpenStack Database Service -> Trove
- befindet sich noch in der Entwicklungsphase
- soll sowohl NoSQL Datenbank (z.B. MongoDB) als auch SQL-Datenbanken (z.B. MariaDB) in der Cloud als DBaaS (Datenbank as a Service) bereitstellen
- OpenStack Orchestration -> Heat
- Erzeugung von Stacks
- Stack: Konfigurationen aus verschiedenen Cloud-Komponenten z.B. Instanzen, Load Balancer, Sicherheitsgruppen, etc.
- Realisierung von Deployment- und Autoscaling Prozessen direkt im OpenStack
- Ablage der Konfiguration in einem Heat Orchestration Template (HOT) im YAML-Format
- Mit einem Template können gesamte Infrastrukturen automatisiert erzeugt werden
- OpenStack Telemetry -> Ceilometer
- Erfassen und Abfragen von Nutzungsdaten der OpenStack Cloud
- Wird von Heat verwendet um Leistungszahlen für Autoscaling zu ermitteln
- OpenStack Data processing service -> Sahara
- Datenverarbeitungssystem
- Dem Nutzer einfachen Zugang zu Datenverarbeitungscluster bereitstellen
- Wikipedia-Artikel wird an diesem Punkt zu chinesisch... SPÄTER noch mal lesen
Mittwoch, 7. Oktober 2015
Hadoop, Dockers und noch vieles mehr
OpenStack
Block Storage
Dateisystem Storage
Cluster
RabbitMQ
- Cloud erzeugen, verwalten, bearbeiten
- Bereitstellung von Objekt-, Block- oder Dateisytem-Speicher
- schneller Zugriff, parallel große Anzahl von Zugriffen möglich
- RADOS Reliable Autonomic Distributed Object Store
- Ausführung in einem Storage-Cluster
- Applikationen in C, C++, Java, Python & PHP möglich
- RADOS Gateway unterstützt OpenStack Swift & Amazon S3
- Ceph bietet ein File System mit POSIX Semantik an, was andere Systeme wohl nicht haben
- RBD RADOS Block Device
- Framework für skalierbare, verteilt arbeitende Software
- freie Software in Java geschrieben
- basiert auf einem MapReduce Algorithmus von Google
- Hadoop ermöglicht es intensive Rechenprozesse mit großen Datenmengen auf Computerclustern durchzuführen
- HDFS (Hadoop Distributed File System) ist ein hochverfügbares Dateisystem zur Speicherung sehr großer Datenmengen auf den Dateisystemen mehrer Rechner
- HBASE skalierbare Datenbank zur Verwaltung sehr großer Datenmengen innerhalb eines Hadoop Clusters; basiert auf Google Big Table (Hochleistungs Datenbanksystem)
- HIVE -> Erweiterung um Data Warehouse Funktionalität; Anfragesprache HIVE QL und Indizes (SQL ähnlich)
- Pig: Erstellen von MapReduce Programme für Hadoop mit der Sprache Pig Latin
- Chukwa: Echtzeitüberwachung sehr großer verteilter Systeme
- ZooKeeper: Dient der verteilten Konfiguration von verteilten Systemen
- auf der Homepage werden noch wesentlich mehr Module beschrieben
- Suchmaschine
- Vusalisierung heißt Marvel
- JSON Dokumente -> Daten sind immer Dokumente
- Container Verwaltung, die unterschiedlichste Anwendungen (in Containern) bereitstellt. Dabei ist es völlig unerheblich aus welcher Umbegung sue aufgerufen wird
- Im Gegensatz zu VMs fehlt Dockers das GuestOS. Dockers teilt den Kernel mit allen anderen Containern. Sie laufen als isolierter Prozess auf dem Host-System
- Bereitstellung einer Distro- & Anbieter-neutralen Umgebung zur Entwicklung von LinuxContainer Technologien
- Bereitstellung einer Umgebung ohne Kernel & Hardware Simulation (wie es bei einer VM der Fall ist)
- LXC (lex-cee): Set mit WErkzeugen, Templates,, Bibliotheken und Programmierschnittstellen -> Erzeugung von Containern
- LXD (leex-dee): Container-Hypervisor
- systemweiter Daemon (lxd)
- Kommandozeilen Client (lxc)
- OpenStack Nova plugin (nova-compute-lxd) was ab Ubuntu 15.04 mitgeliefert wird
- REST-API wird über den Daemon bereitgestellt (lokal & über Netzwerk)
- LXCFS: Dateisystem, welches aktuell noch mit einigen Beschränkungen auf dem Linux-Kernel arbeitet. Möglich ist u.a.:
- Bereitstellung eines cgroupfs-like Baum, der dem Container bekannt ist und mit dem CG Manger arbeitet
- Bereitstellung eines Datei-Sets, welches über die originale /proc eingebunden wird um CGroup-Werte bereit zustellen
- Programmierparadigma für verteilte Systeme, insbesonders für Webseiten
- Abstraktion der Struktur und Verhalten des WWW
- Programmiermodul von Google für nebenläufige Berechnungen über mehrere Petabyte große Datenmengen auf Computerclustern
- Speicher der direkt an ein Netzwerk angeschlossen ist
- Verwaltung der Dateien über Netzwerkprotokolle wie SMP/ CIFS, NFS (dateibasiert) oder iSCSI und FCoE (blockbasiert)
- NAS-Systeme arbeiten autonom
- Virtual Machine Monitor (VMM)
- abstrahierende Schicht zwischen tatsächlicher Hardware (inkl. installiertem OS) und weiteren Betreibssystemen
- Definition einer virtuellen Umgebung (hardwareresourcen, z.B. CPU, Speicher, FEstplattenplatz, verfügbare Peripherie)
- Die definierte Umgebung ist völlig unabhängig von der realen Hardware, auf der sie eingerichtet wurde
- VirtualBox, VMWare, XEN
- Hypervisor ohne Bedienoberfläche
- Im Linux-Kerne fest implementiert
- Hypervisor
- Citrix-Systems
Block Storage
Dateisystem Storage
Cluster
RabbitMQ
Donnerstag, 1. Oktober 2015
Definitionen und Abkürzungen
- Broadcast Adresse: höchste IP Adresse (255.255.255.255) ist reserviert um ein Nachricht gleichzeitig an alle Teilnehmer zu senden
- DNS: Domain Name Server; Server auf dem die Namen zu den Netzwerkadressen gespeichert sind -> 167.216.245.249 = www.linuxcare.com (nicht mehr erreichbar ;-))
- FQDN: Fully Qualify Domain Name; Vollständiger Domainname, z.B. www.example.com. -> . => roor-label, .com => Top Level Domain, .example => second level domain, www => third level domain
- LVM (Logic Volume Manager) notwendige Definitionen:
- Physical Volume (PV): physikalisches Laufwerk, Partintion, RAID System, welches als LVM PV konfiguriert ist
- Volume Group (VG): Gruppe aus einem oder mehreren PVs, welche durch weitere PVs erweitert werden kann. Es handelt sich um ein virtuelles Laufwerk, von dem ein oder mehrere logische Laufwerk abgeleitet werden kann
- Logical Volume (LV): enspricht einer Partition auf einem nicht LVM System. Ein LV wurde im verlangten Format formatiert (EXT3, XFS, JFS, etc.). Das Laufwerk kann dann einfach gemounted und als Speicher verwendet werden
- Dash:
- Debian Almquist Shell -> Standardshell für Shellskripte, wird aber aufgrund ihrer Unkonfortabilität eher selten genutzt -> Bash
- Unter Unity ist die Dash das Schnellstartmenü, in der das System nach Anwendungen, Dateien, etc. durchsucht werden kann
- Bash: Bourne again Shell
- Apache: Webserver, der in Kombination mit MYSQL, PHP, Pearl oder Python zum LAMP (Linux, Apache, MySQL, PHP) Server wird
- RC: Release Candidate
- FOSS: Free and Open Source Software
- systemd: Daemon für Linux-Systeme, das als erstes Programm, init-Programm, zum Starten, Überwachen und Beenden anderer Programme dient (seit Ubuntu 15.04)
- Daemon: Unter Linux (oder Unix) ein Programm, was im Hintergrund abläuft
- PaaS: Platform as a Service
- SaaS: Software as a Service
- IaaS: Infrastructure as a Service
- QEMU: Quick Emulator ist eine freie virtuelle Maschine, die die gesamte Hardware eines Computers emuliert und durch die dynamische Übersetzung der Prozessorinstruktionen des Gastprozessors in Instruktionen für den Host-Prozessor eine sehr gute Ausführungsgeschwindigkeit erreicht
- Puppet: Systemkonfigurationswerkzeug mit dem z.B. automatisiert mehrere Computer via Netzwerk konfiguriert werden können
- RabbitMQ ist eine Open Source Message Broker Software, die das Advanced Message Queuing Protocol (AMQP) implementiert (Middleware, die zur Nachrichtenübertragung dient) ich habe keine Ahnung was das bedeutet :-(
- ARM: Mikroprozessortechnik, die vor allem im embedded Bereich weit verbreitet ist. Advanced RISC Machines
- CLI: Command Line Interface Kommandozeilen-Interaktionen
- SDK: Software Developer Kit
- LVM: Logical Volume Manager
- DKMS: Dynamic Kernel Module Support
- MTP: Media Transfer Protocol
- ADB: Android Debug Bridge
- RBAC: Role Based Access Control
- TTL: Time to life (Gültigkeitsdauer)
- VLAN: Virtual Local Area Network
- VPN: Virtual Private Network
- ETL: Extract, Transform, Load Prozess, mit dessen Hilfe Daten aus (veschiedenen) Systemen in einem Zielsystem vereinigt werden. Wird vor allen Dingen im Warehouse-Data Bereich verwendet
- DAG: Database Availability Group: Eine DAG ist ein hochverfügbares und DAten absicherndes Feature von Exchange Server 2010
- JRE: Java Runtime Environment
- MTBF: Mean Time Between Failures -> mittlere Betriebsdauer zwischen Ausfällen
- WORM: Write Once read many
- NFV: Network Functions Virtualization
- VIP (external, internal):virtual IP
- ICMP: Internet Control Message Protocol
- CM: Configuration Management
- Tarballs: komprimiertes Archiv mit der Endung tar.gz
- IRQ: Interrupt ReQuest
- ISR: Interrupt Service Routine
- AHCI: Advanced Host Controller Interface offener Schnittstellen Standard für SATA-Controller
- ACPI: Advanced Configuration and Power Interface, offener Industriestandard zur Energieverwaltung von Notebooks, Desktops und Servern
Abonnieren
Posts (Atom)