m-r Nikolche Shulevski, m-r Zoran Milevski...

35
10/26/2017 m-r Nikolche Shulevski, m-r Zoran Milevski Moodle Macedonia 1

Transcript of m-r Nikolche Shulevski, m-r Zoran Milevski...

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia1

STARI HOSTING

Web Server• Dual Intel Xeon E52620• 2.0GHz, Turbo 2.5GHz• 12 Cores, 24 w/ HT 12,947 CPUMark Score• 32 GB RAM• Primary Harddrive: 512GB SSD• Hard Drive 2: 512GB SSD• Hard Drive 3: 2TB HDD

Hard Drive 4: 2TB HDDcPanel/WHM CentOS 6.9 64bit

• 3.8 TB of Bandwidth• 3.8 TB of Bandwidth

Database server:• Intel Xeon E31230• V2 3.3GHz, Turbo 3.7GHz 4 Cores, 8 w/ HT

8,883 CPUMark Score• 8 GB RAM• 2x 128 GB SSD HDD’s• CentOS Stock

• Apache and Mysql v5.5.34, php 5.5.7Admin= user+pass

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia2

STARI HOSTING

Moodle 2.9.3+ (Build: 20151209)

- Moodle Platform 1- Moodle Platform 2- Moodle Platform 3- Moodle Platform 4- Moodle Platform 5- Moodle Platform 6

MoodleData folder size 150GB - 250 GB

Database size 15GB - 32GB

Number of courses: 4000 - 5800

Number of users: 25.000 – 36.000

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia3

NOVI HOSTING

Ubuntu 16.04.3 LTS

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia4

STARI HOSTING NOVI HOSTING

Ubuntu 16.04.3 LTS

Admin= user+pass

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia5

X 6

X 6

X 6X 6

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia6

STARI HOSTING NOVI HOSTING

WW

EE

BB

SS

EE

RR

VV

EE

RR

WW

EE

BB

SS

EE

RR

VV

EE

RRRR

DD

BB

SS

EE

RR

VV

EE

RR

RR

DD

BB

SS

EE

RR

VV

EE

RR

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia7

Korak 1

STARI HOSTING

OPTIMIZACIJE POSTOJECIH MOODLE SAJTOVA

1. Manuelni cron iz URL:

HomeSite

administration Security Site policies

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia8

Korak 1

STARI HOSTING

OPTIMIZACIJE POSTOJECIH MOODLE SAJTOVA

2. Izbrishi cache:

HomeSite

administration Development

Purge all caches

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia9

Korak 1

STARI HOSTING

OPTIMIZACIJE POSTOJECIH MOODLE SAJTOVA

3. Cleanup:

HomeSite

administration Server Cleanup

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia10

Korak 1

STARI HOSTING

OPTIMIZACIJE POSTOJECIH MOODLE SAJTOVA

4. Standard log:

HomeSite

administration

Plugins LoggingStandard

log

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia11

Korak 1

STARI HOSTING

OPTIMIZACIJE POSTOJECIH MOODLE SAJTOVA

5. Opet manuelni cron iz URL:

HomeSite

administration Security Site policies

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia12

Korak 2

STARI HOSTING

ZIPOVANJE MOODLE I MOODLEDATA fajlova

zip -r moodledata.zip home/moodledata/zip -r moodlefiles.zip home/public_html/

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia13

Korak 3

STARI HOSTING

EXPORTIRANJA DATABAZE

Export > Custom >Format: SQL

Go

Download to local PC

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia14

Korak 4

NOVI HOSTING

Priprema ubuntu 16.04 server (Install Linux, Apache, MySQL, PHP (LAMP) stack on Ubuntu 16.04)

- Install zip unzip sudo apt-get install unzip

- Install Apachesudo apt-get update

sudo apt-get install apache2

- Install MySQLsudo apt-get updatesudo apt-get update

sudo apt-get install mysql-server

- Install PHPsudo apt-get install php libapache2-mod-php php-mcrypt php-common

- Install PHP modulessudo apt-get install php-mysql php-xml php-zip php-sqlite3 php-mbstring

php-curl php-intl php-iconv php-openssl php-tokenizer php-xmlrpcphp-soap php-ctype php-gd php-simplexml php-spl php-pcre php-domphp-json php-mysqlnd

- Install phpMyAdminsudo apt-get install phpmyadmin php-gettext

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia15

Korak 5

NOVI HOSTING

Install Webmin

wget http://www.webmin.com/jcameron-key.ascsudo apt-key add jcameron-key.ascsudo apt-get updatesudo apt-get install webmin

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia16

ubuntu16.04.1 + deb.sury.org + 4

Apache Web server version 2.4.18

MySQL server version 5.7.19

NOVI HOSTING

STA SVE JE INSTALIRANO NA NOVI HOSTING:

PHP version 5.6.31-4

phpMyAdmin version 4.5.4.1deb2ubuntu2

Sendmail mail server version 8.15.2

SSH server Version OpenSSH_7.2

Webmin version 1.850

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia17

NOVI HOSTING

Korak 6

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia18

NOVI HOSTING

Korak 6

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia19

NOVI HOSTING

Korak 6

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia20

NOVI HOSTING

Korak 6

Kopiranja moodledata fajlova iz starog na novog servera

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia21

NOVI HOSTING

Korak 6

Kopiranja moodledata fajlova iz starog na novog servera

Example: Moodledata folder > /var/www/moodledata

!!! Moodledata folder = stari hosting = 200 GB !!!!

Download from old server >>> Upload to new server

Open SSH client from old server (A)Copy moodledata.zip to the new server (B):scp /path/to/file UsernameofB@IPofB:/path/to/destinationExample:scp /var/www/moodledata/moodledata.zip userB@ipadressB:/var/www/moodledata

Ne zaboravite podesiti Permissions I Ownership !!!

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia22

NOVI HOSTING

Korak 7

Kopiranja moodle fajlova iz starog na novog servera

Example: Moodle folder > /var/www/html/moodle

Dve mogucnosti:1. Download from old server >>> Upload to new server1. Download from old server >>> Upload to new server

2. Open SSH client from old server (A)Copy moodle.zip to the new server (B):scp /path/to/file UsernameofB@IPofB:/path/to/destinationExample:scp /var/www/html/moodle/moodle.zip userB@ipadressB:/var/www/html/moodle

Ne zaboravite podesiti Permissions I Ownership !!!

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia23

NOVI HOSTING

Korak 8

Podgotovku MySQL Server

Webmin ServerMySQL

Database Server

Module Config

MySQL configuration file: /etc/mysql/

Webmin Others File Manager open

Navigate to: /etc/mysql/mysql.cnf >>> right click >>> edit

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia24

NOVI HOSTING

Korak 8

Podgotovku MySQL Server

Add to mysql.cnf

[mysql]max_allowed_packet=2147483648connect_timeout = 43200net_buffer_length = 536870912debug-info = TRUE

[mysqld]port=3306explicit_defaults_for_timestamp = TRUEconnect_timeout = 1000000net_write_timeout = 1000000wait_timeout = 1000000max_allowed_packet = 5024Minteractive_timeout = 1000000net_buffer_length = 536870912net_read_timeout = 1000000

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia25

NOVI HOSTING

Korak 9

Upload DB to new server

Upload DB file(s) via SFTP to any folder.Example: moodle.sql or moodle.sql, moodle (1).sql, moodle (2).sql ……..

Webmin ServerMySQL

Database Server

Create a new database

Open a new Database >>>>> Execute SQL >>>>> Run SQL from file >>>>> From local file >>>> find the folder with uploaded DB file(s) >>>> Execute.

100% Finish without errors.

Ne zaboravite podesiti User Permissions I Database Permissions !!!

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia26

NOVI HOSTING

Korak 10

Configuracija fajl> php.ini

How to Find the Location of Your php.ini FileOtvori SSH Client>

php –i$ php -i | grep 'Configuration File' Configuration File (php.ini) Path => /etc/php/5.6/apache2 LoadedConfiguration File => /etc/php/6.5/apache2/php.ini

Webmin Others File Manager Open

Navigate to /etc/php/5.6/apache2/php.ini >>> right click >>> edit

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia27

NOVI HOSTING

Korak 10

Configuracija fajl> php.iniextension=mysqli.soallow_url_fopen = onallow_url_include = Offasp_tags = Offdisplay_errors = Offenable_dl = Onfile_uploads = Onmax_execution_time = 900max_input_time = 120max_input_vars = 5000memory_limit = 4096Msession.gc_maxlifetime = 1440

[intl]intl.default_locale = en_utf8intl.error_level = E_WARNING

magic_quotes_runtime=offextension = fileinfo.so

[opcache]opcache.enable = 1opcache.memory_consumption = 64opcache.max_accelerated_files = 8000session.gc_maxlifetime = 1440

session.save_path = ""upload_max_filesize = 300Mpost_max_size = 256Mextension=php_xmlrpc.dllextension=php_iconv.dllextension=php_mbstring.dllextension=php_curl.dllextension=php_openssl.dllextension=iconv.soregister_globals = offsafe_mode = offmagic_quotes_gpc = offmagic_quotes_runtime = offsession.auto_start = offsession.bug_compat_warn = offextension=php_intl.dll

opcache.max_accelerated_files = 8000opcache.revalidate_freq = 60

; Required for Moodleopcache.use_cwd = 1opcache.validate_timestamps = 1opcache.save_comments = 1opcache.enable_file_override = 0

Webmin ServersApache

WebserverStop Start

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia28

NOVI HOSTING

Korak 11

Configuracija fajl> config.php

Webmin Others File Manager OpenWebmin Others File Manager Open

Navigate to /var/www/html/moodle/config.php >>> right click >>> edit

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia29

NOVI HOSTING

Korak 11

Configuracija fajl> config.php

<?php // Moodle configuration file

unset($CFG);global $CFG;$CFG = new stdClass();

$CFG->dbtype = 'mysqli';$CFG->dblibrary = 'native';$CFG->dbhost = ‘IP_DB SERVER';$CFG->dbname = ‘DBNAME';$CFG->dbuser = ‘DBUSER';$CFG->dbuser = ‘DBUSER';$CFG->dbpass = ‘DBPASS';$CFG->prefix = 'mdl_';$CFG->dboptions = array ('dbpersist' => 0,'dbport' => '','dbsocket' => '',

);

$CFG->wwwroot = 'http://www.mymoodlesite.com';$CFG->dataroot = '/var/www/moodledata';$CFG->admin = 'admin';

$CFG->directorypermissions = 0777;

require_once(dirname(__FILE__) . '/lib/setup.php');

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia30

DD

BB

SS

EE

RR

VV

WW

EE

BB

SS

EE

RR

NOVI HOSTING

++ ++ config.php =

VV

EE

RR

RR

VV

EE

RR

++

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia31

X 6 = 74 sati rad

HOSTING for MOODLE ?????

Small Hosting

VPS Hosting

OWN Server

Shared Hosting

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia32

VPS Hosting

Dedicated Server

Cloud Hosting

HOSTING for MOODLE ?????

Small Hosting

Shared Hosting

OWN Server

Disk usagePhysical Memory UsageBandwidthOgraniceni broja DB I DB storageRAM MemoryCPU UsageI/O UsageIOPSEntry ProcessesNumber of Processesphp:max_execution_time

1

1

4

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia33

VPS Hosting

Dedicated Server

Cloud Hosting

max_execution_timemax_input_timememory_limitupload_max_filesizepost_max_sizeextension=php_intl.dll +++++Php Version 5.4, 5.5, 5.6, 7.0, 7.1SupportServer Antivirusserver securityPRICE ???

5

4

4

16.04.1

2.4.18

5.7.19

THE BESTTHE BEST

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia34

4.5.4.1

1.8503.3.2

MOODLE SERVERMOODLE SERVER7.1.10

10/26/2017m-r Nikolche Shulevski, m-r Zoran Milevski

Moodle Macedonia35

DOWNLOAD TUTORIALhttp://moodle.mk/moodleserver.pdf