Beruflich Dokumente
Kultur Dokumente
4
(Installation for v.4) www.vicibox.com
Foreword
Some basic Linux skills and general IT knowledge is assumed throughout parts of this document. or this reason! this guide does not cover topics such as basic networking! "# burning! partitioning scheme design! var$ing infrastructure methodologies! validit$ of install! and other unmentioned topics or variations of installation. To find out more about an$ of the steps in this document! or to learn more about an$ particular %ici&ox install or %ici#ial setup! we suggest $ou search and ask 'uestions on the %ici#ial forums at http())www.vicidial.org)%I"I#I*Lforum). In addition! $ou can find more information with regards to Linux! +penSuS,! and other general topics b$ using -oogle and)or the official +penSuS, v../.. documentation located at http())doc.opensuse.org)opensuse.html. %ici&ox is a self0contained installation "# based upon the +penSuS, v../.. Linux distribution. It includes both online as well as offline installation capabilities. %ici&ox v.4.1 removed support for the 2branch3 installation option in favor of working solel$ with S%4 2trunk3. This allows a more forward approach to upgrades as well as better support from both the communit$ forums and the paid %ici#ial -roup packages. 5ou will need to update to an S%4 revision to use %ici&ox v.4.16 with non0%ici&ox v.4.1 installations. "luster support was improved due to a new perl0based installer that will pull in settings from the central database. #ue to an +SI compliance issue the built0in support for Sangoma 7anpipe was removed as it was deemed inappropriate for distribution under the guidelines at +penSuS, &uild Service. Support for Sangoma 7anpipe is still available but re'uires internet connectivit$ and manual installation using an included script.
ViciBox !"xpress#
* %ici&ox 2,xpress3 s$stem consists of all maEor roles including #atabase! 7eb! and Telephon$ server. Asing the minimum hardware specifications listed above! this would be well suited for a call center up to .= agents doing outbound calling with call recordings at a 4(. ratio. 7hen used for inbound the same minimum hardware specifications are acceptable for up to /= agents. 9lease note that the figures presented are a conservative guideline and that $our actual s$stem capacit$ is heavil$ determined b$ the number of agents! number of leads! concurrent call count! dialing ratio if applicable! and the general capacit$ of the hardware. It is for this reason that additional specifications were provided should $ou run into an$ minor load issues. 9articular attention should be paid to the siBe of the hard0drive(s) installed in the s$stem if $ou record $our calls. The most fre'uent support issue we find from new customers is a crashed s$stem from the hard0drive being full of recordings.
ViciBox !Cluster#
"lustering is where multiple individual servers perform specific roles within %ici#ial. Those roles are #atabase! 7eb! Telephon$! and *rchive server. "lustering should generall$ be used for an install consisting of more then /1 outbound agents or 81 inbound agents. If $ou do not know or are unsure of whether $ou should perform a clustered install please consult with the free communit$0based %ici#ial forums or paid0for %ici#ial -roup for support. 9lease be prepared to explain $our planned installation including number of agents! call t$pe (+utbound)&lended)Inbound)! expected dialing ratio or concurrent call volume! archival re'uirements! and an$ other uni'ue processes or re'uirements $ou ma$ have. This will help generate a more accurate answer to $our 'uestions. * minimum starting cluster would consist of a single Telephon$ server and a combined #atabase and 7eb server. * three server cluster! whereb$ there is at least a single server dedicated to performing the roll of a #atabase! 7eb! and Telephon$ server is the more robust option and re'uires little to no reconfiguration as the cluster grows in siBe. %ici#ial scales horiBontall$ for all roles except the #atabase. or this reason! $ou will need to spend extra time deciding on the siBe of $our #atabase server. The specifications we recommend for a database server up to .=1 agents is as follows( @uad0"ore "9A /.1-hB6 >-& ,"" ?am 40drive 811-&6 .=; S*S ?*I#0.1 on a hardware batter$0backed caching controller (LSI F/:1! etc) ?edundant 9ower Supplies on a batter$ back0up To add to the above specification for handling up to 811 agents would be as follows( Two @uad0"ore "9A /.1-hB6 .:-& ,"" ?am or a =11 agent #atabase server! adding to the specification! would be as follows( Two +ctal0"ore "9A /.1-hB6 8/-&6 ,"" ?am 40#rive /41-&6 ?*I#0.1 on SS# with SS#0optimiBed ?*I# card or software Linux ?*I# Two Seperate =11-& enterprise0grade S*T* drive for the +S in a ?*I#0.
Cluster $imensioning
"lustering of the 7eb and Telephon$ roles in vicidial is done horiBontall$. This means that as $our capacit$ grows $ou simpl$ add more servers to $our cluster to compensate. * cluster should alwa$s start with at least one dedicated Telephon$ server and a combination #atabase and 7eb server. If $our total agent capacit$ will be less then =1 agents then $ou can use the optional server specifications provided under the 2"ompatibilit$ and 9rere'uisite3 section for $our #atabase. *ll other clustering options should use one of the database0specific specifications listed under the 2%ici&ox "luster3 section. *ll 7eb and Telephon$ servers Eust need to adhere to the base specifications listed under the 2"ompatibilit$ and 9rere'uisite3 section. In general! $ou can expect to get /= outbound agents dialing 4(. ratio or =1 inbound agents with .11 concurrent lines on a dedicated Telephon$ server using the standard hardware specification. It is recommended to use the optional specification for recording long call durations or inbound call centers. * dedicated 7eb Server will handle approximatel$ .=1 agents using the standard hardware specification. 7hen more then one web server is used it is recommended to configure a third machine to act as a login load0balancer between the multiple servers. The agent will initiall$ go to load balancer to log in and then be redirected to one of the back0end servers. "onfiguration of the load balancer is done through the use of the modGprox$Gbalancer module in *pache and is not covered b$ this document. There are man$ examples and walk0throughs for the more technicall$ inclined b$ searching -oogle. &elow are some examples of dimensioning for various agent loads( =1 *gents +utbound 4(. +ptional <ardware Specification for #atabase)7eb Two Telephon$ Servers 0 Standard or +ptional specification D= *gent +utbound 4(. Standard #atabase specification +ne 7eb server H Standard or +ptional specification Three Telephon$ servers 0 Standard or +ptional specification .11 *gent +utbound 4(. Standard #atabase specification +ne 7eb server H Standard or +ptional specification our Telephon$ servers 0 Standard or +ptional specification /11 *gent +utbound 4(. 8110agent #atabase specification Two 7eb servers H Standard or +ptional specification ,ight Telephon$ servers 0 Standard or +ptional specification +ptionall$ one 7eb server to act as login load balancer and administration H Standard or +ptional Specifications
.11 *gent Inbound Standard #atabase Specification +ne 7eb server H Standard or +ptional specification Two Telephon$ servers 0 Standard or +ptional specification /11 *gent Inbound 8110agent #atabase specification Two 7eb servers H Standard or +ptional specification our Telephon$ servers 0 +ptional specification +ptionall$ one 7eb server to act as login load balancer and administration H Standard or +ptional Specifications =11 *gent +utbound 4(. =110agent #atabase specification our 7eb servers H Standard or +ptional Specification Twent$ Telephon$ Servers 0 Standard or +ptional Specification +ne web server to act as login load balancer and administration 0 Standard or +ptional Specification =11 *gent Inbound =110agent #atabase specification our 7eb servers H Standard or +ptional Specification Ten Telephon$ Servers 0 +ptional Specification +ne web server to act as login load balancer and administration 0 Standard or +ptional Specification * dedicated *rchive server was not put onto an$ of the dimensioning examples but will assuredl$ be needed for an$ sort of long0term storage of recordings and back0ups. 7hile %ici&ox has the abilit$ to provision a server into the *rchive role it is not mandator$ that $ou use %ici&ox. *n archive server at itIs basest re'uirements needs an T9 service for %ici#ial to upload recordings to and a <TT9 service that allows $ou to access the recordings via browser. Cost 4*S and other servers that $ou have ma$ have in $our infrastructure can potentiall$ fill this role for $ou. 7e recommend $ou have at least .T& of storage! /T& optionall$! and monitor $our drive space usage periodicall$. The server specs for an *rchive server are ver$ little since it is Eust a file store. 7e do recommend that $ou have at least a ?*I#0. setup on the *rchive server to prevent drive failure. The standard hardware specification is also good but $ou can use a dual0core "9A instead of a 'uad0core. It should be noted that the Telephon$ server role is limited b$ software and not hardware during dimensioning. This means that it does not scale linearl$ with hardware specifications. If $ou doubled the hardware capacit$ $ou would not double the call or agent handling capacit$. This is because of the manner in which *sterisk scales starts to break down around or above /=1 concurrent internal channels. "onsidering one agent in a call can potentiall$ use 4 active internal channels we chose /= agents outbound as our general rule of thumb. There is no imposed limit to prevent $ou from putting as man$ agents or calls on a server as $ou want! but the chances of the asterisk process crashing resulting in $our call center being down greatl$ increase above the guidelines given. It is the opinion of the %ici#ial -roup that it is better to have an extra server and gain stabilit$ in the process.
Installation %uidelines
The standard IrootI password is IvicidialI on all install media. To login $ou simpl$ t$pe IrootI at the 2Login3 prompt and IvicidialI at the 29assword3 prompt. %ici&ox is available in both 8/0bit with 9*, and :40bit architectures. It is not available for non x>: based architectures like *?C or 9ower9". 7hile either option can be used! it is highl$ recommended to use the :40bit version on all #atabase servers. The Telephon$ and 7eb servers can use either 8/0bit or :40bit without there being an$ drawback to either option. *ll the installation instructions and %ici#ial work the same regardless of the architecture chosen. %irtualiBation is NOT recommended for an$ portion of %ici#ial except the *rchive server. #ue to the nature of %ici#ial all components operate in a real time capacit$. This is especiall$ true for the Telephon$ server since it handles the audio from agents and calls. %irtualiBed installations will not be supported b$ the %ici#ial -roup. Support for virtualiBed installations ma$ be available through the %ici#ial forums. The documentation is split up into two mandator$ phases and one optional phase. 9hase . consists of installing the +perating S$stem onto the server and configuring the base re'uirements necessar$ for %ici#ial to work. This includes things like ?*I# configuration! third0part$ drivers! and other considerations. 9hase . must be completed and network connectivit$ established prior to an$ remote installation assistance. The server configuration! such as non0privileged users and network configuration! can be set here. 9hase . covers two different installation options. * 29reload3 option which is the simplest method and the standard 2Live"#3 which is the most flexible and comprehensive. 9hase ..= are optional and recommended installation steps used to update the operating s$stem with an$ relevant updates and configure additional options like Sangoma 7anpipe. This would also be the appropriate time to do an$ custom work to the operating s$stem and itIs configuration prior to the installation of 9hase /. 9hase / is the final installation step that installs and configures %ici#ial on the server. This step should onl$ be done when the server is in itIs final production environment. If this is a cluster installation! then the #atabase server MUST be completed prior to attempting an$ other servers. The installer will not allow an install where it can not connect to the #atabase. If $ou have a planned *rchive server using %ici&ox! that should be installed prior to an$ Telephon$ servers. Some conventions used throughout the installation instructions are as follows( "ommands to t$pe will be contained within a single 'uote and should be t$ped exactl$ as how it appears between the 'uotes! example( Jcommand hereJ ;e$s to press on the ke$board will be in all capsK three examples( ,4T,? ,S" 8 ;e$ se'uences! or a multiple ke$ press! will be capitaliBed with a dash between each ke$ to press simultaneousl$K five examples( *LT04 *LT0@ "T?L0I "T?L0*LT0 . "ommentar$ and 4otes will be italiciBed explaining various options or explanations for that stage of the installation. ,ach section has a paragraph explaining the obEective of that phase of the installation! as well as a footer sa$ing where to proceed to the next section. The command prompt is signified b$ a red pound (L) sign and the cursor. ,xample( linux L G
D. *t the 9assword prompt! t$pe IvicidialI and press ,4T,? >. *t the command prompt! t$pe Ios0installI and press ,4T,?. If there is any custom confi&uration to be done to this server prior to OS installation, it should be done before this step. F. To change the default langauge! press *LT0L and select $our preferred language .1. To change the default ke$board la$out! press *LT0; and select $our preferred la$out ... 9ress *LT04 to agree to the license displa$ed and move on to the next screen ./. To change the displa$ed region! press *LT0, and use the up and down arrow ke$s to select $our preferred region. lternatively, the T * key can be used to switch between windows on this screen and proceedin& screens. .8. To change the displa$ed Time Mone! press *LT0M and use the up and down arrow ke$s to select $our preferred time Bone. .4. To accept the default partitioning scheme press *LT04 to proceed to the next screen. The partitionin& module in OpenSuS! v.01.0 is somewhat unreliable. /ou should see the summary list 2(reate swap volume 3dev3sda02 and 2(reate root volume 3dev3sda12. If not, please read the partitionin& notes under the Miscellaneous section at the end of this document prior to proceedin&. .=. 9ress *LT0I to install the operating s$stem according to the installation summar$ presented. /ou can use the up and down arrows keys to scroll throu&h the installation summary. /ou can press !"T!# on any hi&hli&hted section to ad4ust those installation options, althou&h those options will not be covered by this document. This is the point of no-return, do not proceed past here if this server already has important data on it. .:. 9ress *LT0I to confirm the destruction of the host s$stem and installation of the new operating s$stem. /ou will be presented with a screen showin& installation pro&ress and lo&s. t this point all data on the hard drive has been destroyed. .D. 7hen prompted! press *LT04 and then press ,4T,? to reboot the server. /ou may also use the left and ri&ht arrow keys to hi&hli&ht 2#eboot "ow2 and press !"T!#. It is a &ood idea to remove the () from the drive durin& reboot as well as settin& the *IOS to boot from the harddrive before any other devices. .>. #uring boot! at the <ostname prompt! t$pe in the preferred <ostname of this server and the applicable domain if it exists. !ach server in a cluster MUST have a uni5ue hostname6 The installation will fail otherwise. 7lease see step 0, under$"etwork (onfi&uration' subsection in 7hase 0.8 for preferred installation hostnames and &uidelines. .F. 9ress the T*& ke$ to highlight the #omain field. /1. ,nter the #omain for this server and press *LT04 to continue. If you do not have or know your )omain, enter 9vici.local9. /.. *t the 4ew Local Aser screen! if desired! enter the user credentials to use for a non0privileged user. 9ress *LT04 to complete the installation. If you do not want to set-up a non-privile&ed user, you can safely leave all fields blank and the installer will not create one. The installer will prompt you to make sure you do not want to create a user, you can safely press !"T!# while the /es is hi&hli&hted. lternatively, if the password you entered is not determined to be a hi&hsecurity password, it will also alert you. &ain, you can 4ust press !"T!# to continue. //. *t the login prompt! t$pe IrootI and press ,4T,?. /8. *t the password prompt! t$pe IvicidialI and press ,4T,?. /4. #ue to a bug in +penSuS, v../..! it is re'uired to reboot the server to restore proper screen function in $ast and other programs. T$pe IrebootI and press ,4T,?. The 9hase0. +S Installation using the standard IS+ is now complete. 5ou do not need to perform an$ other instructions labeled 29hase .3. 9lease proceed to the 9hase ..= installation instructions. 5ou will
need to complete the re'uired portions of 9hase ..= before continuing to 9hase /.
.:. ,nter the #omain name for this server. If you do not have or know your )omain, enter 9vici.local9. .D. 9ress *LT0. to select 4ame Server . field .>. ,nter the #omain of this server. .F. ,nter the primar$ name server to use on $our network. If you are behind a router this is typically the router I7. If you do not have or know your )"S server9s I7 then enter 9A.A.A.A9 to use &oo&le )"S. /1. 9ress *LT0/ to select 4ame Server / field /.. ,nter the secondar$ name server ot use on $our network. If you do not know or have a secondary )"S server, then enter 9A.A.A.A9 if not already used for Boo&le )"S, or 91.A.+C.111.1119 for Open)"S. //. 9ress *LT0A to change to the ?outing screen /8. 9ress *LT0 to select the #efault I9v4 -atewa$ field /4. ,nter the default gatewa$ I9 for $our network. This will be the I7 address of your router. This is determined by your local network3router and can not be determined remotely. If you have a second network interface card that is directly connected to an IS7 then you will enter the &ateway I7 provided by the IS7 here. /=. 9ress *LT0+ to +k the installation and make the changes. /ou can review the chan&es by pressin& %T-- for the overview, %T-S for the Dostname3)"S confi&uration, and %T-E for the routin& confi&uration. /:. %erif$ proper network connectivit$ b$ tr$ing to ping something on the internet! I.,. Iping google.comI. 9ress "T?L0" to stop the ping when satisfied. If you do not have internet connectivity try pin&in& another server or workstation on the network. In addition to basic network configuration! $ou can configure the built0in s$stem firewall b$ t$pe I$ast firewallI or select Securit$ 00O irewall after t$pe I$astI. The 9hase / installation script will ask $ou if $ou want to enable or disable the firewall and will automaticall$ open up the appropriate ports for %ici#ial to function if left enabled. 5ou onl$ need to configure advanced options if wanted. 9hase ..= 0 Install Apdates ,ecommended .. If not alread$! login as the root user b$ t$ping IrootI at the login prompt and IvicidialI at the password prompt. If you chan&ed the root password, or someone else has, you will need it to lo&in. The password can not be recovered easily and re5uires offline intervention. /. T$pe IB$pper refreshI to refresh the online repositories. If this step fails, then try a&ain later. The OpenSuS! repositories &o into maintenance at certain times and can be unavailable, makin& updates impossible to happen. 8. T$pe IB$pper upI to begin the update process. 4. If updates are available! the$ will be listed b$ B$pper! at the end $ou will be presented with a summar$ of the upgrades and asked if $ou want to "ontinue. 9ress 5 and then press ,nter to proceed with the updates.
9hase ..= 0 Install Sangoma 7anpipe #river )ptional .. If not alread$! login as the root user b$ t$ping IrootI at the login prompt and IvicidialI at the password prompt. If you chan&ed the root password, or someone else has, you will need it to lo&in. The password can not be recovered easily and re5uires offline intervention. /. T$pe Iwanpipe0compileI to download the driver and install it. This re5uires internet connectivity. If you would like =anpipe to be included in future -ici*ox versions then please contact San&oma and ask them to make an Open Source Initiative >OSI? license compatible driver. Only when they hear from you will they be motivated to move forward with it. 8. %erif$ $our driver is working b$ t$ping Iwanrouter hwprobeI! $ou should see $our Sangoma interface listed.
2&e 5ngrep/sip5 command There is an amaBingl$ useful but little known utilit$ that has been included in %ici&ox v.8..6 called Ingrep0sipI. 7hat this does is use ngrep! a network0grepIing utilit$I! and scans for SI9 traffic. ItIs use is prett$ straightforward! $ou t$pe Ingrep0sipI and it gives SI9 output. In addition to this! $ou can scan for SI9 traffic to a certain host or for a specific phone number. or instance! if $ou want to see the SI9 messages going to phone number >:88F8F881! $ou would run Ingrep0sip >:88F8F881I. It will then onl$ show $ou SI9 messages that have that phone number in it. 5ou can also use host to specif$ onl$ a certain host. So if $ou wanted to see SI9 messages going to a new carrier with I9 *.&.".#! $ou would t$pe Ingrep0sip host *.&.".#I. 5ou can also capture these messages to send to carriers when the$ inevitabl$ tell $ou ever$thing is great but the$ are broken. It should be noted that ngrep0sip does not displa$ correctl$ when using %L*4s on $our network! but it is still close enough to be readable if $ou understand SI9 messaging. ?emember! with all carriers! $ou are wrong until 5+A have proven otherwise. 2&e 5mys l/tuning5 command The Im$s'l0tuningI script will look at $our currentl$ running C$S@L configuration and give $ou generaliBed recommendations on tuning $our m$.cnf settings as well as show where an$ potential problems are. This is especiall$ useful for when things seem to be slowing down but nothings looks obviousl$ wrong. This is useful for when $ou hit $our C$S@L configured max connection limit. It will also show $ou if $ou have ever allocated more memor$ then $ou have ?*C which means $ou swapped out to disk. *ll ver$ useful things! but it is not .11R accurate in itIs recommendations. It is merel$ a tool used to guide $ou in the proper direction. It should not be used for fine tuning but for diagnostic and broad tuning. 6oiper 7eb P&one is installed The Boiper web phone is installed b$ default on all version of %ici&ox and works for up to 8 minutes if $ou want to test it. The web phone is 7indows onl$ and best installed initiall$ from Internet ,xplorer. 9oint I, to http())webserver.ip)agc)webphone) and it should download and install. +nce installation is complete! the webphone works from I,! ire ox! and "hrome. The Moiper 7eb 9hone License can be purchased from the %ici#ial -roup and installed for $ou or $ou can purchase it directl$ from Moiper and install it. The web phone is based upon $our full$ 'ualified domain name ( @#4) and is non0 refundable once issues. This means that if $ou tell them to generate the license for http())m$.webserver.com and $ou then later decide $ou wanted it to be http())some.webserver.com the license will not work. 5ou will have to purchase a second license for the new @#4 or sta$ with the old server name. 5ou also need to use a domain name as it will not work with I9 *ddressing directl$. Feedbac3 and Community *upport 7e like hearing from $ou. 7hether it is bugs! condemnation! or praise! we like it. It helps us to improve both %ici#ial and %ici&ox. 7ithout $our feedback things will not improve or move in the direction the communit$ wants it to. 9lease take some time to log into the communit$ forums at http())www.vicidial.org)%I"I#I*Lforum) and let us know how $ou did! good or bad. 5ou will find the
arra$ of talent available there to be excellent as well as the breadth of knowledge alread$ posted. 9lease remember to search for an$ issues or topics prior to posting to see if $our 'uestion has alread$ been answered. In addition to getting $ou $our answer 'uicker! it also makes others more likel$ to respond when the$ know $ou searched first. 7hen posting on the forum! it is considered proper eti'uette to state what installation medium $ou used! what the %ici#ial *dmin and &uild date are from the administration interface! what S%4 revision $ou are using! and an$ other pertinent information that might relate to $our issue or bug. or instance! using the version of %ici#ial shipped on %ici&ox v.4.1.1! with a D=0agent outbound cluster using the dimensioning mentioned previousl$! $ou would want to include the following in $our post so we know how best to start helping $ou( %ici&ox v.4.1.1 8/0bit preload &uild( ./1>8.0.=/> %ersion( /.:08D=a S%4 ?ev( .>=> .x#&! .x7eb! 8x#ialer! .x *rchive (or Telephon$) Credits and 2&an3s Thanks go out to all the active members of the %ici#ial "ommunit$ orums and those companies and individuals who sponsor features in %ici#ial and %ici&ox. These gu$s make things happen and push us to release bigger and better versions of %ici#ial and %ici&ox. The$ have committed code snippets for improving functionalit$! paid for features that ever$one gets to use! and beta tested earl$ versions to tr$ and find bugs before general release. Stop b$ and sa$ thanks! the$ like it. %ici#ial was written and cop$right b$ Catthew lorell. The god0father of %ici#ial and the %ici#ial -roup. %ici&ox was conceived initiall$ b$ Cichael "argile from the %ici#ial -roup. <e likes clowns that throw up sparkl$ rainbows. %ici&ox is currentl$ written and maintained b$ Sames 9earson from the %ici#ial -roup. The grave$ard engineer of %ici#ial -roup and the gu$ who screwed up that thing in %ici&ox $ou needed. Iterative testing and verification performed b$ ;eith <ughes! ?obert ?eeder! and Catt &orchert from the %ici#ial -roup. The NnormalN engineers! heh. ,nEo$ ()