Server deployment


Published on

Published in: Technology, Design
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Server deployment

  1. 1. Server DeploymentBUET SADD
  2. 2. Why Server Deployment ??
  3. 3. Why use Cloud Servers???- not Dedicated Servers???
  4. 4. Why Cloud Servers???• Server redundancy– If a physical server fails, cloud servers can automatically beswitched to other live physical servers.• Data redundancy• Affordability– only pay for the resources that you use• Scalability– start with minimum resources and later you can expandthem as per your requirements– Flexible, easily done using software• No single point of failure
  5. 5. Some Cloud Hosts• Amazon AWS :• Rackspace Cloud :• Firehost :• Google Compute Engine:
  6. 6. • Windows Azure :• Appfog :• PHP Cloud :• HEROKU :• OpenShift :
  7. 7. Deployment In OpenshiftStep by Step• Signup– Visit and signup a free account– An email will be sent to your given mail address with a link, click thatto activate your account• Open the Console and Create an Application– Go to– You’ll be provided with number of platform options in thelanding page• PHP, Ruby, Python, Java, Node.js etc– Choose the one you need• We will deploy a sample PHP application– So we choose “PHP 5.3” under “PHP” category
  8. 8. • In the landing page we need to provide the Public URL ofyour app– through this URL your application will be accessible to all– one portion of the url will always be consisting of your username and“rhcloud”, you need to provide the other part– Can be changed later• After providing the public URL, hit “Create Application”
  9. 9. • In the landing page you will be provided yourfull public url
  10. 10. • Openshift uses Git to manage your codebase– The needed git commands will be provided too• At first you need to clone the default codebaseinto your workstation– But before that we need to setup a secure connectionby providing SSH key
  11. 11. Setting Up SSH Key• Can be done by software Link given inresources section• We will use Git. OH YE !!• Open git and run the following command– ssh-keygen -t rsa -C ""– Replace with your ownemail address – Provide a passphrase– Your key will be saved in a file “id_rsa“ in alocation similar to this “Your identification hasbeen saved in /c/Users/you/.ssh/id_rsa.”
  12. 12. And you are done with the SSH Key
  13. 13. • Now first go to “My Account”• Under the “Public Keys” section– Select “Add a new key.”
  14. 14. • Copy the content of “” file andpaste it to corresponding field• Provide a name for the key and hit create• Now we can use Git to manage the codebase
  15. 15. • Now go to “My Application” and choose thecorresponding application name
  16. 16. • Copy your repository address• Open git in a folder of your pc and run thecommand– git clone your_repository• So all the default code in the server is nowcloned/copied into that folder (say folder name is“Codebase”)
  17. 17. • The codes are copied in a folder structure like this• All the codes will be copied inside a folder namedas your app name - “picpuzzle in our samplecase”• Inside that folder there is a folder named php• Copy all your code in that folder• You may need to change some of the configvariables before uploading like : baseurl,database name etc
  18. 18. • Open git bash in the folder named same to yourproject name• Run the command “git status” in git bash to see ifthe files we copied correctly or not– You should see all the copied files under untrackedfiles• Run “git add -A”• Run git commit –m “Fresh_project”• The run “git push origin master”– This should start uploading your codes in the server• Go to the public url set before, after the pushcommand finish completes execution
  19. 19. Adding Other Functionality• Most of the time you also need Functionalitieslike Database , Cron Job etc.• Openshift provides this in the form ofcartridges• Each cartridge provides some functionality• We will add “MySQL Database” and“phpMyAdmin” cartridge in our app
  20. 20. Adding a cartridge• Go to your application and hit “Add cartridge”
  21. 21. • Select the needed cartridge , for this case“MySQL”
  22. 22. • Then Select “Add cartridge”• The landing page will contain the neededcredentials : Root User, Root Password,Database Name• Save this info for future use
  23. 23. • Add phpMyAdmin cartridge like before• Save all the credentials for future use– Root User– Password– URL :• follow the URL link to log in to phpMyAdminproviding the username password
  24. 24. • Now you can do your database operations • You should use the corresponding IP address(highlighted in the box – 127.3. ..) ashostname of database
  25. 25. Resources••••
  26. 26. Resources••••