Difference between revisions of "CentOS 8.x install lxc"

From Notes_Wiki
(Created page with "<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc<yambe:breadcrumb> =CentOS 8.x install lxc= ==Package installation To install lxc on CentOS 8.x use: # Install required...")
 
m
Line 1: Line 1:
<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc<yambe:breadcrumb>
<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc</yambe:breadcrumb>
=CentOS 8.x install lxc=
=CentOS 8.x install lxc=


==Package installation
==Package installation and creation of test container==
To install lxc on CentOS 8.x use:
To install lxc on CentOS 8.x use:
# Install required packages:
# Install required packages:
Line 11: Line 11:
#:<pre>
#:<pre>
#::lxc-checkconfig
#::lxc-checkconfig
#:</pre>
# Enable lxc service
#:<pre>
#:: systemctl start lxc
#:: systemctl enable lxc
#:: systemctl status lxc
#:</pre>
#:</pre>
# Then create network bridge if not created already by referring [[Creating bridge interfaces (br0) for virtual hosts to use shared interface]] or [[CentOS 7.x Managing virtual networks using libvirt virsh command]]
# Then create network bridge if not created already by referring [[Creating bridge interfaces (br0) for virtual hosts to use shared interface]] or [[CentOS 7.x Managing virtual networks using libvirt virsh command]]
Line 29: Line 35:
#:: lxc-ls
#:: lxc-ls
#:</pre>
#:</pre>
# Create a few lxc containers and test
# Download lxc-template for centos 8
#:<pre>
#:: lxc-create -t download -n lxc1
#:: centos  ##Enter as input for Distribution
#:: 8      ##Enter as input for Release
#:: amd64  ##Enter as input for architecture
#:</pre>
# Run the container and see that it is working as expected
#:<pre>
#:: ##Validate container is not running
#:: lxc-ls -f
#::
#:: ##Set container root password
#:: chroot /var/lib/lxc/lxc1/rootfs/
#:: passwd
#:: exit
#::
#:: #Start container and install openssh to connect remotely
#:: lxc-start -n lxc1 -d
#:: lxc-ls -f
#:: lxc-console -n lxc1 -t 0
#:: ## Login with root user and password set in previous steps
#:: yum -y install openssh-server
#:: systemctl start sshd
#:: systemctl enable sshd
#:: systemctl status sshd
#:: #Exit lxc-console with "Ctrl-a q" shortcut
#:</pre>
#Get container IP address using '<tt>lxc-ls -f</tt>'
#ssh to container as root and test




Line 37: Line 72:




<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc<yambe:breadcrumb>
<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc</yambe:breadcrumb>

Revision as of 04:13, 3 August 2020

<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc</yambe:breadcrumb>

CentOS 8.x install lxc

Package installation and creation of test container

To install lxc on CentOS 8.x use:

  1. Install required packages:
    sudo dnf install lxc lxc-templates lxc-doc libcgroup-pam libcgroup-tools libcgroup
  2. Test by running
    lxc-checkconfig
  3. Enable lxc service
    systemctl start lxc
    systemctl enable lxc
    systemctl status lxc
  4. Then create network bridge if not created already by referring Creating bridge interfaces (br0) for virtual hosts to use shared interface or CentOS 7.x Managing virtual networks using libvirt virsh command
  5. Edit '/etc/lxc/default.conf' and update value of 'lxc.network.link' in this file appropriately.
  6. Store container files in a different partition then / or /var using CentOS 7.x installing lxc#Get_more_space_for_lxc_containers
    lxc-ls --active
    mkdir /mnt/data1/large_files/lxc-files
    mkdir /mnt/data1/large_files/lxc-files/{var_cache_lxc,var_lib_lxc}
    mv /var/cache/lxc/* /mnt/data1/large_files/lxc-files/var_cache_lxc/ #Ignore no-such files error, if printed
    rmdir /var/cache/lxc
    ln -s /mnt/data1/large_files/lxc-files/var_cache_lxc/ /var/cache/lxc
    mv /var/lib/lxc/* /mnt/data1/large_files/lxc-files/var_lib_lxc/ #Ignore no such fies error, if printed
    rmdir /var/lib/lxc
    ln -s /mnt/data1/large_files/lxc-files/var_lib_lxc/ /var/lib/lxc
    lxc-ls
  7. Download lxc-template for centos 8
    lxc-create -t download -n lxc1
    centos ##Enter as input for Distribution
    8 ##Enter as input for Release
    amd64 ##Enter as input for architecture
  8. Run the container and see that it is working as expected
    ##Validate container is not running
    lxc-ls -f
    ##Set container root password
    chroot /var/lib/lxc/lxc1/rootfs/
    passwd
    exit
    #Start container and install openssh to connect remotely
    lxc-start -n lxc1 -d
    lxc-ls -f
    lxc-console -n lxc1 -t 0
    ## Login with root user and password set in previous steps
    yum -y install openssh-server
    systemctl start sshd
    systemctl enable sshd
    systemctl status sshd
    #Exit lxc-console with "Ctrl-a q" shortcut
  9. Get container IP address using 'lxc-ls -f'
  10. ssh to container as root and test


Refer:


<yambe:breadcrumb self="Install lxc">CentOS 8.x lxc|lxc</yambe:breadcrumb>