Setting up a server.. Help


#1

I just followed the instructions for setting up a server via docker using the following instructions at this url: How to compile a Stable Build of the Linux Server Stack on Ubuntu 16.04 LTS
compilation did go quite well and then I run the docker and the two processes domain-server and assignment-client seem to be correctly running:

F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD
4 S hifi 1 0 0 80 0 - 4557 - 00:51 ? 00:00:00 /bin/bash
0 S hifi 11 1 0 80 0 - 184955 - 00:51 ? 00:00:05 ./domain-server
4 S hifi 15 0 0 80 0 - 4558 - 00:52 ? 00:00:00 /bin/bash
0 S hifi 24 15 3 80 0 - 302798 - 00:53 ? 00:00:29 ./assignment-client
4 S hifi 79 0 0 80 0 - 4557 - 01:07 ? 00:00:00 /bin/bash
0 R hifi 88 79 0 80 0 - 8607 - 01:07 ? 00:00:00 ps -elfw

infact i was able to go to my server and type http://myserver.com/40101 and linked to my account, got credential tokens and even bought a place name (pyramidcafe).

Now I was expecting that doing goto from the interface and specifying pyramidcafe I was able to go to my server and starting to build, but it keeps being completely dark and edit button is disabled as well (missing permissions).

The interface “atlas” shows my place and is saying there is one person inside but it seems there is something wrong. Maybe I have to load some initial content? is there a clear and effective way to be sure I’m doing correctly and can start building on my place? Thanks for any assistance…


#2

Initial state begins with an empty space - so that’s correct if you are getting a connection for real.

From desktop mode (works in HMD too but harder to read) press / to bring up detail stats.
Take note of how many servers you show in stats – should be 6.

Also looking at your web manager page you should see you client (Interface) join node list.

There are some subtities to running stack (Stack is ancient name for domain-server/assignment-client) under Docker – sometimes the networking is somewhat complex which is why I chose to place my domain-server and assignment-client in a single container (2+ years ago when I still was considering Docker container as a good choice) – I also found, again this was some time ago, that using Docker’s proxy networking led to stability issues (you’d lose ability to connect) after more than 8 or 9 hours uptime – leading to using a direct connect to network for Docker vs its isolated proxy net.

Also - Hifi has moved to Qt5.9.x and that may be leading to issue(s) if you used 5.6.x

Looking at that thread it seems a bit experimental and somewhat outdated (now) in places.

I’d begin with seeing if you’re actually getting a connection to domain vs only thinking you are as empty disconnected space appears identical to connecting to an empty domain and would likely explain the no edit thing.


#3

Thanks for the help and rapid reply, really appreciated :slight_smile: But at the end I couldnt make it work, edit button keeps in rejecting. If needed I can provide the logs from the docker instance and the assign client… BTW it is not clear if I have to launch assign client with -n 6 or -n 7 or other options. I have read some emails stating that it should be 7 instead of 6, but it didnot work.

Reading your reply I understood as well that the procedure I followed is not updated. So I tried even the latest installation instructions from March, but they did fail to finish the make. :frowning:

So now I really need to understand which is the “official” installation instruction for HiFi on Linux which is working with latest STABLE branch (or any branch that can be used safely with current hifi infrastructure.

I think this is a really superior thing HiFi has compared to competitors and should be encouraged: schools, Universities and companies can be very interested in something they can control by their own or install on the cloud like on amazon AWS or other cloud services.

If docker is a problem in itself, I can buy AWS space, but it is much more expensive, and it would be nice I can install this on our big server running Debian 7, which I’m using currently to running many servers for OpenSim, Minecraft, Minetest without any problems.

Thanks for any advice HIFi guru will give (I will make these information available with my tutorials on youtube channel).


#4

There is no, that I know of official Linux solution for HiFi. The, apparently, very few of us who run Linux for client (maybe a few more for server) have always devised our own solutions. Mine has been to use my own Ubuntu Xenial packages that I post to my repository and automatically build as HiFi releases devel (unstable) and RC (beta) releases.

You need a minimum of 6 AC processes to have what’s considered a full setup. I chose to run mine as discrete AC launches with assignment-client -t [Integer type of AC to run] so I can shuffle things around and spread ACs over multiple machines vs assignment-client -n 6

The 7th is for running scripts on server side and since I seldom use its abilities chose not to use one. I run my server on a very low power Digital Ocean droplet (10 USD/month) as I’m not concerned with having concurrency over 2 or 3 visitors. During testing I’ve ran on higher cost/capability DO hardware while simulating avatar loads of 100 … 150++.

Also - a “big” server for HiFi (i.e one capable of having 100 AVs or a bit more) would be something in range of at least 16 CPU (or core – real core count – not 8 real/8 hyper threads) or more depending upon physics load due to content in domain with around 500mb/s internet up and down.


#5

If you do not require Ubuntu or docker you can check out my project. In a nut shell its a single command installer for CentOS 7, and a suite of CLI tools for managing a hifi server.


#6

since docker is actually just a way to use every possible unix distribution on the top of another, I will surely try to use it to have centos on my debian7 and in theory this should work. Let me try :slight_smile:
mmmm still not working on a plain centos:7 image. Can you give me exactly which distro and version it is working correctly on?
mmm I see that the systemd in centos are a bit incompatible with docker :frowning: this is why it is not working.
Let me check this on aws then with a proper real centos7


#7

Ok it now is working perfectly on amazon EC2 Ubuntu 16.04 following the last instructions in the post of march. The CentOS installation was instead much more tricky at least for me. So far it is ok for me, but will retry the same installation on my debian sometime in the future via docker, there is no particular reason why those instructions valid for amazon aws should not work on debian/docker… :slight_smile:


#8

I eventually solved using the ot2 package I think you are providing for the community. It works like a charm in an Amazon EC2 ubuntu 16.04 and in a docker container :slight_smile:
Thanks for that it is really a nice addition.
I was able so to start building up the domains pyramidcafe and edu3d where I want to bring some Italian communities and Italian Teachers as a logical continuation of our works with opensim.