Amazon EC2 Cloud Services Installation: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
This is essentially a linux box in the cloud but at the time of writing I did not like to add it to that category. If this install lacks detail or doesn't work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. Assumptions you have an Amazon 32 bit EC2 server setup and you have ssh & http access to it. | This is essentially a linux box in the cloud but at the time of writing I did not like to add it to that category. If this install lacks detail or doesn't work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. Assumptions you have an Amazon 32 bit EC2 server setup and you have ssh & http access to it. | ||
From the cli as root or sudo | |||
yum install httpd | == Install all the requirements = | ||
yum install mysql-server | From the cli as root or sudo | ||
yum install git | |||
yum install php | yum install httpd | ||
yum install php-gd | |||
yum install php-pear | yum install mysql-server | ||
yum install php-mbstring | yum install git | ||
yum install php-mcrypt | yum install php | ||
yum install php-mbstring | yum install php-gd | ||
yum install memcached | yum install php-pear | ||
yum install php-mcrypt | yum install php-mbstring | ||
yum install php-zts | yum install php-mcrypt | ||
yum install php-xmlrpc | yum install php-mbstring | ||
yum install php-soap | yum install memcached | ||
yum install php-intl | yum install php-mcrypt | ||
yum install php-zip | yum install php-zts | ||
yum install php-zts | yum install php-xmlrpc | ||
yum install php-xml | yum install php-soap | ||
yum install php-intl | |||
yum install php-zip | |||
yum install php-zts | |||
yum install php-xml | |||
Revision as of 15:15, 26 January 2012
This is essentially a linux box in the cloud but at the time of writing I did not like to add it to that category. If this install lacks detail or doesn't work then see comments attached to this page. I start this off with some assumptions and then go though a full install using the cli. Assumptions you have an Amazon 32 bit EC2 server setup and you have ssh & http access to it.
= Install all the requirements
From the cli as root or sudo
yum install httpd
yum install mysql-server yum install git yum install php yum install php-gd yum install php-pear yum install php-mbstring yum install php-mcrypt yum install php-mbstring yum install memcached yum install php-mcrypt yum install php-zts yum install php-xmlrpc yum install php-soap yum install php-intl yum install php-zip yum install php-zts yum install php-xml
To ensure that mysql and httpd come up on boot.
chkconfig mysqld on chkconfig httpd on
To ensure that utf8 is used by mysql
edit /etc/my.cnf to read as follows
[mysqld] default-character-set=utf8 default-collation=utf8_unicode_ci character-set-server=utf8 collation-server=utf8_unicode_ci datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock user=mysql
- Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
[mysqld_safe] log-error=/var/log/mysqld.log pid-file=/var/run/mysqld/mysqld.pid
[client] default-character-set=utf8
In order to make sure php is included when httpd comes up
make sure you have a file called /etc/httpd/conf.d/php.conf whose contents are like the following <IfModule prefork.c>
LoadModule php5_module modules/libphp5.so
</IfModule> <IfModule worker.c>
LoadModule php5_module modules/libphp5-zts.so
</IfModule> AddHandler php5-script .php AddType text/html .php DirectoryIndex index.php
At the time of writing 26-01-2012) (php-common should provide zip.zo but it doesn't so I have put a copy here Media:http://moodle.org/mod/forum/discuss.php?d=194589 Attached to a forum post.) Perhaps a wiki buff could fix that better.
Once you have got zip.so, put it in /usr/lib/php/modules
Also you need to add
extension=zip.so
to your php.ini (in /etc)
Create the database, database user and access rights
run
mysql_secure_installation
Answer all the questions conservatively. (e.g. You will not need test databases or for root to have any other mysql access than local.) This will create a root mysql pw for you. Mysql users are nothing whatsoever to do with you unix users.
run
mysql -u root -p <password you set above>
In mysql you need to 1. make a database. The name can be anything you like. I used moodledb 2. make a database user. The name can be anything you like. I used moodledbuser. 3. give that user rights to access the database from the localhost. 4. No db access is required by anyone from any other host than the localhost
- Now you are in mysql and all the commands are mysql commands and could equally be run on a windows instance of mysql. Do not forget the ";" after each command.
create database moodledb; grant all privileges on moodledb.* to moodledbuser@localhost identified by '<put a pw here>';
quit
TEST the above by doing mysql -u moodledbuser -p <password>
If you get connected OK then you can go on and quit.
Create moodledata folder
mkdir /var/www/moodledata
The default root folder for apache is /var/www/html and so moodledata is not accessible from the web.
chown apache:apache /var/www/moodledata
Fetch and do permissions on moodle
cd /var/www/html
git clone git://git.moodle.org/moodle.git
This should put all of moodle in a file called moodle in the correct folder /var/www/html
There are more sophisticated git commands, see git docs in moodle docs for more info.
chown -R apache:apache ./moodle
Do the install
Visit http://<your amazon host>/moodle
Well, it worked for me!