FreePBX v3 and Asterisk Installation Guide on Fedora 12

FreePBX v3 and Asterisk Installation Guide on Fedora 12

 

Anyone who is familiar with Asterisk has probably taken a look at FreePBX at one time or another. I decided to give the newest version of FreePBX a try. Since the Asterisk Driver has only recently come available, there aren't any good installation guides that I could find. I ended up using the FreeSwitch Installation guide at the FreePBX website as a guide to get started.

I am using Fedora Core 12 with only the standard repos. All software was installed via YUM except for FreePBX which I checked out via subversion. I know a lot of people look at YUM with disgust, but I find it a pretty useful tool. Building from source is fun, but unless I have a real reason to do so I try to stay away from that. I chose Fedora over CentOS because the packages available for CentOS are generally behind (i.e. stable? :P) and FreePBX v3 requires PHP >= 5.2.

So, here are my installation steps to get a working installation of FreePBX v3 and Asterisk 1.6.1.17, which is the latest version available via the Fedora repo.

Loosely based on http://www.freepbx.org/v3/wiki/Installation

 

Install Fedora Core 12

yum update

You can omit nano and use your favorite command line text editor... I like nano.

yum install nano php php-pdo php-mysl php-xml php-xmlrpc php-soap mysql-server mysql  libpri libss7 subversion dahdi-tools openssl openssl-devel mod_ssl bind sendmail bison bison-devel gcc gcc-c++ ncurses ncurses-devel zlib zlib-devel gnutls-devel

Optionally install sendmail, bind and configure mod_ssl. Also setup your httpd.conf how you see fit and probably enable AllowOverride All.

service httpd start

service sshd start

service mysqld start

chkconfig mysqld on

chkconfig httpd on

chkconfig sshd on

nano /etc/sysconfig/iptables and ensure you have the rules:

 

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT

-A input -m state --state NEW -m udp -p udp --dport 5060 -j ACCEPT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

nano /selinux/enforce and change 1 to 0

nano /etc/sysconfig/selinux and set selinux=permissive (or disabled)

yum install asterisk

service asterisk start

chkconfig asterisk on

mysqladmin -u root password 'setyourpasswordhere'

mysql -u root -p

grant all privileges on freepbx.* to freepbx@localhost identified by 'setpasshere';

flush privileges;

go to your web enabled folder (i.e. /var/www/html) and run: svn co http://www.freepbx.org/v3/svn/trunk freepbx/

chown -R apache:apache freepbx/

nano /etc/asterisk/manager.conf

change:

enabled=no to enabled = yes

add (i added all privileges which might not be neccessary and made sure i locked down ip / made super secret password):

[freepbx]

secret = yoursupersecretpassword

deny = 0.0.0.0/0.0.0.0

permit = 127.0.0.1/255.255.255.0

read = system,call,log,verbose,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate

write = system,call,log,verbose,agent,user,config,command,dtmf,reporting,cdr,dialplan,originate

now go to http://yourhost/freepbx and follow the installer

read, agree, and hit continue

if you get prompted that cache and logs aren't usable try:

chmod 777 /var/www/html/freepbx/freepbx/cache

chmod 777 /var/www/html/freepbx/freepbx/logs

check to be sure your database settings match what your user / pass was that you granted privileges for and hit continue

select the asterisk driver and enter the info you put in manager.conf

continue, don't select any modules that arent selected (you can add them later if you want them and can get them to work)

continue through the wizard and you should end up with a working installation.

One nice thing to note is that permissions were greatly simplified with v3 compared to the v2 branch. Essentially, FreePBX now uses Asterisk Manager so it doesnt need access to your /etc/asterisk folder, just the files in your web enabled directory.

Now I know I'm missing some stuff such as asterisk sounds and addons and such but this should be a pretty good start at getting a SIP based Asterisk installation up and running with FreePBX to experiment on. I do not recommend, and niether does FreePBX, using this as a production server yet. The interface is easy to follow so you shouldn't need any more instructions once you can login.

Good guide to test out FreePBX V3.0

Installing the XenServer Linux Pack after XenServer has been deployed

Installing the XenServer Linux Pack after XenServer has been deployed

This post is more of an FYI for myself as much as anything, but I installed a XenServer a while back, and at the time, I didn't have the Linux Guest Support CD and I continued the XenServer install without it. Well, just a few days ago, I needed to install the Linux Guest Support tools on this XenServer.

The process wasn't hard by any means and I'm sure there are many ways to do this. Here are the steps I took and I'm posting them here so I won't forget, and maybe they'll be helpful to somebody else.

1. I used WinSCP to connect to the XenServer and I copied the Linux Guest Support CD ISO to an ISOs directory that I had created.

2. I connected to the XenServer console using Putty.

3. Change to the ISOs directory and enter the following commands:
mkdir -p /mnt/iso
mount -o loop XS-linuxcd.iso /mnt/iso
cd /mnt/iso

4. Enter the command ./install.sh to install Linux Guest Support. If you have XenCenter open, you will lose the connection as XAPI will be restarted to complete the installation process.

Notes

Fine Gael leader wins confidence vote

Enda Kenny has retained the leadership of Fine Gael, the party said today.

Chairman Padraic McCormack revealed that a motion of confidence in Mr Kenny, put forward by himself, was carried by the 70-strong parliamentary party.

Mr Kenny had lost the support of the majority of his front bench and is expected to reshuffle his Shadow Cabinet next Monday.

Mr McCormack refused to disclose the margin of Mr Kenny's victory.

He said only himself and Senator Paschal Donohoe knew the result of the ballot and both had been sworn to secrecy.

The chairman said the leadership heave, instigated by Mr Kenny's former number two, was now closed.

Great! now can we get back to the real issues i.e. the reports on Bifo.

Technology Review: Build Your Own Cellular Network

Build Your Own Cellular Network

Just about anybody can create an inexpensive cellular base station that routes calls all over the world.

By Erica Naone

Credit: OpenBTS

The task of running a cellular network has usually been reserved for major carriers. But now an open-source project called OpenBTS is proving that almost anyone can cheaply run a network with parts from a home-­supply or auto-supply store. Cell-phone users within such a network can place calls to each other and--if the network is connected to the Internet--to people anywhere in the world.

Good write up on OpenBTS, shame you have to pay for it.

Mystery startup uncloaks 512-core server

A server the side of a credit card

The basic unit of computing in the SM10000 server cluster is an Atom machine with four components: the Atom Z530 processor, which runs at 1.6 GHz and which has two threads for execution; the "Poulsbo" US15W chipset; the SeaMicro ASIC, for virtualizing I/O and implementing the fabric; and a SODIMM memory slot. This server is about 2.2 inches by 3 inches, with the memory module on one side and the other components on the other. That's reducing a server from the size of a pizza box to the size of a credit card. Here's how they lay out on a single SeaMicro server board:

SeaMicro Atom Server Board

The SeaMicro SM10000 server board.

As you can see from the picture above, the SeaMicro SM10000 server board has eight Atom servers (one chip and one chipset) on a single printed circuit board. The smaller chip is actually the processor and the larger, darker chip is the chipset. The four ASIC chips that virtualize the I/O and implement the interconnect are along the bottom, and SeaMicro has designed the mobo so it links back into the chassis using two absolutely standard PCI-Express 2.0 x16 slots, side by side. (Let this be a lesson to you proprietary blade server makers with you non-standard backplanes and interconnect electronics). This board measures 5 inches by 11 inches.

The SM10000 chassis has 128 PCI-Express 2.0 x16 slots, arranged in eight vertical columms, four on the left and four on the right of the chassis. You plug in 32 boards (two columns of 16) on each side to get your 512 Atoms per chassis. Like thus:

SeaMicro SM10000 Side View

The SM10000, front and side view.

With each Atom server having its own 2 GB SODIMM, the chassis supports up to 1 TB of main memory across the 512 server nodes. The chassis has room for up to 64 SATA or solid state disk drives in the front (you always pull cold air over disks, so they need to be in the front). The disks and server boards are plug and play, so you don't have to reboot to add capacity. The servers need to talk to the outside world, of course, so the homegrown networking fabric and switch created by SeaMicro for the SM10000 has uplinks, which you can see here:

SeaMicro SM10000 Back View

The back-end of the SM10000 server chassis.

The chassis has different network modules, which offer 8 to 64 Gigabit Ethernet uplinks or 2 to 16 10 Gigabit Ethernet uplinks per chassis. The FPGAs implementing the load balancer and terminal software as well as the switching software are in the chassis.

The whole box burns under 2 kilowatts of juice running real workloads, which is a quarter of the power that a rack of two-socket x64 boxes will do.

The SM10000 will be available on July 30, with a base configuration running $139,000.

How cool is this, great design.

XenServer 5.6 OVF Appliance Wizards

posted by Jeff Gee

A hidden jewel in XenServer 5.6 release is the OVF Appliance Wizards.  There are three wizards aptly named:

  • Appliance Import Wizard
  • Appliance Export Wizard
  • Disk Image Import Wizard

Each wizard opens up the possibility for users to take XenServer 5.6 to new places.  Let's take a quick look.

Appliance Import Wizard

This wizard provides the primary mechanism to import OVF packages.  This may seem simple  enough, however, this wizard not only imports XenServer OVF packages, it also imports OVF packages created by other vendors.  As XenServer users, we now have the ability to import OVF created by VMware and Oracle products.  Behind the scenes, the wizard manages the intricacies of VMware and Oracle's OVF format as well as the .vmdk and .vdi virtual disks.   But that is only the first step.  The Appliance Import Wizard must also 'Fixup' the guest operating systems to run in a XenServer environment.  This process can be tricky given the myriad of Linux distributions and Windows versions out there.  The wizard aims to do its best given these circumstances.  As for XenServer derived OVF packages, the wizard manages a list of capabilities available to produces of the OVF package.  Take a look a this short video for more:


Appliance Export Wizard

This wizard provides users to create XenServer based OVF packages supporting an array of configuration options.  Users have the option to export OVF packages containing one or more virtual machines.  These OVF packages can be archived into a single file (easing transport), compressed, encrypted, digitally signed and for virtual appliance purposes, contain EULAs.  This short video describes the process:


Disk Import Wizard

This wizard offers users something that they've longed for:  a wizard driven process for to import non-XenServer virtual disks.  The wizard provides direct import (no disk conversion required) for .vmdk, .vhd., .vdi and .wim content.   This opens the door to all of those stranded virtual machines we cannot live without and puts the nail in the coffin of keeping legacy hypervisors around just for the purpose of running that special VM.   As with importing OVF from non-XenServer sources, Fixups are  still part of the process and even more important.  We'll discuss the Fixup process in more detail in future posts.  Check out this video to view how to import a disk:

Looks good