News for hackers. Stuff that matters.
Re:Twitter migrates data to Google Cloud by dijit on Wednesday January 23, 2019 @04:27AM (#18976897)
Hey! I'm actually glad you asked. :)

So, obviously my experience is based on my use-case so things that are important to me are predictability of resources and consistency of data.

From a resource perspective (GCP:Compute) there seems to be a tendency of setting CPU affinity for certain cores, often in the same NUMA zone on the host. This means my tickrate doesn't get hijacked on certain cores randomly. That's quite nice honestly and it's something that on-prem hyperconverged VM solutions don't manage. The NUMA zone affinity / samezone affects our performance quite drastically as certain applications (such as in-memory databases or gameworlds) allocate large chunks of memory and then do little updates millions of times a second. This means memory bandwidth is very important.

GCP also has live migration of instances which is 100% transparent to the application (even the CPU clock seems to be moved over), unlike my colleagues on AWS who get 24h notifications of host machine maintenances I've never had to "deal" with even a single instance outage since starting up on GCP 1y ago. But I would assume if AWS hasn't moved on solving this problem they will soon.

Things like VPC networking being inter-zone by default is something that just makes sense and solves some headaches that I hear other teams having.

From a storage performance perspective, on AWS we were hard-capped to 5GBps per instance to S3, such a hard limit does not exist for GCP instances to cloud storage so we're able to make use of it. (in fact, I can often saturate my 10GBit interface limit even to non-google instances). A n AWS sales rep that this hard-limit can't be removed no matter how much we pay.

I can't attest to the difference in APIs, since I use terraform and that abstracts away anything I would be using.

Regarding storage again; we had reps from AWS talking to us at length and they would not guarantee that fsync() would be honoured on elastic storage. They stated that "it should never be needed" but honestly I'm not comfortable with that answer. I mean, my bare-metal database instances haven't gone down in 3 years but it doesn't mean I'm going to start decreasing the consistency for raw throughput.

There's a lot more but these are the most important things that I can think of right now.

Re:Twitter migrates data to Google Cloud by _msw_ on Wednesday January 23, 2019 @12:16PM (#18980193)
Hi! I'm from the EC2 team.

The fixed performance EC2 instances (in contrast to instances with burstable performance) all have dedicated physical CPU allocations, and 1:1 affinity from vCPU to the underlying CPU. Similarly, memory allocations are fixed, pre-allocated, and are aligned to the NUMA properties of the host system. When combined with both our Xen hypervisor and Nitro hypervisor, this provides practically all of the performance of the host system with regard to memory latency and bandwidth.

See: https://twitter.com/_msw_/status/1045032259189760000

With our latest 25 Gbps and 100 Gbps capable instances, EC2 to S3 traffic can make use of all of the bandwith provided to the instance.

Please send me more information about the interaction you had on the EBS side, msw at amazon dot com. All writes to EBS are durability recorded to nonvolatile storage before the write is acknowledged to the operating system running in the EC2 instance. fsync() does not necessarily force unit access, and explicit FUA / flush / barriers are not required for data durability (unlike some storage devices or cloud storage systems). Perhaps there was confusion about the question that was asked.

Re:Twitter migrates data to Google Cloud by romeisendcoming on Thursday January 24, 2019 @01:18PM (#18991298)
Can attest to very little CPU performance loss via OpenMP applications over bare metal. Maybe as little as 5% for our use case (numerical modeling of weather impacts).
Re:Twitter migrates data to Google Cloud by parasubvert on Wednesday January 23, 2019 @07:51AM (#18977719)
Re: NUMA, I had thought it was fairly straightforward to peg VMs to particular NUMA nodes (or declare CPU or memory affinity) in VMware. I agree GCP does it well (better than the other public clouds!), but I've also seen this done well on-prem.
Re:Twitter migrates data to Google Cloud by dijit on Wednesday January 23, 2019 @08:02AM (#18977756)
I have too, which is why I singled out hyper-converged.

In hyper converged environments the storage and the compute live together on a service mesh and thus some processing is done on the hypervisor to manage storage, those processes don't have an affinity (in the case of vmware for example) so a guest VM core gets suspended for a couple of hundred clock ticks sometimes.

Re:Twitter migrates data to Google Cloud by _msw_ on Wednesday January 23, 2019 @12:32PM (#18980358)
Hi! I'm from the EC2 engineering team.

This is a super challenging problem for general purpose virtualization stacks. EC2 has been working to avoid any guest VM interruptions. With the Nitro hypervisor, there are no management tasks that share CPUs with guest workloads.

See more here, including data from a real customer with real-time requirements running on EC2 under the Nitro hypervisor: https://youtu.be/e8DVmwj3OEs?t=1796

Re:Twitter migrates data to Google Cloud by parasubvert on Thursday January 24, 2019 @09:38AM (#18989002)
That's a good point, I have seen cases where we've separated a portion of nodes for VSAN or ScaleIO out to a separate cluster to avoid this behaviour on latency sensitive workloads. These nodes don't need a ton of RAM and you'd better have good E-W bandwidth for them, but it's always a tradeoff...
Re:Twitter migrates data to Google Cloud by _msw_ on Wednesday January 23, 2019 @12:23PM (#18980272)
Hi! I'm from the EC2 team.

This is a great tool to help uncover if CPU and memory NUMA within a VM aligns to the physical host or not:

https://www.cl.cam.ac.uk/research/srg/netos/projects/ipc-ben...

Paper from the USENIX 2012 conference: http://anil.recoil.org/papers/drafts/2012-usenix-ipc-draft1....

EC2 instances have been NUMA optimized since we launched our CC1 instances in 2010. I encourage you to try ipc-bench on your cloud provider of choice, if CPU and NUMA affinity is important to your workload.

Re:Twitter migrates data to Google Cloud by afpx on Wednesday January 23, 2019 @06:17AM (#18977322)
Regarding the 5 gbps cap, they said at re:invent 2017 that they increased the cap to 25 gpbs. Did that never happen?

https://m.youtube.com/watch?v=9x8hz1oRWbE

Re:Twitter migrates data to Google Cloud by manigandham on Wednesday January 23, 2019 @10:36AM (#18979037)
Yes it did: https://aws.amazon.com/blogs/aws/the-floodgates-are-open-inc...

However it may depend on instance type and other factors. This complexity is a problem with AWS.

Re:Twitter migrates data to Google Cloud by philliphaydon on Wednesday January 23, 2019 @07:06AM (#18977534)
What 24 hour host machine maintaince? Maybe once a year I get an email 1 month in advance that a server will be rebooted or I can do it myself... I stop/start on the week and don’t get another email for another year...
Re:Twitter migrates data to Google Cloud by numbsafari on Wednesday January 23, 2019 @07:23AM (#18977607)
Three years on GCP here... I’ve not once received one of these notifications. In my prior 7 years on AWS, these happened all the time, especially when you run a lot of VMs in different zones/regions (probably less visible if you are all in one zone).

Live migrations is amazing.

Now if only Google paid more attention to certain features of their GLB... amazing tech with showstopper bugs means amazing tech I can’t use. (Also means it’s not so amazing)

Re:Twitter migrates data to Google Cloud by manigandham on Wednesday January 23, 2019 @10:34AM (#18979021)
It depends on a lot, like region, instance type, security issues, etc. No notices is still better than any, and live migration also helps with reliability by moving your VM if possible instead of it going down with the host.
Re:Twitter migrates data to Google Cloud by acranox on Wednesday January 23, 2019 @07:21AM (#18977602)
I think he means the notice is sent 24h before the scheduled maintenance. They don’t always provide a lot of advance notice.
Re:Twitter migrates data to Google Cloud by philliphaydon on Wednesday January 23, 2019 @07:38AM (#18977657)
That's why I'm confused, 7 years on AWS and never had less than 1 month notice.
Re:Twitter migrates data to Google Cloud by electroly on Wednesday January 23, 2019 @10:53AM (#18979244)
Sounds like you've never seen an actual hardware failure; you've only seen scheduled maintenance. You don't get any notice at all with host failures. You get an email like this:

"We have important news about your account (AWS Account ID: XXXX). EC2 has detected degradation of the underlying hardware hosting your Amazon EC2 instance (instance-ID: i-XXXX) in the us-east-1 region. Due to this degradation, your instance could already be unreachable. After 2018-12-28 19:00 UTC your instance, which has an EBS volume as the root device, will be stopped."

The stop date is 2 weeks after the email is sent, but as the message states, the instance is likely already dead. It was already dead in this case. GCP will live migrate your instance to another host.

Re:Twitter migrates data to Google Cloud by philliphaydon on Wednesday January 23, 2019 @11:36AM (#18979738)
That's the email I get. I had 1 in 2018 but it was 4 weeks from the received date, not 2. Only a couple of our servers are older than 12 months tho, we usually generate new AMI's roll them out to keep them up to date.
Re:Twitter migrates data to Google Cloud by dijit on Wednesday January 23, 2019 @07:45AM (#18977692)
I wouldn't jinx it.

Like the parent said; we used to receive these notices quite frequently and the amount of time varies wildly. I should ask the teams who currently/primarily use AWS perhaps the situation has changed?

But it was not uncommon to have 24hrs of notice, especially for instances in US-EAST2 for some reason.

Re:Twitter migrates data to Google Cloud by philliphaydon on Wednesday January 23, 2019 @11:37AM (#18979751)
We use us-west-2, but I'm touching wood non-the-less.
Re:Twitter migrates data to Google Cloud by shaklee3 on Wednesday January 23, 2019 @09:22AM (#18978294)
Can you explain more about that 5Gbps per instance to s3? Is that documented anywhere? How many prefixes were you using?
Re:Twitter migrates data to Google Cloud by cloakandswagger on Wednesday January 23, 2019 @10:37AM (#18979048)
This was 5Gbps until January of last year, when it was increased to 25Gbps:

https://aws.amazon.com/blogs/aws/the-floodgates-are-open-inc...

Re:Twitter migrates data to Google Cloud by manigandham on Wednesday January 23, 2019 @10:36AM (#18979041)