March 2017 rolls around and AWS releases awesome new flexibility with reserved instances (RI). You can now split and merge RI’s as well as be automatically be pro-rated on-demand instance costs if you own a lesser RI. I also watch YouTube videos that also explain how this new flexibility works and how great it is. But in the excitement of it all I don’t realize that this new flexibility only applies to regional Linux/UNIX RIs with shared tenancy within the same instance class.
Here’s a case example:
You run an e-Commerce site that runs an m4.large instance. On January 1st 2017 you reserved a m4.large instance for one year. Come December 1st, traffic is expected to double for the Christmas season, so you scale up your instance to a m4.x-large instance type until January 1st.
If Running Linux:
Your annual savings is 38% over on-demand if you were to use m4.large during the entire 2017 year. However jumping up to m4.x-large will increase your bill by about what a m4.large instance would cost on-demand for the month of December 2017. This pro-rated charge is done automatically. There are a couple Linux OS exceptions and hourly Software charges are not calculated in this example.
If Running Windows:
Your annual savings is 20% over on-demand if you were to use m4.large during the entire 2017 year. However jumping up to a m4.x-large will increase your bill by about what a m4.x-large instance would cost on-demand for the month of December 2017. Essentially your savings now are negative due to the fact that your instance is not pro-rated with your RI. This is due to the fact that you are still paying for your reserved instance of m4.large, but it’s not being used. Then on top of that you’re paying for a m4.x-large. As an example, one year of a reserved m4.large costs $1349.04, a savings of $332.88. One month of m4.large not being used costs on average $140.16. This brings your 20% savings down to around 9%. Hourly Software charges are not calculated in this example.
When running Linux you have fairly minimal risk involved when getting a reserved instance. However your risk goes up quite a bit reserving a Windows instance. There are a number of options to mitigate that risk level down. One option is to get a convertible RI. This allows you to exchange OS, family or tenancy. But keep in mind your big picture. For you this may only be good if you think you’ll need to move from a t2 to a m4 family. Another option is you can sell your unwanted RI on the marketplace at a reduced price. When looking at this option, consider how much savings equates to dollars and how much time you’ll need to calculate the risk, estimated savings reduction and time spent selling when selling an RI. Of course different instance types have different savings levels. In the end, it comes down to either a statistician to calculate risk vs. benefit or theories and experience.
In conclusion, I likely wouldn’t bat an eye getting either a standard or convertible RI for Linux if I largely suspected the RI would be needed for at least a year. But I would likely keep a Windows instance on-demand if there was any chance for instability unless I had enough on-demand instances to off-set the risk if one instance no longer matches an RI for a time period.
A common task on a SQL Server might be to copy a database into a new database. This could be on the same server or a different server.
On Amazon Web Service’s (AWS) Relational Database Service (RDS) this task becomes a little more complex to plan and execute. There are a few reasons for this:
- You don’t have access to the local file system outside of creating a database in the defaulted path.
- You do not have the needed permissions to run “Copy Database Wizard”
- Doing a “native” backup/restore using S3 would create a duplicate “family_guid” which is impossible to restore on your RDS instance without deleting the source database.
If you use MS SQL 2016 you can export/import a “Data-tier Application” which is stored as a “.bacpac” file. This is a schema and data native format package (not human readable). In reality it’s a .zip file, so if you open it in something like 7-Zip you can see the package contents. This package is going to be lacking items such as the physical index (the index configuration is intact) and the transaction logs. Therefore it tends to be smaller than an actual native backup.
Keep in mind all data is transmitted from the source machine (AWS RDS) to your workstation. If this is a larger database, you may wish to consider doing this from an EC2 instance to create a faster connection, provide for a larger drive workspace and potentially save on network costs.
Here are the steps to take to backup and then restore a “.bacpac” file. This example is done using AWS RDS, but the same steps would be taken for about any environment including local.
- Open Microsoft SQL Server Managment Studio (MSSMS) 2016 or better and connect to your database server.
- Right click the source database, go to tasks and “Export Data-tier Application”.
- Press “Next” to go to “Export Settings”. Enter a path on your local workstation to save the package to and press “Next”.
- After you press “Finish”, it will then begin the copy process from the source machine to your local machine.
- If you wish to import the database to another server, connect to it now via the MSSMS.
- Right-click the “Databases” group object and select “Import Data-tier Application”. Press “Next”.
- Specify the path on your local machine to the “.bacpac” file being imported. Then press “Next”.
- Specify a new database name. It can not be the name of an existing database. Press “Next” and then “Finish”.
- The new database will be created and imported.
You purchase a year-long EC2 Reserved Instance (RI) from Amazon Web Services (AWS). You’re now saving 30% on your sparkling EC2 instance cost!
Fast forward three months. Your project tanked and is costing you money instead of making money. You need to kill it and kill it fast.
But then you remember that one-year contract you have with AWS. <doomed>
You then remember that you can sell off your RI to a marketplace. Bank account saved – mostly.
That part is easy to research and follow the steps for success.
Now “Wannabe Joe” is looking for a deal and wants to purchase that discounted RI you’re selling off. Joe goes to the EC2 console and clicks “Reserved Instances”. He then proceeds to “Purchase Reserved Instances”.
He sees a paragraph:
Reserved Instances sold through the Reserved Instance Marketplace are identical to those sold by Amazon Web Services, except they may have different prices and terms. For more information about the Reserved Instance Marketplace, go to the Reserved Instance Marketplace web page.
He remembers about the marketplace selling unwanted instances so he clinks on the provided link. Listing, selling, fee and getting paid. All great for the seller. But how does he purchase one. Click-after-click just provides frustration.
Don’t worry Joe. You overthought the whole process.
- In the AWS Console Home, go to the EC2 console
- Press the “Reserved Instances” link on the left and then press the “Purchase Reserved Instances” button up top.
- Choose your platform, types, zone, term and tenancy.
- Press the “Search” button
- If there are any unwanted instances up for sale, they will be listed under the “Seller” column as “3rd Party”.
- Add to cart and away you go.
Reference and image by: https://aws.amazon.com/blogs/aws/amazon-ec2-reserved-instance-marketplace/
In 2013, the CA/Browser Forum passed an intent to allow a DNS domain name (joeblow.com) holder to specify one or more Certification Authorities (CAs) authorization to issue certificates for their domain. No other CAs would be authorized to issue that domain’s certificate.
This is accomplished by the domain holder adding a “CAA” record to their DNS for their domain. This helps mitigate the problem that the public CA trust system is only as strong as its weakest CA.
Organized in 2005, the CA/Browser Forum is a voluntary group of certification authorities (CAs), vendors of Internet browser software, and suppliers of other applications that use X.509 v.3 digital certificates for SSL/TLS and code signing.
View the full ballot.
On August 21st, 2017, Amazon Web Services (AWS) announced that their DNS service “Route 53” now supports CAA records.
Windows 10 and 8
- Press the Windows key.
- Type “notepad” in the search field.
- In the search results, right-click Notepad and select “Run as administrator”.
- In Notepad, open the following file: “c:\Windows\System32\Drivers\etc\hosts”
- Append your entry such as:
- Save changes
- Open the “/etc/hosts” file in a text editor such as vi or nano
- Make the necessary changes to the file.
- Save changes
Mac OS X 10.6 through 10.12
- Open Applications > Utilities > Terminal.
- Open the hosts file by typing the following line in the terminal window:
“sudo nano /private/etc/hosts”
- Type your domain user password when prompted.
- Edit the hosts file.
- Save the hosts file by pressing Control+x and answering y.
- Make your changes take effect by flushing the DNS cache with the following command:
Lucee 5.0 – 220.127.116.11 (current version) has a bug in scheduled tasks that seems to affect both Windows and Linux servers.
When scheduling a task, they end up getting marked as “expired” and never run. Not sure how this issue has made it this far into revisions, but as of this post it’s still an issue.
You can work around this issue using a cron job by way of curl.
On Windows you can use the Windows Task Scheduler and curl. Curl can be downloaded from https://curl.haxx.se/download.html
6/21/2017 – marked for “NextSprint scheduled”