Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • M MathJax
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 304
    • Issues 304
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 15
    • Merge requests 15
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MathJax
  • MathJax
  • Wiki
  • Amazon EC2

Amazon EC2 · Changes

Page history
Update EC2 info authored Jun 23, 2012 by Frédéric Wang's avatar Frédéric Wang
Hide whitespace changes
Inline Side-by-side
Amazon-EC2.md
View page @ ae62ceab
...@@ -51,12 +51,13 @@ ...@@ -51,12 +51,13 @@
* Network & Security * Network & Security
* Security Groups * Security Groups
- mathjaxtest - mathjaxtest
- ICMP, TCP, UDP from mathjax-test: allow total communication between member of the security groups. - ICMP, TCP, UDP from mathjax-test: allow total communication between member of the security groups.
- HTTP allow connection to the Web interface - HTTP allow connection to the Web interface
- SSH: allow connection to the Linux machine - SSH: allow connection to the Linux machine
- RDP: allow connection to the Windows machine - RDP: allow connection to the Windows machine
- The VNC port is disallowed. Use VNC over a SSH session for better security. - The VNC port is disallowed. Use VNC over a SSH session for better security.
- The Windows machine also has its own security configuration in addition to the above setting. In particular, "10.0.0.30" is in the list of Internet Explorer trusted sites and the Windows Firewall has specific rules to accept connection from the task handler.
* Key Pairs * Key Pairs
- mathjaxtest: key to use for remote access (SSH and RDP) - mathjaxtest: key to use for remote access (SSH and RDP)
...@@ -72,10 +73,13 @@ ...@@ -72,10 +73,13 @@
- Choose the mathjaxtest Security Groups and Continue. - Choose the mathjaxtest Security Groups and Continue.
- Launch the instance. - Launch the instance.
* Attaching Elastic IP to an instance * Associating Elastic IP to an instance
- Click on Network & Security => Elastic IPs - Click on Network & Security => Elastic IPs
- Allocate New Adress, choose VPC - Allocate New Adress, choose VPC, Yes Allocate
- Attach the address created to your instance - Right Click on the Elastic IP => Associate
- Associate IP to an instance, Yes Associate
## Remote Access
* Some SSH/VNC/RDP clients * Some SSH/VNC/RDP clients
- Linux: vinagre (SSH, VNC), rdeskop (RDP) - Linux: vinagre (SSH, VNC), rdeskop (RDP)
...@@ -83,30 +87,59 @@ ...@@ -83,30 +87,59 @@
* Linux Instance * Linux Instance
- Use a SSH client to connect to the instance. - Use a SSH client to connect to the instance.
- Once you are logged to a terminal, use ~/start.sh to start Selenium and VNC servers. On the main machine, this will also mount the mathjaxtest bucket on ~/MathJax-results/ and start the task handler. - Use the "screen" command to handle several windows. Quick guide to the screen environment: use "Ctrl + a, Ctrl + c" to create a new window, "Ctrl + a, Ctrl + n" to move to the next window, "Ctrl + a, Ctrl + p" to move to the previous window, use the "exit" command to close the current window and finally "Ctrl + a, Ctrl + d" to detach the screen session. When you detach a screen session, all the servers will keep running even if you logout from the SSH session. You can restore your screen session when you connect again with the command "screen -r" (provided the machine has not been stopped since your last connection).
- In one screen window, use "~/start.sh" to start the VNC server. On the machine 10.0.0.30, this will also mount the mathjaxtest bucket on ~/MathJax-results/ and start the task handler.
- If necessary, you may use a VNC client to connect to the instance. - If necessary, you may use a VNC client to connect to the instance.
* Windows Instance * Windows Instance
- Use a RDP client to connect to the instance. - Use a RDP client to connect to the instance.
- Open a Windows Session. - Open a Windows Session.
- Open a command line and execute "java -jar selenium-server.jar" to run the Selenium Server.
* Web Interface * Web Interface
- Open the page http://{public address of the main machine}/testing/web/ - Open the page http://{public address of the main machine}/testing/web/
- Read http://devel.mathjax.org/testing/web/docs/html/qa-web-interface.html for more details. - Read http://devel.mathjax.org/testing/web/docs/html/qa-web-interface.html for more details.
* Directory Structure
* Linux
* ~/start.sh: Bash script to start Selenium and VNC servers.
* ~/MathJax-test/: MathJax testing framework
* ~/MathJax-results/: mount point for Amazon S3 bucket
* ~/Desktop/Webdrivers/: Drivers for Chrome. Added to $PATH by ~/.bashrc.
* Windows
* ~\selenium-server.bat: Bat script to start the Selenium server.
* ~\selenium-server.jar: Selenium server.
* ~\Desktop\Webdrivers\: Drivers for Chrome and Internet Explorer. Added to $PATH.
* Installation (see [[Platform Supported]])
* Browsers: Firefox, Chrome, Internet Explorer, Safari, Opera, Konqueror.
* Fonts: STIX and Mathjax fonts.
* Plugin: MathPlayer
* Selenium Servers (see directory structure)
* Webdrivers (see directory structure)
# Running the Tests # Running the Tests
* Starting Selenium servers
- Linux: From a separate screen window, execute "~/seleniumServer.sh"
- Windows: Open "Windows PowerShell" and execute ".\seleniumServer.bat"
- If you have any problem to interrupt Selenium instances you may stop the server and run it again.
* Creating task
* Running task
# Stopping the Testing Framework # Stopping the Testing Framework
* Saving the test results to Amazon S3 * Saving the test results to Amazon S3
The test results are saved on the main machine in MathJax-test/web/results/. They will be cleared when the instance terminates. To keep them, just copy the The test results are saved on the main machine in MathJax-test/web/results/. They will be cleared when the instance terminates. To save a copy to Amazon S3, just copy the relevant files in ~/MathJax-results/.
relevant files in ~/MathJax-results/.
* Terminating an Instance * Terminating an Instance
Right Click on an instance and select terminate. This will totally clear the instance and its associated volume. Do not forget to release Elastic IPs addresses. Warning: this will totally clear the instance and its associated volume. Be sure to save unfinished task before doing so. In particular save a copy of the test results to Amazon S3. See also "Maintenance of the Testing Machine" if you need to update the AMIs.
- Right Click on an instance and select terminate.
- Check "Release Elastic IPs", Yes Terminate
# Maintenance of the Testing Machine # Maintenance of the Testing Machine
* Preserving the state of the Linux or Windows machines * Preserving the state of the Linux or Windows machines
Instances Actions => Create an AMI file. After a moment, a new AMI image and Snapshot will be created. Instances Actions => Create an AMI file. After a moment, a new AMI image and Snapshot will be created. You can now terminate the instance and delete the former AMI and Snapshot. Problem: it may be easy to unintentionally delete the Snapshot of a machine.
Clone repository

MathJax Wiki

  • Contributing
  • Development
    • Development Process
      • Release Process Checklist
      • Hotfix Release Process
      • Documentation Update Process
      • Source Control Policies
    • Design Documents
      • MathJax Roadmap
      • CDN Hosting
        • Managing Rackspace Cloud Files & CDN
        • Directory Structure
        • .htaccess settings
        • Managing Amazon Cloudfront
      • Performance Discussion
      • Profiling and Diagnostics Tools
      • Configuration Options
      • Documentation generation guide
      • Testing
        • Platforms supported
        • Amazon EC2
        • DSI test machine
  • MathJax web presence