Difference between revisions of "Core"

From LinuxMCE
Jump to: navigation, search
m (Centralized configuration and administration)
 
(26 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
{{versioninfo|710Status=Relevant info|710UpdatedDate=2nd June 2011|710UpdatedBy=purps|810Status=Relevant info|810UpdatedDate=2nd June 2011|810UpdatedBy=purps}}
 
{{versioninfo|710Status=Relevant info|710UpdatedDate=2nd June 2011|710UpdatedBy=purps|810Status=Relevant info|810UpdatedDate=2nd June 2011|810UpdatedBy=purps}}
 
[[Category: Cores| ]]
 
[[Category: Cores| ]]
 +
{{toc}}
  
'''Core''' is the term given to the main LinuxMCE server in your home automation/multimedia network.
+
= The LinuxMCE Core server =
 +
A Core is a single dedicated PC acting as a server that interacts with all the components of the system.
 +
This is the most important component of a LinuxMCE system since it runs all of the primary applications and services. It is the heart and brain of the LinuxMCE system, the main server in your LinuxMCE home automation/multimedia network.  
  
All settings for the network are stored in the Core Server. Even if a device is connected to a [[Media Director]] PC in another part of the house, it is detected by the Core server and information about that device (its location, functions, and options) is stored on the Core.
+
The core serves as:
  
In this way, plug-and-play function is provided throughout the LinuxMCE system for all [[AV devices]] connected anywhere within the system.
+
[[Image:Diagram1.jpg|200px|right]]
  
The Core Server provides a standardized [[LinuxMCE Admin Website]] to every Media Director, which can be viewed through a browser on any Media Director. The entire system can therefore be administered from any Media Director.
+
* a multiprotocol router
 +
::- a communications hub for all connected devices:  it routes home automation messages and commands.
 +
::- the networking [[Why dual network cards? |router of the home automation/multimedia network]]
 +
::- a PBX for all connected IP telephony devices and media directors
  
This allows the Core Server to be "headless" (i.e. without a monitor, keyboard, mouse, or any other input or output device), if desired. It is a true server.
+
* a central repository
 +
::- the storage location for the configuration of all the devices
 +
::- a PXE server distributing boot images to media players
 +
::- a storage device for media
  
The Core PC is also able to provide standardised [[netboot]] services to the Media Directors on the home network. In this way, the Media Director PCs do not require their own OS and can act essentially as thin clients. System administration and updates are therefore much easier, as only the Core software needs to be upgraded.
 
  
==Hardware requirements==
+
The Core is the central point of the LinuxMCE system. It is left on all the time since without it, LinuxMCE functionality everywhere else in the home stops working.
  
Because the Core handles processing for the whole network, it should be the "brawniest" PC in regards to processing power. A dual-core 64 bit processor with a lot of RAM is very nice to have in the Core Server.
+
{{p}}
  
Since a Core can be hidden in a closet (or in the garage or basement somewhere) and therefore does not need to be in your living room (unless it is functioning as a [[hybrid]]), fan noise is usually not an issue.
+
==Communications hub==
 +
The LinuxMCE Core runs the applications and daemons needed for the other devices to exchange messages within the LinuxMCE system. All system components send home automation messages and commands to the Core which in turn sends them to the target system components. The LinuxMCE Core is the one component in the system that knows about all the components that make up the system. It serves as a communications hub for all other connected devices.
  
The Core PC does require a large amount of storage. This can be large capacity internal hard drives, a large capacity external hard drive, or even perhaps a [[NAS]] (network-attached storage) device, that is accessible by being connected somewhere on the home automation/multimedia network.
+
The LinuxMCE Core is also at the center of communications on the network. New users commonly misunderstand this role and attempt to install LinuxMCE as "just another component" of their existing network. However, the LinuxMCE Core does not only route home automation messages and commands between components, but also distributes IP addresses, delivers boot images, and serves as the gateway to the Internet for the system components. The LinuxMCE Core functions as the network's router. <br>
 +
Though it is possible to install LinuxMCE on an existing network, the Core has to be the gateway for the {{l}} system. It can join the existing network as a node, but the LinuxMCE system components have to be added to the LinuxMCE Core's internal network, essentially creating two distinct networks. It then becomes your responsibility to join the two networks as necessary if you would like to interact with the LinuxMCE system components from the external network. In general, LinuxMCE Core is used as the router and gateway of the network to which the access points are connected, and the pre-existing router/gateway is placed outside the network (essentially used as a bridge to the Internet).<br>
 +
To learn more about LinuxMCE networking role, network cabling and configuration, see [[Why dual network cards?]].
  
Of course you need a DVD/CD drive (at least for software installation -- grin)!
+
{{p}}
  
The Core should have 2 NICs (network interface cards) -- one for connecting to an "external" network (such as your cable modem, DSL modem, or home LAN router) and one for connecting to the "internal"  home automation/multimedia network (your LinuxMCE system network).
+
== Centralized configuration and administration ==
  
Further, it is best to have the [[:Category:TV_Cards|TV card]] in the Core server, as well as the [[:Category:Video_Capture_Boards|video capture board]] for any surveillance [[:Category:Cameras|cameras]]. A [[Automation|home automation]] interface is usually attached to the Core as well. Therefore, a PC to be used as a Core must have plenty of expansion slots, and cooling fans proportionate to the load.  
+
==== Configurations repository ====
 +
In a LinuxMCE system, all the settings are stored in the Core Server. Each system component's location, functions, and options are stored on the Core. Every device's configuration, and, all network settings are also stored on the Core.  
  
Output and sound cards are relatively unimportant for the Core, because output is usually channeled through the Media Director PCs.
+
::For example, even though the [[AV devices]] are connected to the Media Director(s), [[AV devices]] connected anywhere within the system, even those connected to another (such as a [[Media Director]] PC) in another part of the house are all managed by the Core. In the [[LinuxMCE Admin Website|LinuxMCE Admin]] panel, A/V devices settings are specified separately from the settings of the Media Directors to which they are connected. This is done because the Core keeps track of the controls and settings for each individual device in the system.  
  
Nevertheless, some home automation/multimedia systems channel output through a central whole-house multi-channel amplifier which is connected directly to the Core. If you plan to do this, make the Core into a [[hybrid]], instead, and fit a good (nVidia) [[:Category:Video|graphics]] card and a good [[:Category:Soundcards|sound card]] (with surround sound jacks -- 5.1, 7.1, or even 11.1).
 
  
===Example PCs used as Core servers=== 
+
This centralization of settings enables [[#Plug 'n' Play Capabilities|plug-and-play operation]] throughout the LinuxMCE system. All devices connected anywhere within the system are automatically configurable once discovered by the LinuxMCE Core.
 +
 +
{{p}}
  
See the [[:Category:Cores|Core Category]] for examples of PCs used as Core Servers.
+
==== Centralized administration ====
 +
All the devices part of the LinuxMCE network are listed and configured on the Core. The Core Server provides a standardized administration website accessible via web browser from any Media Director or other device connected to the LinuxMCE network. The [[LinuxMCE Admin Website]] is the interface used to configure the LinuxMCE system.
  
===A Dedicated Core===
+
Since the entire system can be administered from any Media Director, you can run the Core Server without a monitor, keyboard, mouse or any other input or output device if you choose to do so. It is a true server. In this configuration, the server is said to be running "headless".
[[Image:Diagram1.jpg|200px|right]]
+
 
The Core is the central point of the LinuxMCE system and runs applications and daemons needed for the other devices to exchange messages. A dedicated core will run only backend applications and will not provide any frontend, except the web interface. This means it won't act as a media center. You'll need to use Media Directors to be able to play movies, listen to music and watch TV. This kind of setup is recommended when you have plenty of extra devices; this way the backend applications will have full access to the Core's resources.
+
{{p}}
 +
 
 +
== Plug 'n' Play Capabilities ==
 +
 
 +
Once LinuxMCE is installed, you can treat it like an appliance -- plug it in, turn it on, and leave it alone. You don't even need to install any software on the media PCs that will be used as [[Media Directors]]. If these PCs are connected to the Core by wired Ethernet, they can usually be set to [[Network Boot for Media Directors|boot LinuxMCE from the Core server over the network]] whenever you want to use them as a Media Directors. The rest of the time they can be used as a regular PCs, using whatever operating system is already on their hard drives.
 +
 
 +
For this to work, it is recommended to have [[Why dual network cards?|two Network Interface Cards]] in the Core -- one to connect to the "external" network (which can be your home LAN or simply your Internet connection), and one for the "internal" LinuxMCE network (to which all your LinuxMCE devices are connected). All devices on the LinuxMCE LAN are considered "internal", and any device on your home LAN is considered "external". The Core serves as a bridge between the LinuxMCE LAN and the internet when internet access is requested by LinuxMCE (internal) devices. The LinuxMCE Core server effectively acts as both the DHCP server and the firewall for the "internal" LinuxMCE network. <br>
 +
 
 +
To recognize each device and send it the necessary software, it is necessary that the LinuxMCE Core read and answer DHCP requests. It needs to be '''the only DHCP server within your LinuxMCE internal network''', in order to offer both plug-and-play and network boot services. You can keep a DHCP server on your home (external) LAN as long as its relationship with the Core is the Core's "external" Network Interface Card, but the Core should be the only device to serve DHCP within the internal network.  
 +
 
 +
Note that you can easily have PCs outside of the LinuxMCE internal network, if you choose. Simply connect them to the external network, rather than the internal LinuxMCE network. <br>
 +
Alternatively, you can choose to have all PCs in your house be part of the LinuxMCE network. In this case the Core server provides DHCP and firewall services for your entire home LAN, and all you computers can be used as [[Orbiters|remote controls]].
 +
 
 +
{{p}}
 +
 
 +
==== Netboot services ====
 +
With all the settings for Media Directors and all other devices centrally stored, it is possible to [[netboot]] devices from the Core. The Core PC provides standardized [[netboot]] services on the network. It listens for and auto configures all sorts of devices, including network audio players (e.g. Squeeze Box), IP phones and cameras, and Media Director PCs. <br>
 +
The Core server detects each device and makes it accessible to all the other components. With this plug-and-play back-end, the Core can automatically provide a network boot to thin-client PCs, and issue them the OS necessary to turn them into [[Media Directors]]. <br>
 +
System administration and updates are easy since only the software stored on the Core needs to be upgraded.
 +
 
 +
{{p}}
 +
 
 +
== Core PC hardware selection guide ==
 +
To learn about the PC components necessary in a Core, read the [[Core - Hardware selection primer]]
 +
 
 +
{{p}}
 +
 
 +
==Links==
 +
* [[User Manual#Composition of a LinuxMCE system|Learn about the other LinuxMCE system components]]
  
This was easy to achieve in 0710 as there was a very handy dialogue box that allows you to switch between core and hybrid. It is however possible in 0810 by disabling AutoStartMedia in "/etc/pluto.conf".
+
{{p}}

Latest revision as of 05:17, 24 February 2016

Version Status Date Updated Updated By
710 Relevant info 2nd June 2011 purps
810 Relevant info 2nd June 2011 purps
1004 Unknown N/A N/A
1204 Unknown N/A N/A
1404 Unknown N/A N/A
Usage Information

The LinuxMCE Core server

A Core is a single dedicated PC acting as a server that interacts with all the components of the system. This is the most important component of a LinuxMCE system since it runs all of the primary applications and services. It is the heart and brain of the LinuxMCE system, the main server in your LinuxMCE home automation/multimedia network.

The core serves as:

Diagram1.jpg
  • a multiprotocol router
- a communications hub for all connected devices: it routes home automation messages and commands.
- the networking router of the home automation/multimedia network
- a PBX for all connected IP telephony devices and media directors
  • a central repository
- the storage location for the configuration of all the devices
- a PXE server distributing boot images to media players
- a storage device for media


The Core is the central point of the LinuxMCE system. It is left on all the time since without it, LinuxMCE functionality everywhere else in the home stops working.



Communications hub

The LinuxMCE Core runs the applications and daemons needed for the other devices to exchange messages within the LinuxMCE system. All system components send home automation messages and commands to the Core which in turn sends them to the target system components. The LinuxMCE Core is the one component in the system that knows about all the components that make up the system. It serves as a communications hub for all other connected devices.

The LinuxMCE Core is also at the center of communications on the network. New users commonly misunderstand this role and attempt to install LinuxMCE as "just another component" of their existing network. However, the LinuxMCE Core does not only route home automation messages and commands between components, but also distributes IP addresses, delivers boot images, and serves as the gateway to the Internet for the system components. The LinuxMCE Core functions as the network's router.
Though it is possible to install LinuxMCE on an existing network, the Core has to be the gateway for the LinuxMCE system. It can join the existing network as a node, but the LinuxMCE system components have to be added to the LinuxMCE Core's internal network, essentially creating two distinct networks. It then becomes your responsibility to join the two networks as necessary if you would like to interact with the LinuxMCE system components from the external network. In general, LinuxMCE Core is used as the router and gateway of the network to which the access points are connected, and the pre-existing router/gateway is placed outside the network (essentially used as a bridge to the Internet).
To learn more about LinuxMCE networking role, network cabling and configuration, see Why dual network cards?.



Centralized configuration and administration

Configurations repository

In a LinuxMCE system, all the settings are stored in the Core Server. Each system component's location, functions, and options are stored on the Core. Every device's configuration, and, all network settings are also stored on the Core.

For example, even though the AV devices are connected to the Media Director(s), AV devices connected anywhere within the system, even those connected to another (such as a Media Director PC) in another part of the house are all managed by the Core. In the LinuxMCE Admin panel, A/V devices settings are specified separately from the settings of the Media Directors to which they are connected. This is done because the Core keeps track of the controls and settings for each individual device in the system.


This centralization of settings enables plug-and-play operation throughout the LinuxMCE system. All devices connected anywhere within the system are automatically configurable once discovered by the LinuxMCE Core.



Centralized administration

All the devices part of the LinuxMCE network are listed and configured on the Core. The Core Server provides a standardized administration website accessible via web browser from any Media Director or other device connected to the LinuxMCE network. The LinuxMCE Admin Website is the interface used to configure the LinuxMCE system.

Since the entire system can be administered from any Media Director, you can run the Core Server without a monitor, keyboard, mouse or any other input or output device if you choose to do so. It is a true server. In this configuration, the server is said to be running "headless".



Plug 'n' Play Capabilities

Once LinuxMCE is installed, you can treat it like an appliance -- plug it in, turn it on, and leave it alone. You don't even need to install any software on the media PCs that will be used as Media Directors. If these PCs are connected to the Core by wired Ethernet, they can usually be set to boot LinuxMCE from the Core server over the network whenever you want to use them as a Media Directors. The rest of the time they can be used as a regular PCs, using whatever operating system is already on their hard drives.

For this to work, it is recommended to have two Network Interface Cards in the Core -- one to connect to the "external" network (which can be your home LAN or simply your Internet connection), and one for the "internal" LinuxMCE network (to which all your LinuxMCE devices are connected). All devices on the LinuxMCE LAN are considered "internal", and any device on your home LAN is considered "external". The Core serves as a bridge between the LinuxMCE LAN and the internet when internet access is requested by LinuxMCE (internal) devices. The LinuxMCE Core server effectively acts as both the DHCP server and the firewall for the "internal" LinuxMCE network.

To recognize each device and send it the necessary software, it is necessary that the LinuxMCE Core read and answer DHCP requests. It needs to be the only DHCP server within your LinuxMCE internal network, in order to offer both plug-and-play and network boot services. You can keep a DHCP server on your home (external) LAN as long as its relationship with the Core is the Core's "external" Network Interface Card, but the Core should be the only device to serve DHCP within the internal network.

Note that you can easily have PCs outside of the LinuxMCE internal network, if you choose. Simply connect them to the external network, rather than the internal LinuxMCE network.
Alternatively, you can choose to have all PCs in your house be part of the LinuxMCE network. In this case the Core server provides DHCP and firewall services for your entire home LAN, and all you computers can be used as remote controls.



Netboot services

With all the settings for Media Directors and all other devices centrally stored, it is possible to netboot devices from the Core. The Core PC provides standardized netboot services on the network. It listens for and auto configures all sorts of devices, including network audio players (e.g. Squeeze Box), IP phones and cameras, and Media Director PCs.
The Core server detects each device and makes it accessible to all the other components. With this plug-and-play back-end, the Core can automatically provide a network boot to thin-client PCs, and issue them the OS necessary to turn them into Media Directors.
System administration and updates are easy since only the software stored on the Core needs to be upgraded.



Core PC hardware selection guide

To learn about the PC components necessary in a Core, read the Core - Hardware selection primer



Links