Fehler in getBlogTagsListe der Klasse Application_Model_Storage_DbTable_BlogTags
Meldung : SQLSTATE[42000]: Syntax error or access violation: 1055 Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'byte_artist.blog.blog_id' which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
How To: Vagrant als Multi Machine System aufsetzen | auf byte-artist.de

byte-artist

die Hauptseite meines Webaustrittes
hier finden Sie Neuigkeiten rund um mich und meine Seite

unter Stuff fasse ich alle öffentlich
zugänglichen Sachen zusammen darunter :

in meinem Blog werde ich nach und nach mein Wissen zusammen tragen,
sowie unter anderem auch Brainstormings und Erfahrungsberichte
der breiten Öffentlichkeit zur Verfügung stellen

hier finden Sie Informationen zu mir und
meine Projekte/Referenzen
meinen Werdegang
dem Stand meines Know-How

MO

DI

MI

DO

FR

SA

SO

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31



Schlagwörter:



Warning: is_readable(): open_basedir restriction in effect. File(/usr/share/php//var/www/vhosts/byte-artist.de/application/views/helpers/helpers/Layout.php) is not within the allowed path(s): (/var/www/vhosts/byte-artist.de/:/tmp/) in /var/www/vhosts/byte-artist.de/library/Zend/Loader.php on line 186

How To: Vagrant als Multi Machine System aufsetzen

erstellt am 17.06.2014 13:36:04 von Andreas Kempe

Im Vorigen Kapitel habe ich beschrieben wie wir uns unsere eigene default Package für Vagrant aufsetzen und damit eine eigene Box erstellen, heute möchte ich zeigen, wie einfach es ist, sich ein Multi Machine System aufzusetzen um jeden Service als autonome Kapsel laufen lasse zu können.

Ich habe bei mir im Netzwerk einen Server mit verschiedenen Diensten drauf und immer wenn ich gezwungen bin größere Umbaumaßnahmen durchzuführen, muss ich alle Dienste auch wieder neu einrichten, das frißt Zeit, auch wenn Übung den Meister macht ;)

Zu dem kann man diese Boxen auch mit Kollegen und Freunden sharen und sie damit in den Genuß diverser Services bringen ohne das sie sich selbst die Arbeit machen müssen.

Ausgangslage sind folgende Services, die alle ein eigenes System bekommen sollen:

  • Samba
  • DHCP
  • DNS
  • LDAP
  • FTP/SFTP
  • DB Server
  • GIT
  • SVN
  • WEB (Apache)
  • Jenkins



Wie wir die eigenen Services auf den Maschinen an sich installieren, dazu kommen wir in weiteren Tutorials, hier geht es erst einmal darum, Vagrant dazu zu bewegen, die Maschinen zu starten und wie wir uns diese jeweiligen Maschinen überhaupt anlegen.


Wir legen und mit folgendem Befehl eine Box an:

+

BASH code

  1. vagrant box add MaschineName package.box


Wobei package.box für das von uns erstellte Paket steht oder wahlweise auch ein package von diversen Drittanbietern sein kann.

dem zu folge können wir jetzt nacheinander unsere Boxen anlegen :


+

BASH code

  1. vagrant box add samba package.box
  2. vagrant box add dhcp package.box
  3. vagrant box add dns package.box
  4. vagrant box add ldap package.box
  5. vagrant box add ftp package.box
  6. vagrant box add db package.box
  7. vagrant box add git package.box
  8. vagrant box add svn package.box
  9. vagrant box add web package.box
  10. vagrant box add jenkins package.box



Nun legen wir uns einen rudimentäre Vagrantfile an und tragen unsere Maschinen ein:


+

RUBY code

  1. # -*- mode: ruby -*-
  2. # vi: set ft=ruby :
  3.  
  4. # Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
  5. VAGRANTFILE_API_VERSION = "2"
  6.  
  7. Vagrant.configure(VAGRANTFILE_API_VERSION) do
    config
  8.  
  9. config.vm.define "samba" do
    samba
  10. samba.ssh.private_key_path = "~/.ssh/id_rsa"
  11. samba.vm.box = "samba"
  12. end
  13.  
  14. config.vm.define "dhcp" do
    dhcp
  15. dhcp.ssh.private_key_path = "~/.ssh/id_rsa"
  16. dhcp.vm.box = "dhcp"
  17. end
  18.  
  19. config.vm.define "dns" do
    dns
  20. dns.ssh.private_key_path = "~/.ssh/id_rsa"
  21. dns.vm.box = "dns"
  22. end
  23.  
  24. config.vm.define "ldap" do
    ldap
  25. ldap.ssh.private_key_path = "~/.ssh/id_rsa"
  26. ldap.vm.box = "ldap"
  27. end
  28.  
  29. config.vm.define "ftp" do
    ftp
  30. ftp.ssh.private_key_path = "~/.ssh/id_rsa"
  31. ftp.vm.box = "ftp"
  32. end
  33.  
  34. config.vm.define "db" do
    db
  35. db.ssh.private_key_path = "~/.ssh/id_rsa"
  36. db.vm.box = "db"
  37. end
  38.  
  39. config.vm.define "git" do
    git
  40. git.ssh.private_key_path = "~/.ssh/id_rsa"
  41. git.vm.box = "git"
  42. end
  43.  
  44. config.vm.define "svn" do
    svn
  45. svn.ssh.private_key_path = "~/.ssh/id_rsa"
  46. svn.vm.box = "svn"
  47. end
  48.  
  49. config.vm.define "web" do
    web
  50. web.ssh.private_key_path = "~/.ssh/id_rsa"
  51. web.vm.box = "web"
  52. end
  53.  
  54. config.vm.define "jenkins" do
    jenkins
  55. jenkins.ssh.private_key_path = "~/.ssh/id_rsa"
  56. jenkins.vm.box = "jenkins"
  57. end
  58. end



wir haben nun die Möglichkeit eine der Boxen explizit zu starten


+

BASH code

  1. vagrant up samba


und auch so wieder anzuhalten

+

BASH code

  1. vagrant halt samba


oder alle miteinander starten, indem wir in dem Verzeichnis wo unser Vagrantfile liegt, einfach folgenden Befehl ausführen:

+

BASH code

  1. vagrant up


und natürlich analog dazu auch wieder beenden


+

BASH code

  1. vagrant halt



Welche Boxen laufen sehen wir über folgenden Befehl:

+

BASH code

  1. vagrant status


man kann sich das aber auch mit Hilfe der VirtualBox Oberfläche ansehen:

aller laufenden Boxen

" alt="Bild Übersicht
aller laufenden Boxen nicht gefunden !" title="Übersicht
aller laufenden Boxen" />



Vagrant benennt unsere Box automatisch beim ersten start um und hinterlegt sie bei VirtualBox, da dies als Basis zum starten der VM's genutzt wird. Jede unserer Boxen trägt das Prefix vagrant_ gefolgt vom namen der Box und einem timestamp den vagrant erstellt.


Verbinden können wir uns auch ganz entspannt auf die Boxen, wir müssen uns dazu nicht die jeweiligen SSH-Ports der Boxen merken, übrigen setzt Vagrant automastisch den SSH Port der Box auf einen anderen Port, wenn dieser bereits von einer Box belegt ist.


Auf eine Spezielle Box verbinden wir uns wie gesagt per

+

BASH code

  1. vagrant ssh samba



Das wars fürs erste, in weiteren Tutorials werden wir uns mit dem optimieren der Boxen über das VagrantFile befassen und außerdem kennen lernen, wie man die jeweiligen Dienste aufsetzt.


Kommentare:

Kommentarbox wird geladen!


Kommentare werden geladen!