Franske ITC-2900 SP16 Possible Projects: Difference between revisions

From ITCwiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(2 intermediate revisions by the same user not shown)
Line 21: Line 21:
* Updated documentation for installing and using current versions of OpenWRT on the WRT300N routers to be shared on the OpenWRT wiki site
* Updated documentation for installing and using current versions of OpenWRT on the WRT300N routers to be shared on the OpenWRT wiki site
* Build and test a mesh network
* Build and test a mesh network
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations
==Linux Software Mirror==
===Introduction===
Your goal with this project is to create a self-updating/sustaining Linux operating system local mirror which would allow ITC students to more quickly install and update their Linux systems. The primary OS which must be supported is Debian Linux but you may choose to include other Linux distributions in the mirror as well. Your mirror needs to automatically stay up to date with the latest Linux distribution files and should support delivering files over IPv4 and IPv6.
===Resources===
* Linux VM
* SAN backed storage
===Deliverables===
* A working and self-updating Linux distribution mirror (at least for Debian, possibly other distributions as well)
* Configuration documentation of the mirror
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations


Line 80: Line 69:
* Develop a recommendation on the best choice based on department constraints
* Develop a recommendation on the best choice based on department constraints
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation
==SAN Benchmarking==
===Introduction===
There are a number of different schemes for connecting remote storage to hosts over a network infrastructure. In this project you will setup and benchmark several popular methods of doing this and report on the results. The primary SAN technology you will be working with is iSCSI. The SAN servers, referred to as iSCSI "targets", may be Windows servers, basic Linux servers, or specialized SAN servers or devices. Furthermore these may be configured as direct block access to a physical device such as a hard drive or as a virtual hard drive file residing on top of a physical drive and filesystem. The clients, referred to as iSCSI "initiators", may be vmWare servers, Windows servers or desktops, or Linux servers or desktops. As you can see there are many variables which can exist in even a simple iSCSI system. Your job is to setup a number of different configurations and benchmark them for ease of setup, speed, and other factors which you determine and report on the results.
===Resources===
* ITC Department FreeNAS SAN Server
* Windows Storage Servers
* Client Servers/PCs
* ITCnet network backbone
* Possible vendor SAN hardware
You may research and evaluate other programs as well.
===Deliverables===
* Design and implement a test environment for iSCSI which includes a variety of initiators and targets
* Develop criteria for evaluating iSCSI performance and define test environment, benchmarking software and settings, etc.
* Prepare a written whitepaper and oral presentation detailing the process, criteria, and results


==Remote Access Lab Equipment==
==Remote Access Lab Equipment==
Line 130: Line 104:
* Develop a recommendation on the best choice based on department constraints
* Develop a recommendation on the best choice based on department constraints
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation
=Taken Projects=
==Grid/Cluster High Powered Computing==
===Introduction===
It's possible to use a cluster of multiple individual systems to work on a very CPU intensive problem. One example of this is Bitcoin mining, a more reasonable problem is the weather modeling done to predict rain/snow and temperature in advance. In this project you would experiment with connecting multiple individual computer systems together into a grid/cluster to improve processing power. Your specific goal would be to run the WRF weather forecasting model to predict the weather as quickly as possible.
===Resources===
* Open source WRF forecasting software
* Lots of computers to connect
* Linux
===Deliverables===
* Design, implement and test configurations which combine computing power from multiple PCs to more quickly compute weather forecast models
* Weather forecasts
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations
==SAN Benchmarking==
===Introduction===
There are a number of different schemes for connecting remote storage to hosts over a network infrastructure. In this project you will setup and benchmark several popular methods of doing this and report on the results. The primary SAN technology you will be working with is iSCSI. The SAN servers, referred to as iSCSI "targets", may be Windows servers, basic Linux servers, or specialized SAN servers or devices. Furthermore these may be configured as direct block access to a physical device such as a hard drive or as a virtual hard drive file residing on top of a physical drive and filesystem. The clients, referred to as iSCSI "initiators", may be vmWare servers, Windows servers or desktops, or Linux servers or desktops. As you can see there are many variables which can exist in even a simple iSCSI system. Your job is to setup a number of different configurations and benchmark them for ease of setup, speed, and other factors which you determine and report on the results.
===Resources===
* ITC Department FreeNAS SAN Server
* Windows Storage Servers
* Client Servers/PCs
* ITCnet network backbone
* Possible vendor SAN hardware
You may research and evaluate other programs as well.
===Deliverables===
* Design and implement a test environment for iSCSI which includes a variety of initiators and targets
* Develop criteria for evaluating iSCSI performance and define test environment, benchmarking software and settings, etc.
* Prepare a written whitepaper and oral presentation detailing the process, criteria, and results


==Improved Network Monitoring==
==Improved Network Monitoring==
Line 147: Line 149:
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation


=Taken Projects=
==Linux Software Mirror==
==Grid/Cluster High Powered Computing==
===Introduction===
===Introduction===
It's possible to use a cluster of multiple individual systems to work on a very CPU intensive problem. One example of this is Bitcoin mining, a more reasonable problem is the weather modeling done to predict rain/snow and temperature in advance. In this project you would experiment with connecting multiple individual computer systems together into a grid/cluster to improve processing power. Your specific goal would be to run the WRF weather forecasting model to predict the weather as quickly as possible.
Your goal with this project is to create a self-updating/sustaining Linux operating system local mirror which would allow ITC students to more quickly install and update their Linux systems. The primary OS which must be supported is Debian Linux but you may choose to include other Linux distributions in the mirror as well. Your mirror needs to automatically stay up to date with the latest Linux distribution files and should support delivering files over IPv4 and IPv6.
===Resources===
===Resources===
* Open source WRF forecasting software
* Linux VM
* Lots of computers to connect
* SAN backed storage
* Linux
===Deliverables===
===Deliverables===
* Design, implement and test configurations which combine computing power from multiple PCs to more quickly compute weather forecast models
* A working and self-updating Linux distribution mirror (at least for Debian, possibly other distributions as well)
* Weather forecasts
* Configuration documentation of the mirror
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations
* Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations

Latest revision as of 01:35, 13 January 2016

Possible Projects

Web Based Active Directory Account Management

Introduction

Accounts on the ITC network are currently maintaining in Microsoft Active Directory. Right now some "self service" things like changing your password are a bit complex for users. Your goal would be to implement a self-service portal for Active Directory users where they could log in to a website to do things such as change their password, reset a password, apply for an account, etc. You may find existing web software for this or you may need to write/modify your own software for some functionality.

Resources

  • Active Directory infrastructure
  • Web server

Deliverables

  • Account management web portal
  • Configuration documentation of the portal along with any code used/created
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations

Low Cost Wireless Experimentation

Introduction

Your goal with this project is to try and squeeze some more life out of old Linksys WRT300N routers. By installing the OpenWRT software on them you will be able to experiment with setting up VLANs, mesh wireless networks, enterprise wireless networking, etc. Mesh wireless networking allows for each node in the network to also act as a repeater for the network extending the overall network range and capacity.

Resources

  • Linksys WRT300N Routers
  • OpenWRT Software
  • Wireless clients

Deliverables

  • Updated documentation for installing and using current versions of OpenWRT on the WRT300N routers to be shared on the OpenWRT wiki site
  • Build and test a mesh network
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations

Asterisk PRI Integration

Introduction

The ITC department currently has a "PSTN Simulator" running Cisco IOS and CUCME (Cisco Unified Communications Manager Express) but the configuration is complex and difficult to manage. Your goal is to implement the same functionality of the PSTN Simulator using the open-source Asterisk PBX. This will require some experimentation with the Asterisk VoIP PBX software as well as experimentation surrounding integrating it with the T1 ports on the Cisco hardware.

Resources

  • Cisco Routers with T1 cards
  • Asterisk PBX Software

Deliverables

  • Design, implement and test configurations which replicate PSTN Simulator functionality using Asterisk
  • Document all configurations
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations

Network Access Control

Introduction

The Inver Hills ITC department has an academic, demonstration, and research network ("ITCnet") which uses network devices from Cisco and HP and supports a number of virtual machines, hosts, and devices including Windows, Linux, Android, iPhone, and more. Network ports are not physically securable but it may be possible to improve security on this network by implementing some type of Network Access Control (NAC) which restricts access to network resources until a user authenticates to the network. Users on our network are stored in an Active Directory system which is also accessible through LDAP and RADIUS methods. It has been determined in previous groups that PacketFence is a reasonable option for NAC but test implementations with switches and wireless APs have not been completed. You task would be to setup and test PacketFence with the Cisco and HP/3Com switches we use as well as with the Ubiquiti UniFi APs (running OpenWrt) and to document your results.

Resources

  • Cisco Switches
  • HP/3Com Switches
  • Wireless APs and Controllers
  • Windows Server / Active Directory
  • PacketFence Open Source NAC

Deliverables

  • Design and implement a test network environment
  • Determine, test, and document configurations which will meet the 802.1x and captive portal requirements
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations

Logfile Collection and Analysis

Introduction

The Inver Hills ITC department has an academic, demonstration, and research network ("ITCnet") which is comprised of a number of physical and virtual hosts running various operating systems including several versions of Windows server and desktop, several Linux distributions, vmWare host servers, and BSD along with network devices from Cisco and HP. In an effort to better understand and track what's happening on this network a number of monitoring tools have been implemented over the past year including Nagios and Cacti which can poll SNMP and service availability data from these various systems and devices. We'd like to take this to the next step by centralizing log file collection and analysis and allowing us to use a single program or web portal for viewing log events across all these devices.

Resources

Software programs you may want to evaluate in this space are:

  • Logstash
  • Fluentd
  • Nxlog
  • Graylog2
  • LOGalyze
  • Octopussy
  • SNARE
  • OSSEC
  • syslog-ng

You may research and evaluate other programs as well. Programs should be able to collect logs from our wide variety of host OSs and devices for central monitoring. Strong preference should be given to free and open source packages as we are a resource constrained department.

Deliverables

  • Design and implement a test environment for logfile collection and analysis which includes the wide variety of hosts and network devices which may generate logging
  • Install and test a minimum of three logfile collection and analysis packages
  • Develop criteria for evaluating the packages
  • Develop a recommendation on the best choice based on department constraints
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation

Remote Access Lab Equipment

Introduction

The Inver Hills ITC department has some Cisco lab equipment which could be a valuable learning environment for students to connect to and use remotely. VPN access is already available for students to connect to ITCnet remotely but they are currently unable to access lab devices remotely. Access to lab devices should be controlled by the ITCnet Active Directory user groups. Computers in the lab topology should be provided through the existing VM infrastructure.

Resources

  • Standard lab pod equipment
  • Virtual Machine Infrastructure
  • Cisco Switches
  • HP Switches
  • Windows Server / Active Directory

Deliverables

  • Design, document, and build a lab topology which will work for a variety of classes and which utilizes VMs on the existing infrastructure for client PCs
  • Research, configure, and document configuration of remote terminal servers for access to Cisco device console ports which authenticate back to Active Directory
  • Research, test, and document the use of the remote access environment
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation

Automated Linux Deployment

Introduction

Research, test, and document automated solutions for deploying Debian Linux operating systems to physical and virtual machines. Deployment should include installing the base operating system, creating user accounts, installing packages, and pre-loading configuration files. Additional scripting capability such as automatically setting up the machine to authenticate to an Active Directory domain, etc. is appreciated but not required.

Resources

  • Linux Servers
  • NAS Server
  • Windows Server / Active Directory
  • Fully Automatic Installation (FAI) framework
  • Puppet
  • Chef
  • CFengine
  • Bcfg2

Deliverables

  • Design and implement a test network environment
  • Research a variety of options and select a minimum of three promising configurations for testing
  • Develop criteria for evaluating the options
  • Build and test a minimum of three solutions
  • Develop a recommendation on the best choice based on department constraints
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation

Taken Projects

Grid/Cluster High Powered Computing

Introduction

It's possible to use a cluster of multiple individual systems to work on a very CPU intensive problem. One example of this is Bitcoin mining, a more reasonable problem is the weather modeling done to predict rain/snow and temperature in advance. In this project you would experiment with connecting multiple individual computer systems together into a grid/cluster to improve processing power. Your specific goal would be to run the WRF weather forecasting model to predict the weather as quickly as possible.

Resources

  • Open source WRF forecasting software
  • Lots of computers to connect
  • Linux

Deliverables

  • Design, implement and test configurations which combine computing power from multiple PCs to more quickly compute weather forecast models
  • Weather forecasts
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations

SAN Benchmarking

Introduction

There are a number of different schemes for connecting remote storage to hosts over a network infrastructure. In this project you will setup and benchmark several popular methods of doing this and report on the results. The primary SAN technology you will be working with is iSCSI. The SAN servers, referred to as iSCSI "targets", may be Windows servers, basic Linux servers, or specialized SAN servers or devices. Furthermore these may be configured as direct block access to a physical device such as a hard drive or as a virtual hard drive file residing on top of a physical drive and filesystem. The clients, referred to as iSCSI "initiators", may be vmWare servers, Windows servers or desktops, or Linux servers or desktops. As you can see there are many variables which can exist in even a simple iSCSI system. Your job is to setup a number of different configurations and benchmark them for ease of setup, speed, and other factors which you determine and report on the results.

Resources

  • ITC Department FreeNAS SAN Server
  • Windows Storage Servers
  • Client Servers/PCs
  • ITCnet network backbone
  • Possible vendor SAN hardware

You may research and evaluate other programs as well.

Deliverables

  • Design and implement a test environment for iSCSI which includes a variety of initiators and targets
  • Develop criteria for evaluating iSCSI performance and define test environment, benchmarking software and settings, etc.
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, and results

Improved Network Monitoring

Introduction

The Inver Hills ITC department has an academic, demonstration, and research network ("ITCnet") which uses network devices from Cisco and HP and supports a number of virtual machines, hosts, and devices including Windows, Linux, Android, iPhone, and more. Some basic network monitoring using Nagios and Cacti has been achieved but it should be expanded. Other network monitoring software such as Zabbix should be explored as alternatives. You will need to research and determine key performance metrics and services for servers and network infrastructure which should be monitored to determine overall network health. Implement these monitoring metrics and configure threshold alerts for service interruption.

Resources

  • Linux Servers
  • Windows Servers / Active Directory
  • Routers, Switches, Wireless APs, UPSs, etc.
  • Cacti
  • Nagios
  • Zabbix

Deliverables

  • Determine and document key performance metrics and services on ITCnet
  • Create and document monitoring software configurations for monitoring key metrics and services
  • Test monitoring software configurations
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and recommendation

Linux Software Mirror

Introduction

Your goal with this project is to create a self-updating/sustaining Linux operating system local mirror which would allow ITC students to more quickly install and update their Linux systems. The primary OS which must be supported is Debian Linux but you may choose to include other Linux distributions in the mirror as well. Your mirror needs to automatically stay up to date with the latest Linux distribution files and should support delivering files over IPv4 and IPv6.

Resources

  • Linux VM
  • SAN backed storage

Deliverables

  • A working and self-updating Linux distribution mirror (at least for Debian, possibly other distributions as well)
  • Configuration documentation of the mirror
  • Prepare a written whitepaper and oral presentation detailing the process, criteria, results, and configurations