Money Games: PlaykeyPro Service Deployment Experience



Many owners of home computers and computer clubs seized the opportunity to make money on existing equipment in a decentralized PlaykeyPro network, and at the same time faced with brief deployment instructions, which for most caused problems during startup and operation, sometimes even insurmountable.

Now the project of a decentralized gaming network is at the stage of open testing, the developers are inundated with issues of launching the servers of new participants, they work almost seven days a week, and there is no time for extended instructions.

At the request of readers of the article “Games for money: experience in a distributed gaming network of the owner of several servers”and for those who want to become members of the PlaykeyPro decentralized network, I decided to go the connection path again with the experience of deploying the server on my home computer. I hope I will help a distinguished audience understand how the launch occurs, what is needed for this and how to avoid known problems.

Training


Before starting the installation and connection of the server, it is worth checking for compliance with all necessary criteria of the equipment and network. In the brief description of the launch and on the landing page are the minimum system requirements without a detailed description and explanation, which leads to doubts about the possibility and cost-effectiveness of participation in the project.

If you strictly follow the minimum requirements, you get a server on which you can play just a few games. Given the constant change in the demanding games to resources, this can quickly lead to a loss of demand for the server or additional costs for re-equipment. This state of affairs is unlikely to please those who are going to purchase a new computer and rent it out to the service in the long term.

As testers have already noted, and I agree with them, the minimum requirements are based on the characteristics of the working servers of the centralized Playkey network.

A wide variety of computer hardware and the use of uniform profiles of game settings often lead to an increase in the general requirements for servers and loss of video card performance when working in the service. If a virtual machine with a video card cannot provide a minimum speed threshold, then the service may limit the number of games or completely refuse to rent such a server.

Since the server uses both physical and logical processor cores, the performance requirements for the processor can be reduced to an elementary comparison of the performance of one and several physical / logical processor cores using the database of any known test program taking into account the required number of cores depending on the game according to the following table. As a basis, you can take the performance of the Intel i5-8400 processor. Its core performance is sufficient for normal operation in most games, except for a few requiring a larger number of cores, and if the processor does not have enough, then it will simply be impossible to play the game normally.

To simplify the assessment of the capabilities of a computer as a PlaykeyPro server, I will provide a table of minimum experimentally verified requirements for a virtual machine to run accessible games on a decentralized network at the time of writing. The functioning of the server itself will additionally require two logical processor cores, 8 GB of RAM (12 GB when several virtual machines are started on the server) and 64 GB of disk space for the CentOS operating system and the underlying software of the virtual machine.



Based on the size of the data in the table, you can determine what capacity the hard drive should be. Do not forget about the reserve space for the virtual machine, updates and new games. The number of games is growing rapidly and the required volume will increase. For normal operation, it is undesirable to leave a free space of less than 100 GB.

The service has a function to determine the set of games by the server owner, however, at the current stage of beta testing, this function is not available and administrators simply do not have time to adjust the set of games for everyone. Overfilling of disks inevitably leads to errors in work and downtime of equipment for its maintenance by service administrators.

From the experience of participating in beta tests as media on a server with one virtual machine, I recommend using an HDD of at least 2 TB in conjunction with an SSD of 120 GB or more for caching file system read operations. Other solutions can entail large financial costs, however, to implement the work of more than one virtual machine within a single server, you will have to use only SSD drives with high read speed.

When two virtual machines are running on the same server, the data size remains the same as when working with one virtual machine, with the exception of a few gigabytes, which will help to save on SSD drive sizes.

Those who do not have the ability to connect large media should not despair. Data storage on the server is based on the ZFS file system, which easily allows you to increase the amount of available disk space over time without the need to make changes to the current configuration with full data storage. Such an implementation is not without its drawback of reducing the reliability of data storage, because if one of the carriers fails, it is likely that all data will be lost and you will have to wait for them to be downloaded from the Playkey servers, which is not at all pleasing given the amount of data.

Warning!


When deploying the service, personal data drives must be disconnected!

For those who plan not only to rent a computer, but also to use it for their needs, while connecting drives for the service and for personal use, the data of your drives can also be destroyed in case of an unexpected error. Of course, each time for personal use of the computer, physically disconnecting / connecting drives is not worth it. For SATA drives in the BIOS, it is possible to disconnect the drive (s). There are also SATA Switch drive power management devices that can help you quickly and safely disconnect important data drives. As for NVMe disks, disabling BIOS disks is possible only on rare motherboards, so you can not use them for your needs.

Network troubles


The instructions for deploying the service indicate the network parameters in the form of a wired Internet of at least 50 Mbps and a white IP address on the router. Let's take a closer look. The speed parameters of wired Internet are familiar to almost every Internet user, but white IP or not is usually very few people are interested in and do not know how to check.

White IP is a public external IP address assigned to only one specific device (router) on the global Internet. Thus, having a white IP router, any client computer can directly connect to your router, which, using the DHCP and UPNP functions, broadcasts the connection to the server behind the router.

To check the publicity of the IP address, you can use any service that displays your IP address and compare it with the IP address of the external connection of the router. If it matches, the IP address is public. Public IP addresses are static and dynamic. Static ones are best suited for a service; when using dynamic ones, there may be unpleasant surprises in the form of disconnections from the client computer and the server-manager of connection to the service. You can check the statics of the IP address with the provider of the Internet channel, or at least check the external IP address of the router for several days.

One of the problems encountered when deploying the service is the lack of support or operation errors of the UPNP function of the router. Most often, cheap routers provided by Internet providers sin this. If the router is in this category, then you should first find the documentation on configuring the UPNP function of the router.

The wired Internet speed requirement of 50 Mbps sets the minimum bandwidth of the Internet channel for one virtual machine. Accordingly, for several virtual machines, an Internet channel with a proportionally increased outgoing bandwidth, i.e. 50 Mbps times the number of virtual machines. Outgoing data traffic per month on average per virtual machine is 1.5 terabytes, so the limited tariff plans of Internet providers are not suitable for connecting to the service.

During the operation of the server, intensive data transfer occurs, which when using simple 100 megabit routers can lead to problems in the operation of online services of multimedia network devices on your local network. If you experience problems with the stability of the speed of the Internet channel, you should think about connecting a more productive router, otherwise the server will be unstable with subsequent disconnection from the service.

From the notes of testers, the routers Mikrotik, Keenetic, Cisco, TP-Link (Archer C7 and TL-ER6020) work well.

There are outsiders. For example, the Asus RT-N18U household gigabit router, after adding a second virtual machine, began to hang during prolonged simultaneous sessions, replacing it with Mikrotik Hap Ac2 completely eliminated the problem. Connection breaks are also a frequent occurrence, in particular, the Xiaomi Mi WiFi Router 4 router has to be rebooted once a month (the provider may be involved, the router was imposed with the statement that 500Mbps will work fine on their equipment).

The process of deploying multiple servers should be performed one at a time, the speed of service deployment depends on this. According to the developers, the solution to the problem of automatic data exchange between servers in a faster LAN is at the final stage. This will help to reduce the deployment time of the service at times and reduce the load on the Internet channel.

Iron nuances


Installation usually does not require user intervention, but at the moment the configuration is minimal and is aimed at owners of computers based on Intel processors with drives connected via SATA interfaces. If you have a computer based on an AMD processor or an NVMe SSD, some obstacles may arise, and if the article does not answer any questions, you can always ask for technical support directly on your personal account page or by sending an email to support_miners@playkey.io.

Earlier, among the requirements in the instructions for deploying the service, there was a mention of the need for integrated graphics or an additional video card to start and configure the server. At the stage of closed testing, this requirement has lost its relevance and has become more of a tool for more convenient server administration with direct access to the server by the owner, but like any Linux-based server, remote administration is available for configuration and monitoring.

The requirement for a monitor emulator (dummy) or a connected monitor is due to some hardware features of managing video modes of a video card in a virtual machine. Customers of the service often adjust the parameters of video modes to the parameters of their monitors. If a monitor or emulator is not connected to the video card, then many specific video modes become inaccessible to clients, which is unacceptable for the service. For constant server operation, the presence of an emulator is preferable to connecting a monitor, otherwise turning off the power of the monitor or switching the monitor to work from another video source can cause an error in the service. If you need to combine the functionality of the emulator and use the monitor without any reconnections, you can use the transit monitor emulator.

Test computer configuration


  • Chieftec Proton 750W (BDF-750C)
  • ASRock Z390 Pro4
  • Intel i5-9400
  • Crucial 16GB DDR4 3200 MHz Ballistix Sport LT ( )
  • SSD Samsung — PM961 M.2 2280, 512GB, PCI-E 3.0x4, NVMe
  • MSI Geforce GTX 1070 Aero ITX 8G OC
  • SSD SanDisk 16GB (USB HDD SATA RACK)


Downloading the “usbpro.img” image from the link in the PlaykeyPro deployment guide and writing it to an external USB drive takes only a couple of minutes. It took longer to scroll through the BIOS settings sections in search of virtualization options: Intel Virtualization and Intel VT-d. Without activating these options, the virtual machine cannot start. After activating the virtualization options, set the boot options in Legacy BIOS mode and save the settings. The current official image does not support UEFI boot; the developers announced this option in the next release of the image. The first start-up must be performed once from a pre-prepared USB media. In my case, for the ASRock motherboard, I used the F11 key to call the Boot Menu.





After choosing to start from a USB drive, beautiful screensavers did not follow and a dialog box immediately appeared asking you to enter the Playkey user ID, which can be found in the upper right part of the “personal account after completing the registration procedure on the landing page.



After entering the identification number, a window appears warning that all data on the specified drive will be permanently destroyed. In my example, the system and the data section for the games will be on the same drive. To ensure the binding of the server to the Personal Account, the name of the specified disk is used. The drive name and Playkey user ID are automatically entered into the server configuration, but there are automation errors on various equipment. Write down the disk name somewhere, it will come in handy when manually binding the server to the Personal Account in case of an error. The option to install the system and data with games on different disks is different, but in view of the rarity of such an implementation, I did not consider it as an example.



After confirming the destruction of data, the installer proceeds to configure the disk partitions and boot the system image. The installation was obviously carried out in the evening, because the process of downloading data is best done from midnight to noon, when the players rest and the network is not overloaded.



The forecast of the download time of the system image turned out to be true, after 45 minutes the installer, after checking the integrity of the image, began to copy it to the media. During the image downloading process, 'Connection timed out' error messages were often displayed, but this does not affect the downloading process, rather it looks like incorrectly set timeouts in the installer.



As expected, after successfully copying the system image to the media, the installer made a mistake related to the connection of the partition on the NVMe media (in the last deployment instructions there is a mention of the negative experience when installing on the NVMe disk and the recommendation not to select drives of this type). In this installation example, the error is not related to the features of the AMD platform, but to the elementary error of the installer regarding the correct determination of the partition ID of the NVMe disk. I reported an error to the developers, in the next release there should be no more error. If, nevertheless, an error occurs, then when sending a connection request, in addition to the Playkey ID and router model, provide the previously recorded drive name, and technical support will perform the remote configuration.

And so, the installation is complete, you can turn off the computer and then disconnect the USB media with the installer. The next step is the most exciting and simple, turn on the computer and wait for the CentOS operating system to finish loading. If everything was done correctly, then we will see the following picture.



No login required. Further, the service should continue to configure and work independently. You can send a request for connection.

Connection check


A successful start of the server is indicated by the appearance of an entry with the previously mentioned disk name in the list of personal account servers. The statuses opposite the server should be Online, Blocked and Free. If the server is not in the list, contact the support service directly from your personal account (button at the bottom right of the page).



After successfully launching CentOS and connecting to your personal account, the server will begin to automatically download the necessary data for work. The process is lengthy and may take longer depending on the bandwidth of the Internet channel. In the example, data was downloaded for about 8 hours (from evening to morning). The download process in your account at this stage of testing is not displayed at all. For simple indirect control, you can control the statistics on the traffic of the router. If there is no traffic, contact technical support about the server status.

If the basic server data is successfully downloaded and there are no technical problems on the virtual machine, the Windows operating system will start up with an easily recognizable desktop interface. After downloading the GTA5 game in a virtual machine, a performance test based on the GTA5 game will automatically start, based on the results of which the service will automatically decide on the suitability of the server and change the status of Blocked to Available. At the moment, because of the hype, there are queues for tests, just be patient. Now you can turn off the monitor and connect an emulator (plug) instead. The test is recorded in the Sessions section of your personal account (Game: gta_benchmark). If after completing the test the status has not changed to Avilable, please contact technical support with a question.





My builds


The bottleneck of the test assembly is the Intel i5-9400 processor, which has a limited number of cores with the missing Hyper-threading technology, which limits the number of connected games. Disk size also limits the library of games and is now the reason for reducing server utilization. The full library of games available for PlaykeyPro has already exceeded the size of 1TB.

In my arsenal there are several servers running two and three virtual machines based on three types of motherboards:

ASRock Z390 Phantom Gaming 6, i9-9900, DDR4 3200 48GB, SSD NVMe 1TB, SSD NVMe 512GB, GTX 1080ti, GTX 1070, GTX 1660 Super, power supply 1000W
Gigabyte Z390 Gaming Sli, i9-9900, DDR4 3200 48GB, SSD NVMe 512GB, GTX 1070, GTX 1660 Super, power supply 850W
Gigabyte Z390 Designare, i9-9900K, DDR4 3200 48GB, SSD NVMe 512GB, 3x GTX 1070, 1250W power supply

During assembly testing, the following disadvantages were noticed:

  • in the first two assemblies, the slots of the 2nd and 3rd video cards are too close to each other, which imposes difficulties in ensuring proper cooling;
  • on the Gigabyte Z390 Gaming Sli motherboard, the slot for the third video card is limited on the PCIe bus by two v3.0 lines from the motherboard chipset and, accordingly, fps losses are noticeable during the game (on ASRock PCIe x4 v3.0 MCH, the fps reduction is not noticeable);
  • when using the i9-9900 processor, there are not enough cores to run demanding games on all three virtual machines, so two virtual machines will soon function there;
  • it is impossible to use HDD in conjunction with two and three virtual machines.


The assembly on the basis of the Gigabyte Z390 Designare motherboard due to the symmetrical arrangement of the PCIe X16 slots was the most successful for providing reliable cooling of three video cards. In particular, to ensure high performance on the motherboard, all three video cards are connected to the PCIe v3.0 processor lines according to the x8 / x4 / x4 scheme without the participation of MCH.

Conclusion


Careful planning of the computer structure for deploying the PlaykeyPRO service will undoubtedly increase the reliability, performance, and life of the server. However, do not immediately build complex configurations on two / three virtual machines, start with one. After about a month, you can understand the server’s process and plan the optimal configuration of your equipment.

In addition to the minimum system requirements, I will give a recommendation on the configuration of the computer for the service, which will ensure the operation of all available games and provide a margin of performance for new products:

  • CPU: 8 cores
  • Hard disk: at least 2 TB, SSD or SSD> = 120 + HDD 7200 RPM
  • RAM: 24 GB (better 32, 16 + 16 in dual channel mode)
  • Video card: NVIDIA 2070 Super (equivalent in 1080Ti performance) or more productive

The information in this article is based on my personal experience with deploying and operating PlaykeyPro decentralized network servers. But even after almost a year of participation in testing, sometimes you encounter errors in the design of the equipment configuration.

All Articles