鲲鹏社区首页
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助

LXD容器配置

注意配置事项

  • 使其他用户有perf采集权限。
    1
    echo "-1">/proc/sys/kernel/perf_event_paranoid
    

    仅运行HPC应用分析任务和进程线程任务不需要执行此操作,但是echo后的参数不能为“3”,且需要在宿主机上进行更改。

  • 开启特权容器配置。
    1
    lxc config set template security.privileged=true
    

    宿主机同目录的文件从nobody变为有权限;仅运行HPC应用分析任务和进程线程任务不需要执行此操作。

    开启特权容器时,会将所有内核功能赋予容器,容器可执行主机层面的大部分事件,可能会给系统带来安全风险,建议用户针对容器做好安全加固,且使用完容器后恢复配置。

    图1 开启权限
  • 修改容器配置,使/sys/kernel/debug下文件有访问权限,并使/proc/kcore文件可读。
    1
    lxc config edit template
    
    图2 修改配置
    1
    ls  
    
    1
    console.log forkexec.log forkstart.log lxc.conf lxc.log lxc.log.old
    

    修改配置后,查看/sys/kernel/debug下文件的访问权限。

    图3 权限示意

    仅运行HPC应用分析任务和进程线程任务不需要执行此操作,需要重新启动容器,lxc stop后再lxc start

  • 安装libunwind工具。

    由于libunwind是工具安装的必需包,目前CentOS源有问题,可临时通过手动的方式安装,复制libunwind到容器环境中,编译安装即可,此处使用1.5.0版本。

    1
    2
    3
    4
    tar -zxvf libunwind-1.5.0.tar.gz
    cd libunwind-1.5.0/
    ./configure --prefix=/usr/lib64/
    make && make install
    

网络环境配置-路由方式

该方式须宿主机和agent服务器在同一网段。

图4 查看网段

在需要访问的LXD容器的服务器上执行:

1
route add -net 10.*.*.*/24 gw  90.*.*.*
图5 检验连通性

网络环境配置-桥接方式

以下宿主机为Ubuntu 20.04,LXD容器使用CentOS 8。

  1. 宿主机网络配置。
    1. 修改宿主机网络配置文件。
      1
      vim /etc/netplan/00-installer-config.yaml
      
      图6 修改前
      图7 修改后
    2. 使配置生效。
      1
      sudo netplan apply
      
      图8 查看网络配置
  2. lxd容器添加网卡。
    1. 绑定网卡
      1
      sudo lxc network attach 宿主机网卡名称 容器名称
      
      图9 查看容器网卡
    2. 重启容器。
      1
      lxc restart 容器名
      
  3. LXD容器网络配置。
    1. 进入容器。
      1
      lxc exec 容器名 /bin/bash
      
    2. 容器中修改对应网卡配置。
      1
      vi /etc/sysconfig/network-scripts/ifcfg-eth1
      

      注意该地址为宿主机局域网上一个未使用的地址,且容器掩码和宿主机掩码需保持一致。

      图10 修改后文件
    3. 容器内重启网络。
      1
      systemctl restart network.service
      
    4. 在宿主机查看地址。
      1
      lxc list
      
      图11 查看网络地址