H7 WordPress

Tehtävät:

a) Asenna WordPress.

b) Mittaa sen suorituskykyä esim ab:llä. Voit verrata esim. tallennettua weppisivua sellaiseen, joka tehdään dynaamisesti PHP:lla.

c) Nopeuta palvelua Varnish-käänteisproxyllä.

Lähde: http://terokarvinen.com/2016/aikataulu-%E2%80%93-linux-palvelimena-ict4tn003-19-loppukevat-2016

Apachen asennus

Aloitin tehtävän teon lukemalla Tero Karvisen sivuilta löytyvän esimerkkitehtävän, joka oli Eino Liimatan tekemä:

http://terokarvinen.com/otherauthors/eliimatt-wordpress-org-puppet-liimatta-2013/eliimatt.wordpress.com/2012/10/01/harjoitustehtava-6-sisallonhallinta/index.html

Tämän jälkeen asensin Apachen komennolla

sudo apt-get install apache2

Testasin Apachen toiminnan Firefoxissa ja avatessani localhost-sivun avautui Apachen oletussivu. Seuraavakis otin kotihakemion luotavat sivut käyttöön komennolla

sudo a2enmod userdir

jonka jälkeen käynnistin Apachen uudelleen komennolla

sudo service apache2 restart

Tämän jälkeen loin kansion public_html kotihakemistooni komennolla

mkdir public_html

Siirryin kansioon ja loin sinne index.html sivun komennolla

nano index.html

Sisällöksi sivuun tuli ”Hei, maailma!” . Siirryin Firefoxissa sivulle localhost/~xubuntu ja tekemäni sivu näytti toimivan:

Mozilla Firefox_001

PHP:n asennus

Seuraavksi siirryin asentamaan PHP:ta. Tein sen komennolla:

sudo apt-get install libapache2-mod-php5

Seuraavaksi muokkasin Apachen PHP-lisäosan asetuksia, jotta PHP:tä voidaan käyttää kotihakemistossa olevalla sivulla. Tein tämän kommentoimalla pois asetustiedoston loppuosan. Pääsin käsiksi tiedostoon komennolla:

sudo nano /etc/apache2/mods-enabled/php5.conf

Selection_002

Pois kommentoitu osa tiedostoa.

Käynnistin Apachen uudelleen komennolla:

sudo service apache2 restart

Seuraavaksi siirryin testaamaan PHP:ta. Tein public_html kansioon testi.php tiedoston:

nano testi.php

Kopioin Liimatan testisivun, sillä en itse osaa tehdä php-sivua:

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8">
<?php
print_r('<h1>Terve taas, maailma!</h1>');
?>

Testasin sivun toimivuuden Firefoxilla menemällä osoitteeseeen localhost/~xubuntu/testi.php . Avautui tuo äsken luomani testisivu:

Mozilla Firefox_003

MySQLn ja phpMyAdminin asennus

Asensin MySQL:n, sekä tarvittavat lisäosat komennolla:

sudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql

Annoin salasanan root-käyttäjälle ja kirjoitin sen itselleni ylös paperille. Seuraavaksi asensin phpMyAdmin-työkalun, jolla saadaan graafinen käyttöliittymä MySQL:lle. Asensin sen komennolla:

sudo apt-get install phpmyadmin

Seuraavaksi avautui ikkuna, jolla kysyttiin mitä serveriohjelmisto oli asennettuna. Valitsin apache2:

Terminal - xubuntu@xubuntu: ~-public_html_004

Seuraavaksi määriteltiin phpMyAdminin käyttämä tietokanta. Käytin ohjelman suosittelemaa oletustietokantaa. Seuraavaksi annettiin root-salasana phpMyAdminille ja määriteltiin ohjelman omalle käyttäjälle salasana. Kirjoitin tämän ylös itselleni paperille.

Seuraavaksi testasin phpMyAdminia siirymällä Firefoxissa osoitteeseen localhost/phpmyadmin . Tämä ei kuitenkaan toiminut. Luokkalaisellani Aki Juvosella oli ollut sama ongelma ja katsoin neuvoa hänen tehtävästään:

https://akijuvonen.wordpress.com/

sekä hänen käyttämäänsä sivua:

http://askubuntu.com/questions/387062/how-to-solve-the-phpmyadmin-not-found-issue-after-upgrading-php-and-apache

Tein samat vaihtee kuin hän ja muokkasin ensin apache2.conf -tiedostoa nanolla:

sudo nano /etc/apache2/apache2.conf

Terminal - xubuntu@xubuntu: ~-public_html_005

Tämän jälkeen tein seuraavat komennot:

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

sudo a2enconf phpmyadmin.conf

sudo service apache2 reload

Tämän jälkeen phpMyAdmin toimi kuten piti: phpMyAdmin - Mozilla Firefox_006

Seuraavaksi kirjauduin sisään root-tunnuksella. Siirryin users-sivulle ja tein uuden käyttäjän. Annoin käyttäjänimeksi wplauri, hostiksi valitsin localhostin. Salasanan loin itse ja kirjoitin ylös paperille. Laitoin ruksin kohtaan ”Create database with same name and grant all privileges” . Panoin Go-nappia ja käyttäjä, sekä tietokanta oli luotu. Users-ikkunassa näkyi wplauri ja Databases-ikkunassa samanniminen tietokanta. Kirjauduin ulos.

WordPressin asennus

Aloitin asennuksen menemällä wordpressin sivuille osoitteeseen https://wordpress.org/ . Latasin sivulta tiedoston wordpress-4.5.2tar-gz:n. Purin tiedoston public_html hakemistoon komennolla:

tar -xzvf ~/Downloads/wordpress-4.5.2.tar.gz

Seuraavaksi siirryin sivulle localhost/~xubuntu/wordpress/wp-admin/install.php ja aloitin WordPressin asennuksen. Täytin tietokannan tiedot ja loin wp-config.php-tiedoston ja ajoin asennuksen. Täytin sivuni tiedot: sivun nimen, oman käyttäjänimeni, sähköpostini ja salasanan, jonka kirjoitin taas ylös paperille.

Kun asennus oli valmis pääsin käsiksi WordPress sisällönhallintajärjestelmään. Loin tulevia testauksia varten sivun, johon lisäsin lorem ipsumia.

WordPress suorituskyvyn mittaus

Seuraavaksi siirryin mittaamaan sivustoni suorituskykyä. Tähän käytin ApacheBenchmark ohjelmaa. Ohjelman sai asennettua komennolla:

sudo apt-get install apache2.utils

Seuraavaksi lähdin kuormittamaan sivua. Annoin komennon:

ab -n 100 -c 100 http://localhost/~xubuntu/wordpress/

Tässä testissä ei juurikaan kestänyt:

Terminal - xubuntu@xubuntu: ~-public_html_008

Kun lisäsin muuttujien määrät 1000, ei kyseinen testi enää onnistunut. Laskin ne 500, eikä testi onnistunut vielä silloinkaan. Loppujen lopuksi nostin pyyntöjen määrän 1000, mutta laskin concurrencyn 5, jolloin sain seuraavanlaisen tuloksen:Terminal - xubuntu@xubuntu: ~-public_html_009

Latasin etusivun koneelleni ja testasin staattisen sivun nopeutta edellisen testin muuttujilla. Ero oli huimaava:

Terminal - xubuntu@xubuntu: ~-public_html_010

Kokeilin vielä niin, että nostin concurrencyn 1000, mutta sivu latautui edelleen huikean nopeasti:

unknown_011

Varnishin asennus

Seuraavaksi siirryin asentamaan Varnishia. Käytin tässä Tuukka Meriläisen tekemää ohjetta: http://tuukkamerilainen.com/linux-as-server-7-apache-benchmark-and-varnishproxy/ .

Asensin Varnishin komennolla:

sudo apt-get install varnish

Seuraavaksi muokkasin ports.conf tiedostoa, niin että portin 80 on portti numero 8080. Tein sen komennolla:

sudoedit /etc/apache2/ports.conf

Terminal - xubuntu@xubuntu: ~-public_html_012

Seuraavaksi menin muuttamaan VirtualHost kohdan 000-default.conf-tiedostosa, kuten asetustiedostossa kehotettiin komennolla:

sudoedit /etc/apache2/sites-enabled/000-default.conf

Seuraavaksi siirryin muokkaamaan varnishin asetustiedostoa niin, että Alternative 2 asetusten kohdassa DAEMON_OPTS on portti 80. Tein sen komennolla:sudoedit /etc/default/varnishTerminal - xubuntu@xubuntu: ~-public_html_013Seuraavaksi käynnistin varnishin uudelleen komennolla:sudo service varnish restartSiirryin Firefoxilla osoitteeseen localhost ja Apachen oletussivu tuli näkyviin. Sain myös oman WordPress sivuni esiin.Testaus Varnishin kera

Tein samat testit kuin aikaisemmin:

ab -n 1000 -5 http://localhost/~xubuntu/wordpress/

Terminal - xubuntu@xubuntu: ~-public_html_014Testi oli suoriutui nyt 10 sekuntia nopeammin. Varnish siis tehosti huikeasti sivun toimintaa.Staattisen sivun testauksessa ei juurikaan tullut muutosta. Tein saman testin muutamaan kertaan. Pisimmillään testissä meni reilu 0,8 sekuntia, mutta nopein testi oli jopa hiukan nopeampi kuin alkuperäinen:Terminal - xubuntu@xubuntu: ~-public_html_015Staattisen sivun lataukseen Varnish ei siis omien testieni mukaan vaikuta, mutta kun kyse on dynaamisesti luodusta sivusta käänteisproxyn käyttö nopeuttaa toimintaa huimasti.Lähteet:

http://terokarvinen.com/2016/aikataulu-%E2%80%93-linux-palvelimena-ict4tn003-19-loppukevat-2016

http://terokarvinen.com/otherauthors/eliimatt-wordpress-org-puppet-liimatta-2013/eliimatt.wordpress.com/2012/10/01/harjoitustehtava-6-sisallonhallinta/index.html

http://askubuntu.com/questions/387062/how-to-solve-the-phpmyadmin-not-found-issue-after-upgrading-php-and-apache

http://tuukkamerilainen.com/linux-as-server-7-apache-benchmark-and-varnishproxy/

Mainokset

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out /  Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out /  Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out /  Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out /  Muuta )

w

Muodostetaan yhteyttä palveluun %s