Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document and facilitate t-shirt size deployments #36

Open
SorraTheOrc opened this issue Feb 8, 2018 · 5 comments
Open

Document and facilitate t-shirt size deployments #36

SorraTheOrc opened this issue Feb 8, 2018 · 5 comments
Labels
enhancement New feature or request Priority 1 (may address) Pull Requests very welcome, but we are unlikely to get to this ourselves.
Milestone

Comments

@SorraTheOrc
Copy link
Contributor

In #29 and #32 we added the ability to configure the deployment of the elasticsearch VMs and O365 Plugins, There are also a number of other configuration options not currently exposed via the default azuredeploy.parameters.json file.

We need to document these options clearly and provide some example "t-shirt size" configurations to guide users. That is, what configuration should be used for "5000 students", "10000 students", "25000 students' etc.

@SorraTheOrc SorraTheOrc added enhancement New feature or request Priority 1 (may address) Pull Requests very welcome, but we are unlikely to get to this ourselves. labels Feb 8, 2018
@SorraTheOrc
Copy link
Contributor Author

I've added docs/Parameters.md, at present it contains a jq script for generating documentation from azuredeploy.md and a copy of the output from this script. Further work is underway in the docs branch and will be merged periodically.

SorraTheOrc added a commit that referenced this issue Mar 30, 2018
…top and grouping logically). Add more detailed descriptions for most parameters. See #36)
@hosungsmsft
Copy link

This is partially addressed in the tshirt-sizing branch. More refinement/improvement should be done before releasing it to master.

@SorraTheOrc SorraTheOrc changed the title Document available parameters and recommended settings Document and facilitate t-shirt size deployments Apr 12, 2018
@hosungsmsft hosungsmsft added this to the v1.5.3 milestone May 14, 2018
@hosungsmsft
Copy link

Even though the tshirt-sizing branch merge added some tshirt-sizing recommendation into the master branch of the repo, it's still somewhat vague and the recommended SKU choices may be somewhat ambiguous. We'd like to have some more concrete recommendations (e.g., SKU types, number of VMSS instances, ...) for specific workloads and/or use cases. Eventually, it'd be desirable to provide some spreadsheet-like application that'll allow users to fill in some form characterizing use cases and/or workloads and generate recommended configurations (SKU types, VMSS instance count, HA option, DB size, ...).

@nimojg-microsoft
Copy link
Contributor

@hosungsmsft two questions:

  1. in terms of having a spreadsheet-like application - we might look at doing this in Excel using some of the new Excel api's or a Excel add-in

  2. do we want to leverage things like the rate card api so that we also can help predict costs? or do we want to stop at providing the configuration?

@SorraTheOrc
Copy link
Contributor Author

I think it is important to keep this very simple at this point. There is no need to use "new Excel api's" when a simple excel sheet would suffice. Similarly, integrating the rate card API would be interesting but I would see that as a stretch goal. Lets stay focused on doing a simple experiment now to see if it is even possible to build something useful.

Here's my suggestion:

  1. Gather essential data about expected workload, e.g.
    a. # concurrent users
    b. Data HA or not
    c. Automated backup or not
    d. Moodle data storage requirements
    e. Azure search, Elastic search or not

  2. Perform a “best match” against known load testing results

  3. Suggest a spec that will match requirements
    a. Assert this is only an estimate and point user to the load test scripts so they can validate the recommendation

  4. Point the user to the online cost calculator to estimate costs

In terms of implementation, whatever is easiest at this point. Lets consider this a PoC. If an Excel sheet is chosen then something like:

Sheet 1: Data input for the variables in point 1 (above) + a bunch of lookup formula for point 3 (above)
Sheet 2: The data from recommendations and our load testing results

The lookup formula would be:

  1. Match rows with nearest concurrent users match (rounding up) and highest performance metric
  2. Filter rows based on the options chosen

This tool should be built in such a way that whenever we do more load testing we can add those results to the tool and gradually improve the lookups. However, we should not try to do anything beyond simple lookups unless someone on the team has appropriate experience.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request Priority 1 (may address) Pull Requests very welcome, but we are unlikely to get to this ourselves.
Projects
None yet
Development

No branches or pull requests

3 participants