Tag Archives: http

HEPIX Spring 2011 – Day 5

What day it is can be told by all the suitcases around the room.

Version Control

An overview of the version control used in CERN. Quite cool, they’re not using Git yet but they are moving away from CVS to SVN (subversion) which is not updated anymore. Apparently hard to migrate.

They use DNS load balancing

  • Browse code / logging, revisions, branches: WEBSVN – on the fly tar creation.
  • TRAC – web SVN browsing tool plus: ticketing system, wiki, plug-ins.
  • SVNPlot – generate SVN statsw. No need to checkout source code (svnstats do ‘co’).

Mercurial was also suggested at the side of Git (which is founded by Linus Torvalds).

Cern – VM – FS

Cern-VM-FS (CVMFS) looked very promising. The last one is not intended at the moment for images but more for sending applications around. It uses Squid proxy server and looked really excellent. Gives you a mount point like /cvmfs/ and under there you have the softwares.

http://twitter.com/cvmfs

Requirements needed to set it up:

  • Rpms: cvmfs, -init-scripts, -keys, -auto-setup (for tier-3 sites does some system configs), fuse, fuse-libs, autofs
  • squid cache – you need to have one. Ideally two or more for resilience. Configured (at least) to accept traffic from your site to one or more cvmfs repository servers. You could use existing frontier-squids.

 

National Grid Service Cloud

A Brittish cloud.

Good for teaching with a VM – if a machine is messed up it can be reinstalled.

Scalability – ‘cloudbursting‘ – users make use of their local systems/clusters – until they are full – and then if they need to they can do extra work in the cloud. Scalability/cloudbursting is the key feature that users are looking for.

Easy way to test an application on a number of operating systems/platforms.

Two cases were not suitable. Intensive – with a lot of number crunching.

Good: you don’t have to worry about physical assembly or housing. They do have to install the servers and networking etc. Usually this is done by somebody else. Images are key to making this easier.

Bad: Eucalyptus stability – not so good. Bottlenecks: networking is important. More is required to the whole physical server when it’s running vms.

To put a 5GB vm on a machine you would need 10GB. 5 for the image and 5 for the actual machine.
Some were intending to develop the images locally on this cloud and then move it on to Amazon.

Previous Days:
Day 4
Day 3
Day 2
Day 1

RHEL and web-server

Another thing you will notice if you are used to debian is that RHEL has iptables enabled by default.

To alter it you use the ‘iptables’ command. It is quite complex and there are good guides out there.

If you just want to let http and ssh through you can run this:

iptables -I RH-Firewall-1-INPUT 3 -p tcp -m tcp –dport 80 –tcp-flags SYN,RST,ACK SYN -j ACCEPT
iptables -I RH-Firewall-1-INPUT 3 -p tcp -m tcp –dport 22 –tcp-flags SYN,RST,ACK SYN -j ACCEPT

You do not have to change anything in httpd (made by apache by the way) to enable it.
Just point your browser. The document root is by default: /var/www/html

Install Drupal 7 in Debian 6

Time for another go!

Drupal is ..

.. a pretty famous and widely used CMS out there – so here we go ->

1. Get sudo configured on debian. Sucks to have to log on as root all the time when installing apps etc.

2. Download and untar drupal 7

3. Read INSTALL.TXT

Requirements:

– A web server. Apache (version 2.0 or greater) is recommended.
– PHP 5.2.4 (or greater) (http://www.php.net/).
– One of the following databases:
– MySQL 5.0.15 (or greater) (http://www.mysql.com/).

“sudo apt-get install lamp-server^” does not work in Debian 6 :/

Following this guide instead.

  1. aptitude update  and then upgrade (maybe not necessary because I used apt-get.. why have two??)
  2. sudo apt-get install mysql-server mysql-client (in Debian 6 you put in sql root user password during install)
  3. sudo apt-get install apache2 php5 php5-mysql libapache2-mod-php5 phpmyadmin
  4. Surf to http://ip/phpmyadmin and log on to the mysql db – does it work? yay!
  5. Create drupal db – see INSTALL.mysql.txt – basically this just tells you to create a database and a user. It asks you to do this via manual SQL queries, but we have phpmyadmin so we just have to; 1. click on databases and create a new one. 2. after that, click on privileges and create a new user. 3 just type in username and password, leave the rest for default.
  6. Copy extracted files to your www directory. Beware of rights, use chmod and possibly chown. /var/www/ is the default directory.
  7. Surf to http://ip/drupal (where install.php is)
  8. Standard setting
  9. Then it complains that it doesn’t have access. Because I had to set chmod 777 on the ‘sites’ directory under /drupal.
  10. Then I need to copy a file and make it writeable, just doing what the script tells me to.
  11. Configure the database settings.
  12. Now you can remove write access permissions on the sites/default directory and sites/default/settings.php
  13. Put in contact and admin accounts stuff.
  14. Done! Wow, that was easy :)

So much to do in there!
I will have to get back about this in another post :)

EyeOS – Cloud Desktop in your browser – Part 2

After my first comment ever by Adrian from the eyeOS forum I will now try this again and try not to install eyeOS wrongly by following a guide!

1/ Because I also tried to install cactii on the same VM the other day – and after that I saw some nasty out of memory messages. I will create a new VM – fresh, and with only 256MB RAM!

However, the guide is only for 2.x – So I will freestyle this time too. But follow the installation instructions on eyes.org :)

Overview

1/ Install Ubuntu 10.10
2/ Follow guide Not possible because uh, there is none for Ubuntu. There is one that begins with graphic interface for Debian.
3/ Win!

Requirements – PHP5

Installing Ubuntu

I use VMWare Workstation.
File -> New VM. Typical, installer disc image.
I used ubuntu-10.10-server-amd64 – I have an intel core i7.. (this is the one I used before, tried to find on ubuntu.com which one I should use but it says if you have a 64-bit, you’ll get the amd64..). Anyway. and also apparently it’s possible to press F4 during install and it will install a ‘virtual kernel’ which is good for when running in a virtualized environment! I had to change memory down to 256MB and then I also set the network type to “bridged” – so that it gets IP/DNS settings from my router instead of from my computer.

Also found a forum post that confirms, if you have an Intel 64-bit CPU – it is the “amd64” version you want to install.

So first time when I entered the VM through the VMWare shell everything worked fine.
Except that they keyboard was a bit messed up. When I pressed down it sent an enter.
In SSH via PuTty it’s working so I’ll do it that way instead. If you have this problem, check out this post – might be a VMWare bug or you may fix it with some CLI magic.

sshd is not installed by default -> sudo apt-get install openssh-server

Also probably good to change IP in the beginning, in case you want it on a static IP.
See my previous post how to set that. It’s a at the bottom of the post.

Time

Another good thing would be to set the time zone on the VM. You can find out how to do that in this post about lifehack/currency exchange rate.

To sync the time – so that it is up to date (mine was 30mins off) –

Edit /etc/default/ntpdate
Add a pool or use the default one – http://www.pool.ntp.org/zone/fi for Finnish ones.
Then run sudo ntpdate-debian

Do I really need to run this anymore? I’ll just let it be and try to keep track of it :p

*** Update: Just checked in on the time some 2 hours later and:

4 Feb 14:43:45 ntpdate[2494]: step time server 194.100.2.198 offset 910.266238 sec

So we need to have this executed every now and then, especially if it’s off 15minutes in just a couple of hours!!

Also found post on debian.org which clearly says that ntpd is awesome for fixing this. Especially in my case where the clock appears to be going slowly.

sudo apt-get install ntp
sudo pico /etc/ntp.conf

add your NTP-servers in there, I added those from the link above on ntp.org

then if you run this: sudo /etc/init.d/ntp status
it will tell you if it is running or not

I’ll check back tomorrow to see if this improved things ;)

*** 0847 unfortunately time is by now almost an hour off (0757).

martbhell@ubuntu:/var/www$ sudo /etc/init.d/ntp status
* NTP server is running

martbhell@ubuntu:/var/log$ ntpq –peers
remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
europium.canoni 193.79.237.14    2 u   12   64  377   44.012  2995645 13778.9

but supposedly this only runs once a day?

there is a program called ntp under /etc/cron.daily/

i’ll wait until today afternoon

** 2045  – it is now over an hour late..
** rebooted, now time is 2215.. 23 minutes too much!
** rebooted again, now time is good, 2054. :s

** a day later (maybe more)- and now it’s 3 hours behind.

supposedly ntpd will catch the drift after a while.

stopped VM and made a copy of hostname.vmx

then edited this with pspad and and changed

tools.syncTime = “FALSE”

to

tools.syncTime = “TRUE”

now time is good (Tue Feb  8 15:12:34 EET 2011), is that because of the reboot? Probably. That’s how it looks in syslog anyway.

Checking back in a day or two.

*** Wed Feb  9 06:45:09 EET 2011 – now 45minutes late.

*** Set up a script that monitors the offset. Looks like this:

offset = 3287.419925,;Tue Feb 15 04:30:01 EET 2011;
offset = 3634.005591,;Tue Feb 15 06:30:01 EET 2011;
offset = 3980.517817,;Tue Feb 15 08:30:01 EET 2011;

347,346,374

From /etc/ntp.conf I found that the drift file is this:

/var/lib/ntp/ntp.drift

it contains this value: 0.000

Manually changing this to -346.500

Also changed the default values to this in /etc/ntp.conf

restrict -4 default kod notrap nomodify
restrict -6 default kod notrap nomodify

#restrict 127.0.0.1
#restrict ::1

and rebooting the server, again.

bbl.

ok, this is bs.

sudo apt-get remove ntp

then running this:

sudo ntpdate 0.fi.pool.ntp.org

confirmed it updates time

44 * * * * /usr/sbin/ntpdate 0.fi.pool.ntp.org >> /home/user/tid/tid.log

bbl

ok, looked one hour later at 1445 and the time was right.
can now keep an eye on that tid.log file instead :)

don’t forget to add that to the root user crontab, with ‘sudo crontab -e’

*** a week later

ok that was an ugly fix and I do not condone doing that, that was me being a little frustrated :)

See http://www.guldmyr.com/blog/time-sync-for-linux-vms-in-vmware-workstation/ for how it worked out..

lamp

Download 1.x

install LAMP -> sudo apt-get install lamp-server^
The ^ needs to be there! All you need to do is to insert a mysql root password.

After this you can surf into http://localhost or http://ip of the VM.

phpymadmin

I also want to put in phpmyadmin (sudo apt-get install phpmyadmin) as well, this is nice tool to manage the mysql db. In that installation, choose apache2 by pressing space, then tab to get to the OK button. Then it asks about dbconfig-common, I chose no here because the db(mysql) is already installed. Then surf to http://ip/phpmyadmin/ and log on. If you see any databases there already -> you are now connected to the mysql you created before! Woop!

EyeOS Install

cd – this gets you to your homedir
mkdir eyeos
cd eyeos
wget $URL of eyeOS
install unzip -> sudo apt-get install unzip
unzip $FILENAME
put this in your web dir.
by default this is /var/www
by default you do not have permission to put files there, so use sudo to put the eyeOS folder in there.

sudo mv eyeOS /var/www
after this the user you have logged on with have ownership inside /var/www/eyeOS – means you don’t have to write sudo all the time :)

point your web browser to http://ip/eyeOS (note that it is case sensitive)
it will tell you that you need to chmod 777 some files, do that.

Then it will tell you to install these packages: SQLite and IMAP if you want mail client.

sudo apt-get install php5-sqlite (restart apache with ‘sudo apachectl restart’ and hit F5 on the installation page to see that the installation script now finds it)
sudo apt-get install php5-imap (free-styled that, worked out well ;)

put in a password and then hit install

then it’s installed!

eyeOS – nice!

It’s a lot slimmer than eyeOS 2.x and stuff appears to be working just off the bat.
Everything runs so fast too, in comparison to 2.x.

1.9.x for the win!

Do I really want to use this? Would I find it useful? Honestly I am a little scared by running this on my own pc.