Google Cloud Shell
cloud.google.com
cloud.google.com
After Google I/O, some webinars and testing I learned about how quickly new websites and apps could be deployed, Google DNS for managing domains, App Engine and other load balancing features that can help manage cost.
The ability to SSH into a virtual machine has proven quite useful to enable my team to coordinate and manage projects. I am still open to using other services like AWS but Google Cloud has been great - especially because they also offer customer service for tech and billing issues.
That is rad! Anything we can do to help? Link to the company?
I'm able to do it on aws but with google cloud I have to either run the command line or manually start every instance
I suspect that it's unlikely that google can remove this because bad guys tend to spin up many free trial instances and do bad things (sharded bitcoin mining, DDoS'ing, etc). Privacy is #1 so they aren't allowed to look inside your machines or inspect your traffic...so that leaves billing / such metadata to fight abuse.
The "Heroku-style free" tier is likely to be all I can manage for the short to medium term future, due to a variety of factors.
As a result, the two go-to systems I would turn to if I need code hosting are Heroku and OpenShift, and I have accounts with these platforms (although I'm leaning toward the latter lately). I am yet to do anything generally interesting with them myself, but these are the systems I take into account when talking to others, because I have no experience with GCP. (I wonder if this is true for others too, and how big that number is.)
I have zero idea how Heroku are fending off precisely what you refer to. I've heard about situations where individuals' AWS accounts have been hacked by automated systems that spin up "instances with everything", but once it was established with billing that the account was hacked, the charges (which in one case were 5 figures) were fully reversed. Perhaps this fact is relevant here.
I think the problem can be solved before it (theoretically) gets to that point, however.
Serving up webpages, doing the occasional database transaction, etc, produces a significantly different CPU load than bitcoin mining does. I don't consider instance CPU usage monitoring a violation of my privacy, so I think it would be perfectly fair to throttle back continuous high CPU usage, but allow for short bursts of high usage. (In fact, I think this kind of thing is already standard...?) For bonus points, make the system track instance CPU usage and adjust its thresholds to allow for periodic high burst usage :P (since, thinking about it, masquerading as a web server and doing 30 seconds of mining every 5 hours is going to work out to zero gain).
I wouldn't consider it at all unfair to offer a free tier with exceptionally aggressive CPU-time QoS; in fact, it would probably suit me (and a lot of other people) perfectly, giving the funemployed community the option to do things like spin up fascinating new environments like Erlang, Dart, Rust, etc, and play with these environments (which are not yet available on Google's cloud hosting infrastructure) for web serving and similar. (For more bonus points, I'd extend the heuristic CPU-time tracking I mentioned before to classify instances as "friendly" over the long term, and let them have exceptionally low latency! :D)
In short, there's a whole demographic of people out there that you're definitely excluding, including people like myself who are just at the "messing around" stage, to nervous types who don't like deadlines and run from the "free for X period of time" part of GCP.
I realize and recognize that your response here is only your opinion, not Google's, and I'm very happy to respond here or via email (my address is in my profile) if you'd like to discuss any of any of the things I've said. ^^
I do have a quick question. I am running a LAMP stack with the A standing for Apache. I put an "Index.html" and an "Index.php" file in my "www" folder. I realize that new files append old files. However, I want to add a ".htaaccess" file with DIRECTORY prioritization for the PHP file over the HTML.
I tried copying an htaaccess file via the gcloud command line tool but I got an error. I've been looking through help, faqs, and searched but haven't seen a solution as of yet. Did I miss something? Thanks!
>This is a Beta release of Cloud Shell. This feature is not covered by any SLA or deprecation policy and may be subject to backward-incompatible changes.
To the best of my recollection, I don't believe we've ever shutdown a product. Was there one in particular that hit you? (Reader, Wave, etc are totally different divisions.)
But it is more common for a Google product to be completely abandoned, no new features, few bugfixes, etc., as opposed to being actually shut down.
So yeah, I think it's entirely their fault.
so while "google" might have funds, the "google code development team" may have a very tiny allocation.
Even if they had been trying.
But yes, like many Google products, it was basically released and abandoned. They weren't trying. (If they had been, maybe we never would have had a github...)
I do think as a public service, they could have left all the code (and wiki documentation) accessible read-only virtually perpetually. Surely they can afford that.
Instead, we get tarball download only, and only until late 2016, after which it's all gone forever, if it hasn't been migrated elsewhere by code owners or third parties.
There's a long, long list of Google products and services that have been discontinued, as somebody else already linked to in this thread: https://en.wikipedia.org/wiki/List_of_Google_products#Discon...
This whole "Google loves to shut stuff down" is really tired and overplayed.
Go ahead and compare Google's track record with Apple's or Microsoft's, or any other company. They are about on par, yet Google almost always gives 6+ months notice (often over a year), provides one-click alternatives, allows you to export your data in one of many formats, and more often than not has an in-house alternative that you can use automatically.
Take a look at the wiki page of google's products [1]. I'd be surprised if you even knew about 10% of those, let alone used more 1 or 2 significantly.
[1] https://en.wikipedia.org/wiki/List_of_Google_products#Discon...
To Be Discontinued: Google Drive Hosting, Google Code.
I don't think it's tired and overplayed. It's a consequence of how Google works; try lots of things and don't be afraid to pull the plug. That strategy is great, and it works.
It's just sometimes the services that are on the edge of being worth Google's time to maintain cause the most backlash because a fair number of people used those services.
Only using paid services up front might seem to help but one look at the way Google Apps has been in maintenance mode for years suggests that even that offers only limited protection.
On the other hand, the negative PR they have gotten from Reader (it's pretty much the poster child for the "Google cancels products" meme) - they probably should have kept it around, even if it was not strategic.
Any other company? You've named three. Truth is enterprise grade companies that serve the business market and don't give their products away for free or participate in a race to the bottom typically don't do this type of thing to the degree that google does. Perhaps the companies that do (including parts of msft) are those that deal with developers or consumers which apparently are more likely to not complain to much (other than to whine online) when they get the shaft. The stereotype, unfortunately, is true. At least that is what I have found.
Also, and this is important, there is the benign neglect phase where they simply keep the product minimally working but don't spend any time to improve it (like google voice).
It is nothing more than a knee-jerk way to dismiss a rather easily defended position (due to the large number of closures that have been documented, ones that are more extreme or would have been considered less likely than Google Reader) by stereotyping someone's argument down to not just a "strawman" (an argument that is easily defeated), but essentially a purposely broken and laughable version of their argument so as to purposely ill-inform other people (which I feel the need to separate from a "strawman", as the goal is not to defeat the argument but to belittle the opponent). It is frankly one of the more underhanded argumentation tactics that people seem to enjoy defending here.
The reality is that Reader is a non-issue for most people here, as it isn't something you likely built your business or infrastructure around (and to the ones who ended up indirectly relying on it, that is a stretch to blame them for), but when Google randomly shuts down, cuts down, or entirely reboots APIs and services--something they have done many times, at the extremely painful end with things like Checkout and Login, but also with things such as App Engine or Charts--the fact that people seem to seriously have just forgotten how recent these things have been is distressing, and is made all the worse by people who insist on perpetuating "you are just whining about Reader" lie :/.
Let's not pretend that there was only one "really used" service they pulled. At Google's scale, every service is "really used".
And for the record, I did use iGoogle. And there were plenty of people who used Wave, Reader, Code, and Labs.
I object to the idea that it is, "a Google" when we could make the same argument of many tech companies. I object specifically here because it's been shown to be a talking point in a whole deck of talking points written for an MPAA smear campaign on Google.
And it's not particularly fair. They should call it, "Pulling a startup" given how often we fail at them.
I can find https://www.techdirt.com/articles/20150724/15501631756/smoki... (and a bunch of other articles about the same emails) but that doesn't seem to have the deck you're referring to. Any chance you can dig out a link?
Like a lot of "cloud services", this is indeed nothing you can't do on your own box, and I imagine tens of thousands of people have done it before and will do it again on AWS. Google has now done it in a way that generalizes for everyone. Aside from what it lists on the page (installing the GC SDK and setting up authentication), Google handles all of the opsy stuff you would need to do on your own.
Running a Linux server and installing / authenticating an SDK is not really that hard, of course, but it's one less thing to worry about when developing an app. That's almost always always a good thing.
a. It just works. No need to download and configure the right version of the SDK.
b. Does not timeout when you close your laptop [I hope!].
c. I works on a Chromebook. Possibly not something you care about, but a historical pain point for the consistency of Google offerings.
I guess I still don't see the point but maybe I'm assuming that one is already running a *nix and can either jump into the terminal there or connect a VM in the cloud very easily. The convenience doesn't seem that large.
Ultimately what AWSClassic does is give you a lot of baremetal boxes to drop AMIs on. Google's changing that to the containerized model by offering direct services that are scheduled on hardware. As Kubernetes becomes more and more the primary method for deploying apps on Google's managed services, this approach will pay off more.
But it's worth nothing that for many people this is what Amazon needs to do as well. As VPCs become the mandatory methodology for AWS, it's increasingly annoying just to set up the bare minimum you need to get a capable shell inside your environment. Even experienced AWS users have trouble getting VPCs right given the state of the current documentation.
No, no we don't. It's quite easy, and usually it only takes us a few minutes.
If you use AWS services besides S3 it can get very tricky to not overwhelm your egress and not suffer performance issues. Scaling this configuration in an elastic way is certainly not turnkey in the current VPC environment, and probably won't be until Amazon finishes something like the S3 gateway for them.
And the documentation is in a sorry state.
Please. Even for an advanced VPC configuration, you're looking at 1-2 hours tops for setup. If you want point and click, go to Digital Ocean. Complex tools are always going to have a learning curve.
Also, it's not clear to me why I should have to do that part on my own. The fact I need to engineer a solution for high volume access to AWS Services (besides S3) in a VPC is stupid. Especially when I can just keep using EC2C and honestly have an easier time of it, while also not having to migrate and rewrite existing infrastructure to become VPC-aware.
For someone with 'toomuchtodo' it seems like a very questionable use of time.
We use DynamoDB. A lot of it. It is a non-trivial setup to get a dynamic, scaling solution to route traffic efficiently to the DynamoDB endpoints. Our SQS traffic sometimes also experienced extreme latency when we would send large groups of messages.
So forgive me if I greet your derisive tone and silverbacking with skepticism; I've got a product in the market already. I have correspondence from the AWS support explaining that it is in fact very difficult to operate at the scale we want to with some AWS Services that aren't supported, and the S3 connection was also not trivial. This is especially so if you're managing multiple discrete apps that don't coordinate usage or bandwidth spikes, as is common in large enterprise settings. Which is, ultimately, what we're doing.
> Complex tools are always going to have a learning curve.
There is no justification for the current mess that is Amazon's documentation for the VPC feature set. The only reason they get away with it is that AWSClassic is a giant band-aid which will be grandfathered onto customers with scaled products.
Arguing that things like Heroku or Digital Ocean or managed Kubernetes are bad and EC2 is good simply because it uses a hypervisor model instead of a container model is grandstanding and nonsensical, plain and simple.
The startup world has 0 use for this kind of thinking. What matters is how quickly you can deploy, and how efficiently and inexpensively you can scale if you get a hit. Everything else is ego, and useless in this environment.
There are systems that need AWS's model, but they're for specialist products. The vast majority of products can and do deploy in DO or Heroku just fine. And if they're sustaining people and serving customers, who are we to judge?
> There are systems that need AWS's model, but they're for specialist products.
Netflix. Tinder. Reddit. Yelp. Slack. Foursquare.
AWS' model works absolutely fine if you have systems knowledge. If you're looking for a PaaS, its of course not the solution for you. It feels like your comment is "Why doesn't AWS do what it wasn't designed for?"
The nice part about Google's approach, it gives you both worlds in an interoperable package. But I suppose you're more interested in the silverbacking than the specific technical arguments.
Maybe if you own the servers.
Since they're Google's or Amazon's servers you have to be able to administer them with some set of Google or Amazon credentials. Otherwise what would you do if sshd crashed?
Kill that instance, and spin up a new one.
A wise BOFH gave a preso that stuck with me "Treat EC2 instances like cattle. When one strays off the farm, put a bullet in it's head."
Don't treat your cloud machines as special snowflakes. Build infrastructure via script.
For grins, I wonder how many root AWS creds are tied to Gmail (read: Google) accounts.
Cloud Shell is a bit different in the sense you would not want to try anything resource intensive on a micro instance. But for coordinating other services it makes sense.
I think Google needs to add one more thing to their cloud development toolkit: a public version of something close to their cider web based IDE that gives you access to work with any code you have in you private Google-hosted git repos, AppEngine and VPS services. nitrous.io has something like this, and I think that Google would do well to offer something similar for using the public version of their infrastructure.
Also, we're alpha testing some integration with the Source Editor and the Cloud Shell right now, so anyone that would like to participate in that alpha test can drop me a line: csells@google.com.
Chris Sells Cloud Developer Tooling Product Manager
What most web IDEs still get wrong is version control. I want to work on live code and then push it to version control. I do not want another copy of code that I have to push to server and version control.
Would be nice if they could have stated how much it's going to cost later on. We're less than three months from 2016.
We almost lost our company's domain name twice due to their incompetence.
(Used OVH for several years, but my server with them has an uptime of 1034 days as of today, so customer service might very well be useless - I've never had a reason to talk to them)
But I have something that approximates bad luck. See my earlier posts about Project Fi.
I've been a very happy customer for years now.
We only got to know about this because of a standard email warning from the country's registry (not OVH as a registrar) itself about quarantaine and expiry!
We spent over eight hours over several days talking to OVH. I have been able to verify that the problem was on the side of OVH only, and not on the registry's side at all.
In the end, we made a direct payment to the registry to make sure the domain was not deleted.
I – like most people – don’t let useless devices run on standby either, costing me upwards of 30$ a year for a TV on standby.
As a student, I don’t buy totally overpriced coffee that costs that much either.
Do you really think most people unplug their televisions after using them?
I seriously rewrote several web products myself that I'd have to normally pay 4$ or so per month for. I took over development for the QuasselDroid Android client because I could not afford IRCCloud. I ended up rewriting all the features of Reddit Gold last night as a browser extension because I can’t afford wasting money on Reddit Gold.
It’s problematic wasting money in one place, but for a dozen services at once? Nope, that’s gonna bankrupt a student who has no income except for a small grant.
40c per kWh is outrageous. This certainly goes a long way in explaining the dismal failure of Tesla in Germany so far.
I was just gilded this afternoon, and was able to confirm for the first time that new comment highlighting is not particularly hard for RES to pull off, it just doesn't do it for political reasons.
Hence, the only way would be to quietly develop an extension for the purpose... or, strike the jackpot, and come across someone who's done just that :D
Might I borrow your extension? =P
(My email address is in my profile if you prefer to respond that way)
So you’ll need to write an endpoint that stores the data somewhere, I'll link you my current solution.
First, the actual script that I load: http://cdn.kuschku.de/reddit-silver/reddit-silver-comments.j...
Second, the way I load it into the page: http://hastebin.com/raw/sugixafeve.js (You’ll need to adapt that, too, as Userscripts or extensions can’t easily interface with the rest of the page normally)
Third, the code of the endpoint that I use: http://hastebin.com/raw/gipubidevu.php
Last: You’ll need to set up localStorage.authkey to be equal to the auth key you set in the php script, you’ll want to host the PHP script on some server, and you’ll want to create an SQLite database on that server, give your PHP environment write access to that database, and initialize the database with a table:
CREATE TABLE `reddit-silver-comments`( `thread-id` TEXT PRIMARY KEY NOT NULL, `values` TEXT NOT NULL);
After that, just modify the URL in the first script to point instead of my server to your server ------------------------
If you want, I can write you an alternative version that stores the data in local IndexedDB, but then it’s not synced between devices.You've definitely given me some awesome ideas with this. My implementation is likely to be slightly different, but your links are an awesome start and will definitely come in handy.
I'll likely take a while to get to actually implementing my idea (>.>), but I think it'd be cool to share my implementation when I (finally) finish it. How best can I get back to you in perhaps a month or two?
And the implementation is very simple: I just store every timestamp when you visit a thread (unless you visited it in the last 5 minutes already), and then just display those in a list.
Highlighting then all comments that were created after that timestamp is pretty simple.
And if more people are unplugging their TVs to save money than there are people wasting money on Starbucks coffees, then maybe, just maybe, saving 1.20$ per month on a VPS is worth it.
Also, I’d still cut expenditures equally. Even my parents – both of which have studied law – do this. Actually, most people I know do. Why waste money on useless devices if it takes only seconds to unplug them?
Disclaimer: I work on Compute Engine but not Cloud Shell.
Is it just because it's in the browser. Who cares...
Source: I'm a high school teacher at just such a school.
We're solving problems of high school students who don't have access to an SSH client now?
Curious
Have used micro instances in the past as remote development and deployment environments and a micro instance and it works ok. Wondering if something in between micro (0.7G) and standard (3.5G) might be better considering devenv can get pretty beefed up using certain modern frameworks we won't mention by name ;)
Cody Bratt, Google Developers Console Product Manager
Cody Bratt, Google Cloud Console Product Manager
Chris Sells Cloud Developer Tooling Product Manager csells@google.com
And the new Nexus Tablet, everyone hoping it will run Android Studio? It's entirely possible next year we'll see JetBrains and Google convert that environment over to web as well. JB's been doing a lot of that work independently, already.
Google Cloud has supported being able to open an SSH session to any of your instances right from the browser for awhile. I've found it to be a killer feature and am really surprised Amazon Web Services does not offer the same thing.
Only now I realized that it's a 1-click launch of O&M instance with persistent home directory (and in the future maybe persistent image as well).
I hope they will give the ability to switch instance type.
It's a good pattern to have an O&M node, where people are allowed to ssh, which will have all the devops scripts.
You can do this with AWS' t2.micro instance and launch hyperlink and some custom webshell, but it will not be that integrated as Google Cloud Shell.
True, you could do everything this is doing with Compute Engine. The point is that it's always one-click away and there's no setup, maintenance, or (for the time being) cost.
This could be a nice way to isolate operations of production infrastructure. You could go as far as issuing Chromebooks dedicated to the task.
https://chrome.google.com/webstore/detail/secure-shell/pnhec...
I use it every day. Easily access any SSH server from the browser.
If anyone is interested or want to borrow some ideas:
I love it because I don't need to worry about key management and can access my machines anywhere that has a browser.
However, my few gripes are:
1)when copying text out of the web terminal window that spans multiple lines (on Mac osx chrome), newlines are inserted.
2) ctrl v doesn't work (nano/pico)
3) Ctrl c sometimes doesn't work
OT, this is a big reason why I encourage people to learn vi/vim.
It doesn't rely on ctrl, and can be used in environments that do weird mappings to control characters. Anything you can do with ctrl, can be done with regular keys and commands.
Nix?
We have 'gsutil' in our environment, so you can do things like:
ssh user@rsync.net gsutil ... blah ... blah ...
but if there is a google shell that you can use to manipulate those same items, then presumably you could do data transfer to/from rsync.net from within that shell.Not everyone has a use-case like this, but some folks do ... so we'll see how it works ...
Now open the shell and traceroute (install it) to google.com. :)
(Other fun things: traceroute can't find your external IP; you have ~250Mbps download; you're on a Xeon with 32GB RAM of which you have 512MB; I can't remember anything else.)