Dokumentasjon av Installasjon



Like dokumenter
Produksjonssettingsrapport

Produksjonssettingsrapport

Installasjonsveiledning for Ordnett Pluss

Automatisering av datasenteret

Forord. Brukerveiledning

4. Installasjonsveiledning. Experior - rich test editor for FitNesse -

Huldt & Lillevik Lønn og Personal - System 4. Oppdatering. Personec AS. Veiledningen er oppdatert pr

Scan Secure GTS PAS

1 Pakkesystemet i Debian-distribusjonen. Innhold. 1.1 Innledning

Installasjon Huldt & Lillevik Lønn. Innhold

Huldt & Lillevik Ansattportal. Installere systemet

Controller Brukerstøttedatabase Ottar Holstad/Cantor 09.

Releaseskriv versjon Vedr. INSTALLASJONSPROSEDYRER. Versjon Pr. 30. MARS 2012 Copyright. Daldata Bergen AS

Effektiv Systemadministrasjon

Huldt & Lillevik Lønn 5.0. Installere systemet

Kjernejournal. Pilotering - Javafri oppkobling

Installere programmer, og filhåndtering

Manual for AL500AC og AL100AC

Huldt & Lillevik Lønn 5.0. Oppdatere til ny versjon

Manual for å oppgrade TS 1000 fra:

Huldt & Lillevik Lønn og Personal - System 4. Installasjon. - første gang. Med MS SQL Server eller eksisterende MS Express.

Installasjonsveiledning for Clue 10

Installasjonsveiledning for Ordnett Pluss

Installasjonsveiledning for Ordnett Pluss

Flytte Lønn 5.0 fra SQL 2000 til SQL 2005 / 2008

Huldt & Lillevik Ansattportal. Installere systemet

Huldt & Lillevik Reise. Oppgradering. Aditro HRM AS

Huldt & Lillevik Lønn og Personal - System 4. Installasjon. - første gang MSDE. Personec AS. Veiledningen er oppdatert pr

)DVW3ODQ,QVWDOOHULQJ $%% $6 'LYLVMRQ $XWRPDVMRQVSURGXNWHU ΑΒΒ 3RVWERNV 6NLHQ

- Java kan lastes ned gratis For installasjon, se punktet Hvordan laster jeg ned og installerer Java på min maskin?.

BACHELOROPPGAVE 32E. Av Anders Sefjord Torbjørnsen

Manual for Eagle 100 og Lynx 500

P L A N I A 8 S Y S T E M K R A V PLANIA 8 SYSTEM KRAV. Plania 8 Systemkrav.docx av 8

Installasjon. - første gang. Med MS SQL Server eller eksisterende MSDE. Huldt & Lillevik Lønn og Personal - System 4. Personec AS

Installasjonsveiledning Visma Avendo, versjon 5.2

DIPS Communicator 6.x. Installasjonsveiledning

Huldt & Lillevik Lønn og Personal - System 4. Installasjon. Microsoft SQL 2005 Express. Aditro HRM AS

1 Diverse linuxtips. Innhold

Installasjonsveiledning

WinTid Scheduler. Oppgradering til versjon HRM

Shellscripting I. Innhold

Generelt om operativsystemer

Kravspesifikasjon. Vedlegg A

Installasjonsveiledning. DDS-CAD ByggMester

6107 Operativsystemer og nettverk

Tilkobling. Windows-instruksjoner for en lokalt tilkoblet skriver. Før du installerer skriverprogramvare i Windows

Software installasjon og andre ettertanker

Oppgradering av Handyman til siste tilgjengelige versjon

For mer informasjon om SQL Server 2014 Express, se Microsoft sine nettsider:

Oppgave 1 - Java og prosesser (20%)

Kom i gang med Python

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

Limacute systemdokumentasjon Limacute. Regionrådet i Hallingdal. Systemdokumentasjon. Side 1 av 8

En liten oppskrift på hvordan jeg installert og fikk Xastir til å virke sånn at jeg ble synlig i APRS verden.

Vedlegg C. Dokumentasjon av privat testmiljø

Huldt & Lillevik Reise. Oppgradering. Aditro HRM AS

Læringsmål og pensum. v=nkiu9yen5nc

Tekniske krav. Installasjonsrekkefølge. Operativsystem og web-server. Maskinvare. .Net Framework 2.0. ASP.Net AJAX 1.0

Huldt & Lillevik Lønn 5.0. Installere systemet

Vedlegg 1: Oversikt over noen mulige leverandører

Installasjonsveiledning

INSTALLASJONSVEILEDNING FOR KALK2010 KALKULASJONSPROGRAM

2. Beskrivelse av installasjon av SQL Server 2005 og hvordan lage databasen som trengs av administrasjonsprogrammet:

PySniff: Et system for nettverksbasert applikasjonsovervåking

VMware Horizon View Client. Brukerveiledning for nedlasting, installasjon og pålogging for fjerntilgang

Guide for tilkobling til HIKT s Citrix løsning

Huldt & Lillevik Lønn 5.0. Installere systemet

UNIVA as, Tromøyveien 26, N-4841 Arendal, Norway Phone: , web:

PowerOffice Mobile Server

TDT4110 Informasjonsteknologi grunnkurs: Kapittel 1 Introduksjon til Programmering og Python. Professor Alf Inge Wang

Installasjonsveiledning DDS-CAD 7.3

Installasjonsveiledning Visma Avendo Lønn, versjon 7.60 Oktober 2011

Mamut Business Software

Komme igang med App Inventor Introduksjon App Inventor PDF

Installasjon av Nett-TV-meter Trinn for trinn

ViaTripMy. Installasjonsmanual

HØGSKOLEN I SØR-TRØNDELAG Avdeling for informatikk og e-læring

1 Diverse linuxtips. Innhold. 1.1 Klipp og lim med musen

Hvordan installere Java og easyio på Windows

Installere konverteringsprogrammet. Innholdsfortegnelse

Hva er programmering?

GK96 Installasjonsveiledning for oppdatering til 2.0

Programinnstillinger. KAPITTEL 5 Innstillinger

Brukerhåndbok. Programområde

Innstallasjon og oppsett av Wordpress

Tilkoblingsveiledning

Velkomment til å installere BAS21

Enbruker-installasjon

Velkommen som ny bruker av Uni Økonomi!

Installasjon av Cantor Controller MSSQL. Installasjon av Enbruker. Veiledningen har tre kapittel

Lab 1: Installasjon av Virtualiseringsløsning (VMWare Server ESXi 6.5) med en Virtuell Linux maskin (Cent OS 7 64-bit)

Installere JBuilder Foundation i Mandrake Linux 10.0

Operativsystemer og nettverk Løsningsforslag til eksamen Oppgave 1. a) Linux-kommando: java Beregn & b) Shellprogram:

Installasjonsveiledning

DDS-CAD 7 INSTALLERE PÅ TERMINALSERVER. DATA DESIGN SYSTEM ASA Øksnevad Næringspark, 4353 Klepp st., fax , tel.: , e-post: dds@dds.

Definisjon av prosess

Mappeinformasjon Programfiler... 2 Delte Programdata... 2 Delte dokumenter... 2 Brukerens egne data... 2 Brukerens egne dokumenter...

Installasjonsveiledning Oppgradering av tidligere versjon

Installere programvare og alternativer for Polycom RealPresence Group Series og tilbehør

Etiming i VirtualBox!!!!!!!!!! Side 1 av 24

Transkript:

Vedlegg D Dokumentasjon av Installasjon Dette dokumentet tar for seg detaljert informasjon vedrørende installasjon nødvendig for delapplikasjonene i PySniff.

Innholdsfortegnelse 1. INTRODUKSJON 3 2. PYTHON 3 2.1 INSTALLERING AV VIRTUALENV I PYSNIFF 4 3. SENSOR 6 3.1 LINUX AVHENGIGHETER 6 3.2 PYTHON-PAKKER 6 3.2.1 PSYCOPG2 6 3.2.2 SCAPY 6 3.2.3 SQLALCHEMY 6 3.2.4 PYTHON-DAEMON 6 4. DATABASE 7 4.1 INSTALLASJON AV CENTOS PAKKER 7 4.2 INSTALLASJON AV LAYER1 OG LAYER2 7 4.2.1 LAYER 1 7 5. CORE 8 5.1 PYTHON-PAKKER 8 5.1.1 SQLALCHEMY 8 5.1.2 PSYCOPG2 8 5.1.3 PYTHON-DAEMON 8 6. WEBSERVICE 9 6.1 PYTHON-PAKKER 9 6.1.1 CHERRYPY 9 6.1.2 SQLALCHEMY 9 6.1.3 PSYCOPG2 9 7. FRONTEND 10 Filnavn: Dokumentasjon av Installasjon.docx Side: 2 av 10

1. INTRODUKSJON Dette dokumentet tar for seg installasjon av Python 2.7.3, SQLAlchemy, samt det som er nødvendig for å kjøre delapplikasjonene i PySniff. Dokumentet er svært teknisk, og tar for seg installasjon og konfigurasjon ned på kommandonivå. Det er ikke meningen å lese dokumentet fra A til Å for å sitte igjen med noe, men heller et oppslagsverk. 2. PYTHON Python er et generelt objektorientert programmeringsspråk med fokus på fleksibel, men lesbar kode, og er egnet for alt fra scripting til større prosjekter samt webutvikling. Python kan brukes på de fleste moderne operativsystemer, inkludert *nix som er miljøet brukt i oppgaven. Det ble valgt å benytte Python grunnet gode tilgjengelige biblioteker som løste sentrale deler av vårt prosjekt. I tillegg var dette språket interessant for læringens skyld da ingen i gruppen hadde bred erfaring med Python før dette prosjektet. Språket er også mye brukt hos oppdragsgiver SpareBank 1, og det var derfor ønskelig at PySniff ble skrevet i et språk som de hadde erfaring med. PySniff bruker Python versjon 2.7.3, som var siste offisielle stabile versjon av Python 2 ved prosjektstart. Siste versjon av Python er 3, men det ble valgt å benytte versjon 2 som er mer utprøvd og har større tilgjengelighet av programvarebiblioteker. Versjon 2.7.3 av Python er ikke nødvendigvis installert på miljøet, eller operativsystemet, applikasjonen kjører på. Det er heller ikke gitt at de nødvendige komponentene for PySniff som for eksempel Sqlite3 er brukt for kompileringen av Python. Av denne grunn er det vanligvis nødvendig å installere en egen versjon av Python hvis dette skal kjøre på produksjonssystemer som også andre applikasjoner skal kjøre på. Test- og produksjonsservere kjører godt testet, men også eldre installasjoner av Linux-distribusjoner. Dette er både grunnet at disse systemene vanligvis ikke kan stoppes for oppdatering om de kjører kritiske systemer som krever høy oppetid, men også fordi man vet at eldre versjoner er godt utprøvd og stabile. Dette innebærer gjerne også at det er gamle versjoner av programmer installert, noe som også gjelder Python. Et typisk operativsystem brukt i produksjon er Linux-distribusjonen CentOS versjon 5.8, som er brukt for både test- og produksjonsmiljøet til PySniff. Her er standard installert versjon på systemet Python 2.4. Man kan heller ikke oppdatere til en nyere versjon uten å skape trøbbel på systemet, da andre programmer kan være avhengig av akkurat denne versjonen av Python. Filnavn: Dokumentasjon av Installasjon.docx Side: 3 av 10

For å løse problemet med forskjellige versjoner av Python på samme system kan en kombinasjon av altinstall og virtualenv benyttes. Altinstall betyr at et program installeres separat fra systemfilene og påvirker derfor ikke andre installerte versjoner, slik at standard versjon av Python ikke påvirkes av den nye installeringen. Virtualenv er et verktøy for å lage isolerte, virtuelle Python-miljøer som ikke påvirker eller påvirkes andre applikasjoner. I et slikt virtualenv kan det installeres Python-moduler som også er separert fra resten av systemet. For å effektivisere installeringen av Python på applikasjonsmiljøene PySniff er i bruk er det laget et shell script i scriptspråket bash for installering av Python 2.7.3 beregnet på CentOS 5. Siden systemet brukt i produksjon har strenge brannmurregler er det ikke mulighet for å laste ned alle pakkene med kildekode eller programvarebiblioteker for Python nødvendig for Python eller PySniff fra internett, og disse må manuelt lastes ned først. Figur X viser deler av installasjonscriptet. For å korte ned koden er enkelte kommentarer som forklarer gangen i scriptet og bekreftelse på å fortsette fjernet. Scriptet krever root-rettigheter (admin), samt at nødvendig kildekode og pakker er lastet ned allerede: Python-2.7.3.tar.bz2 Kildekoden til Python sqlite3_int64_v2.patch fra http://bugs.python.org/issue14572 distribute-0.6.35.tar.gz Python-modulen Distribute, nødvendig for Pip og Virtualenv pip-1.3.1.tar.gz Pakkebehandler for Python virtualenv-1.9.1.tar.gz Kildekode for Virtualenv-modul i Python 2.1 Installering av Virtualenv i PySniff Tekniske installasjonskommandoer for distribute wget http://python-distribute.org/distribute_setup.py sudo python2.7 distribute_setup.py Tekniske installasjonskommandoer for viritualenv sudo easy_install-2-7 viritualenv python2.7 /usr/local/bin/viritualenv-2.7 distribute pysniff_env For å aktivere viritualenv: source ~/ pysniff_env /bin/activate Filnavn: Dokumentasjon av Installasjon.docx Side: 4 av 10

#!/bin/bash # Install required packages for compilation yum groupinstall "Development tools" yum install {zlib,bzip2,openssl,ncurses,sqlite}-devel # Ready for compilation cd /tmp/python273 tar -xf Python-2.7.3.tar.bz2 cd Python-2.7.3 # Patch for _sqlite module - http://bugs.python.org/issue14572 cat../sqlite3_int64_v2.patch patch -p1 # Configure with shared libraries, used by mod_wsgi./configure --prefix=/usr/local --enable-shared # Compile and install make make altinstall # *NOT* install, very important! # Fix path to shared lib - http://stackoverflow.com/a/7880519/1076493 echo "/usr/local/lib" >> /etc/ld.so.conf /sbin/ldconfig # Install distribute - http://stackoverflow.com/a/10538341/1076493 cd /tmp/python273 tar -xzvf distribute-0.6.35.tar.gz /usr/local/bin/python2.7 distribute-0.6.35/setup.py install # Install pip, because easy_install is deprecated # http://trizpug.org/members/cbc/wyntkap/img/pip_distribute.png /usr/local/bin/easy_install-2.7 pip-1.3.1.tar.gz # Install virtualenv and other interesting packages # will be added to /usr/local/bin/ /usr/local/bin/pip install virtualenv-1.9.1.tar.gz # Clean up rm -rf /tmp/python273 # Done! echo "Installation of Python 2.7.3 Done!" Figur 1: Installasjonsscript for Python 2.7.3 på CentOS 5. Filnavn: Dokumentasjon av Installasjon.docx Side: 5 av 10

3. SENSOR Installasjon av Sensor er avhengig av at Python2.7 og ViritualEnv er installert på serveren/klientmaskinen den skal kjøre på. Den er testet på følgende operativsystemer: Linux Debian, Linux Ubuntu, Linux CentOS, Windows 7. 3.1 Linux avhengigheter På Linux trenger man å installere postgresql-devel / postgresql-dev pakken før man installerer pakkene inne i et Virtualenv. Dette gjøres på CentOS med: Ubuntu og debian: CentOS: sudo apt-get install postgresql-dev sudo apt-get install postgresql-devel libpg-dev 3.2 Python-pakker Under er det listet med Python-pakker som må installeres for at sensoren skal fungere: 3.2.1 psycopg2 Pakken gjør støtte kobling mot PostgrSQL-database. Sensoren er testet med versjon 2.2.5 Manuell kommando for å innstalere denne pakken er: pip install https://pypi.python.org/pypi/psycopg2/2.5 3.2.1.1 Windows avhengighet I Windows må man installere Psycopg med følgende kommando: pip install http://www.stickpeople.com/projects/python/winpsycopg/psycopg2-2.4.win32-pyx.x-pg9.0.3-release.exe 3.2.2 Scapy Pakken Scapy ligger ikke i Pypi sitt pakkebiblotek og må lastes ned fra deres nettsider. Denne kan installeres med følgende kommando: pip install http://www.secdev.org/projects/scapy/files/scapy-latest.tar.gz 3.2.3 SQLAlchemy Pakken SQLAlchemy gjør det mulig å bruke ORM en for å sette inn pakker i databasen. Denne kan installeres med følgende kommando: pip install https://pypi.python.org/pypi/sqlalchemy/0.8.1 3.2.4 Python-daemon Pakken Python-daemon gjør det mulig å kjøre sensoren som en bakgrunnsprosses. Denne innstalerer også Lockfile automatisk som er en annen pythonpakke som Python-daemon trenger. Disse kan installeres med følgende kommando: pip install https://pypi.python.org/pypi/python-daemon/1.6 Filnavn: Dokumentasjon av Installasjon.docx Side: 6 av 10

4. DATABASE Installasjonen av PostgreSQL er utført på en CentOS server. 4.1 Installasjon av CentOS pakker Denne innstalerer databasemotoren til PostgreSQL på databaseserveren. Sudo yum install postgresql 4.2 Installasjon av Layer1 og Layer2 4.2.1 Layer 1 Layer1 kjører som en RAMdatabase og denne trenger dermed tilstrekkelig med ram for å kjøre PySniff/database/ramdisk/ramdisk.sh er et script du trenger å kjøre Filnavn: Dokumentasjon av Installasjon.docx Side: 7 av 10

5. CORE For å kunne kjøre Core, må det være noen spesifikke pakker installert på maskinen der denne skal kjøre. Det er mest hensiktsmessig å installere disse i et virtualenv: 5.1 Python-pakker Kommandoer forutsetter at virtualenv er aktivert i henhold til forrige punkt. 5.1.1 SQLAlchemy Pakke for kobling mot database pip install https://pypi.python.org/pypi/sqlalchemy/0.8.1 5.1.2 psycopg2 Pakke for å støtte kobling mot en PostgrSQL-database. psycopg2 krever at libpq-dev og python-dev er installert på systemet. Dette er utviklingspakker som kan installeres med følgende kommando: sudo apt-get install libpq-dev python-dev Deretter kan psycopg2 installeres: pip install https://pypi.python.org/pypi/psycopg2/2.5 5.1.3 Python-daemon Pakken Python-daemon gjør det mulig å kjøre sensoren som en bakgrunnsprosses. Denne innstalerer også Lockfile automatisk som er en annen pythonpakke som Python-daemon trenger. Disse kan installeres med følgende kommando: pip install https://pypi.python.org/pypi/python-daemon/1.6 Filnavn: Dokumentasjon av Installasjon.docx Side: 8 av 10

6. WEBSERVICE For å kunne kjøre Webservice, må det være noen spesifikke pakker installert på maskinen der denne skal kjøre. Det er mest hensiktsmessig å installere disse i et virtualenv: 6.1 Python-pakker Kommandoer forutsetter at virtualenv er aktivert i henhold til forrige punkt. 6.1.1 CherryPy Pakke for rammeverk og webserver pip install http://download.cherrypy.org/cherrypy/3.2.2/cherrypy- 3.2.2.tar.gz 6.1.2 SQLAlchemy Pakke for kobling mot database pip install https://pypi.python.org/pypi/sqlalchemy/0.8.1 6.1.3 psycopg2 Pakke for å støtte kobling mot en PostgrSQL-database. psycopg2 krever at libpq-dev og python-dev er installert på systemet. Dette er utviklingspakker som kan installeres med følgende kommando: sudo apt-get install libpq-dev python-dev Deretter kan psycopg2 installeres: pip install https://pypi.python.org/pypi/psycopg2/2.5 Filnavn: Dokumentasjon av Installasjon.docx Side: 9 av 10

7. FRONTEND Dette avsnittet tar for seg det som er nødvendig for installasjon av Frontend. Sjekke om mod_wsgi er installert rpm q mod_wsgi Hvis ikke installert: yum install mod_wsgi Installere apxs for å få kompilert wsgi yum install httpd-devel /usr/sbin/apxs./configure with-apxs /usr/sbin/apxs=/usr/sbin/axps with-python=/usr/local/bin/python2.7 #setup wget http://modwsgi.googlecode.com/files/mod_wsgi-3.4.tar.gz tar xvfz mod_wsgi-3.4.tar.gz mod_wsgi-3.4/configure --with-python=/usr/local/bin/python2.7 make sudo make install For installasjon av Frontend etter at komponentene over er installert benyttes førlgende fremgang. Filene skal legges under /opt/pysniff/frontend, slik som de er presentert i prosjektet. Det skal opprettes et virtualenv med python2.7 under /opt/pysniff/pysniff_env/ Installerer pakker med pip (Django, south og requests) pip install r /opt/pysniff/frontend/requirements/* /opt/pysniff/frontend/configuration/ inneholder en standard apache fil som referer til frontend. Denne flyttes til /etc/httpd/conf.d/ For å starte apache med frontend /etc/init.d/httpd start Hvis apache kjører; /etc/init.d/httpd restart. Filnavn: Dokumentasjon av Installasjon.docx Side: 10 av 10