Anything you can't do on a Linode?

Avatar forum:absolutefunk 13 years, 7 months ago

From the uses page, it seems pretty wide open as to what software you can run on a linode. I havn't had a VPS since 98, but I didn't know that most companies have policies against progs like IRC servers. So I'm wondering, is there anything one cannot do on a linode? Are we allowed to run DC clients (like F@H)? Low CPU priority tasks like F@H shouldn't take a hit on the host as they only use otherwise idle CPU resources anyways (provided you keep the ram usage down :wink: ). I'm looking into pruchasing a Linode very soon, and am curious. Linode seems to be the most flexible in this regard. Also, how likely is it that Xen will find it's way into a linode? How's the testing with that going? Thanks!

-Brian

18 Replies

Anything goes, as long as it's legal and doesn't consume over your monthly transfer allocation. And by "legal", I mean something that's not prohibited by law and that's acceptable by ISPs worldwide.

Memory, CPU and disk space are automatically limited, so you'll know if you're over-consuming when your Linode is acting sluggish.

Any type of software is allowed, too, as long as you secure it good enough to not let people exploit your server (which can quickly turn into something illegal/abusive).

So basically, anything that doesn't spam, sends out malware/spyware/virii or does (or wildly distributes) anything illegal goes. More or less.

Anyway, the Linode.com Terms of Service and Linode.com Acceptable Use Policy pages are way more accurate than me.

Cool! This is the kind of provider I was looking for. Thanks for posting the TOS and AUP also. I couldn't find the links on the site itself.

EDIT: nevermind, the links were at the bottom of the page. Hehe, duh ;)

-Brian

I think it would probably be bad form to run one of those idle-CPU tasks like SETI. It's scheduled at low priority at your kernel's level, but not at the system level.

I think even one system running this would slow things down, and if everybody did, nothing would get done.

I've never run SETI, but F@H gives to any other process that needs CPU resources. The Linux version may be different I don't know, but the Win32 version doesn't slow anything down. Of course in the end I'd never do anything to compromise the speed of the host. If the Linux version does in fact cause slowdowns I won't run it. Just thought it would be a neat idea :) Has anyone run CPU intensive progs before without probs?

-Brian

It works fine on a local system, although there has to be some slowdown for context switches.

But I think the Linode host looks at a higher level than that. It hands out CPU cycles based on machines, not priorities within the machine. (Corrections welcome, caker or anybody else.) So even if you're running it low priority on your machine, it's hogging everything it can on the host.

Right there is some minimal slowdown. By minimal I mean maybe like 1%. I do see what you're getting at though. In a UML enivronment I'm not entirely sure how the behavior is gonna be. One possible way around it though is to cap how much CPU F@H uses. Set it to use 25% max ;) Again though, I guess it could behave different even like this, but I'm sure many people run things constantly on their linodes. There's gotta be a way :)

-Brian

I was once interested in running a client like F@H, but was dissuaded of it by people in the IRC channel because of the reasons above…

> May 20 18:54:23 Heya, caker. I have a question… I couldn't see anything about it in the TOS or AUP, so I think it's okay, but is it okay to run things such as distributed computing clients on a VDS?

May 20 18:55:05 The program I'm running isn't exactly a client, but it's a program that I'm running on a few machines which uses as much CPU as it can… presumably there's CPU throttling on a VDS though.

May 20 18:55:15 Like Seti@Home, or distributed.net ?

May 20 18:55:19 * Efudd notes if you are on host6, no!

May 20 18:55:33 I'm matrix.theblob.org on host15 if you want to monitor the usage.

May 20 18:55:34 I'd prever you don't on any host …

May 20 18:55:41 but there's no strict rule against it

May 20 18:55:48 it might get you nice'ed down, though :)

.

.

.

May 20 18:57:03 Ciaran: if it consumes all CPU, I really don't need to look at it

May 20 18:57:41 Okay then. Would it be okay if I renice'd it to something like 15?

May 20 18:57:46 Or 20, even, heh.

May 20 18:57:57 * Efudd would personally hack in a new number "42"

May 20 18:57:59 nice only affects processes inside your Linode

May 20 18:58:24 and nice'ing it would only give CPU time to other processes inside your node, but you'd still be at 100%

May 20 18:58:30 True.

May 20 18:58:37 ciaran, i would have to bet that running within a shared environment isn't your best option

May 20 18:58:41 :)

@absolutefunk:

Right there is some minimal slowdown. By minimal I mean maybe like 1%. I do see what you're getting at though. In a UML enivronment I'm not entirely sure how the behavior is gonna be. One possible way around it though is to cap how much CPU F@H uses. Set it to use 25% max ;) Again though, I guess it could behave different even like this, but I'm sure many people run things constantly on their linodes. There's gotta be a way :)

My understanding is this..

The low priority means it'll step aside for tasks in your instance, but since your instance as a whole is trying to keep the CPU busy at all times, it interferes with CPU bursting of other linode instances on the same host.

Basically, if all of the other linodes on the host are relatively idle, a task of yours can burst up to nearly the full CPU capability of the machine. If 5 other people are running something like S@H or F@H, then your maximum burst is up to 1/6 of the host's CPU. Most server tasks tend to be bursty, only springing into action when a request is made (web request, incoming mail, etc). Therefore it does indeed degrade the performance for your neighbors.

If I've understood UML correctly, that is. Someone correct me if I'm wrong.

I think you're exactly right. This "burstability" of CPU time is a very important thing about Linode. Being able to use the whole CPU when it's idle, which is most of the time, is really nice.

SETI or Folding would destroy that. Please don't run them!

Okay so if i keep the max CPU resources for F@H down below the guaranteed CPU set aside for my linode, that should be fine right? What I don't understand (from the IRC chat posted) is how can a process set to use a fraction of CPU time max still use 100%? Granted I'm referring to setting the limit using the prog itself (as F@H supports this internally). I doubt I'll ever run F@H on my linode, I just don't understand why this would be a prob if your capping what the prog can use to begin with. If your running within your guaranteed limits for CPU, it shouldn't slow down the host. UML is new to me in case you guys didn't figure it out already ;)

-Brian

@absolutefunk:

Okay so if i keep the max CPU resources for F@H down below the guaranteed CPU set aside for my linode, that should be fine right? What I don't understand (from the IRC chat posted) is how can a process set to use a fraction of CPU time max still use 100%? Granted I'm referring to setting the limit using the prog itself (as F@H supports this internally). I doubt I'll ever run F@H on my linode, I just don't understand why this would be a prob if your capping what the prog can use to begin with. If your running within your guaranteed limits for CPU, it shouldn't slow down the host. UML is new to me in case you guys didn't figure it out already ;)

-Brian

Think about it this way:

You've got a slice of the pie DEDICATED to you. You can use that slice, and ANY process you run has priority over it.

If that slice is idle, then other people can 'borrow' it for short times for CPU intensive apps. The fact that everyone will not be using 100% of their slice at all times helps to make UML a bit better.

If you run some dist. computing client, you'll end up using your slice 100% of the time, and possibly even 'borrowing' some other people's slices who aren't using theirs.

I think, if nothing else, it would be HIGHLY impolite to others on your host.

So, basically, if you're on host40, and you do this, I will track you down :twisted:

Ohhh, okay, now I get it. We get dedicated CPU, but it's nice not to hog it. For some reason I was thinking the CPU was dedicated like the RAM (no one can leech our RAM can they? :wink: ) Okay, when you put it like that, it wouldn't be fair for the others. It usually takes me a while to catch on to basic ideas. I'm alittle slow. I do plan on running a bounce, IRC server, and eggdrop. Those are all cool right? In the uses pages it lists running a game server, so I figure these apps should be good :)

-Brian

Okay, well I'm about ready to take the plunge. Will all the above plus the basics (LAMP) be able to run fine together on a Linode64? I ask mainly by default if you go look at the available Linodes :) Thanks guys for all the input too!

-Brian

IRC servers are fine, but I'd watch out if you're planning to ilnk it to a network, especially a big one - they can sometimes by DDoS targets.

Having said that, I run an IRC server linked to a very small network (only about 3-4 nodes) ans haven't been a victim. But then, I know all the people who use that network, and it's not a public one.

Oh, and LAMP will be fine, although you may need to trim MySQL's memory usage down a bit using the my.cnf.tiny file rather than the default my.cnf.

Okay cool! IRC won't be a prob, that last network I linked to with my old VPS was quite small. I prolly won't need anything other than linux/apache on my linode until June. I just couldn't wait any longer to subscribe :D I'm on host46.

-Brian

@absolutefunk:

Will all the above plus the basics (LAMP) be able to run fine together on a Linode64?

It should be able to handle it so long as you trim down on the Apache modules as well as you MySQL configuration (check http://theshore.net/~caker/uml/my.cnf ). You should still watch to make sure your not swap thrashing. You should probably read up on this: http://www.linode.com/wiki/index.php/IO_Tokens

Thanx for the advice! Here's my IO token stats:

iocount=24689 iorate=0 iotokens=400000 tokenrefill=512 token_max=400000

Seems pretty good :) With a basic apache install, which modules are expendable? I don't wanna comment out any necessary ones. As for mySQL, havn't installed it yet. My site currently doesn't use it :D

-Brian

Reply

Please enter an answer
Tips:

You can mention users to notify them: @username

You can use Markdown to format your question. For more examples see the Markdown Cheatsheet.

> I’m a blockquote.

I’m a blockquote.

[I'm a link] (https://www.google.com)

I'm a link

**I am bold** I am bold

*I am italicized* I am italicized

Community Code of Conduct