搭建kylin(麒麟)及遇到的问题(续)

本文档详细记录了在使用Ambari搭建Hadoop环境后,安装Kylin过程中遇到的SSH权限错误和主机注册问题。通过修改Python配置和调整用户权限,成功解决并启动Kylin服务。最后,提供了访问Kylin UI的步骤和解决读写权限问题的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

之前安装好了ambari,接下来就是需要使用ambari安装需要的服务,其中遇到了一个问题

1、Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password). SSH command execution finished

解决:

cd ~/.shh
cat id_rsa.pub >>authorized_keys
chmod 700 ~/.ssh  
chmod 600 ~/.ssh/authorized_keys 

 

2、host无法注册,后来发现是python版本问题,需要手动设置一下。SSLError: Failed to connect. Please check openssl library versions.

解决:vi /etc/python/cert-verification.cfg

verify=disable

 

 

使用ambaari搭建了Hadoop环境之后,就可以在官网上下载kylin的源码了。

step1、下载源码并解压

cd /usr/local

wget http://www-us.apache.org/dist/kylin/apache-kylin-2.3.1/apache-kylin-2.3.1-hbase1x-bin.tar.gz

tar -zxvf apache-kylin-2.3.1-hbase1x-bin.tar.gz

step2、进入kylin文件并设置 KYLIN_HOME

cd apache-kylin-2.3.1-bin

export KYLIN_HOME=`pwd`

step3、使用 $KYLIN_HOME/bin/check-env.sh 检查hadoop、hive等运行环境

<think>嗯,用户这次的问题是关于在Kylin 10虚拟机中配置CPU的NUMA模式。这属于操作系统层面的高级配置,需要结合虚拟化技术和硬件特性来处理。 用户可能正在搭建高性能计算环境或者数据库服务器,这类场景对内存访问延迟非常敏感。考虑到Kylin是基于Linux的国产系统,应该和标准Linux的NUMA配置方法兼容,但需要确认虚拟化层的支持情况。 从技术角度看,需要分三层处理: 首先是物理主机层,需要确保BIOS中启用了NUMA支持,并且物理CPU确实具有NUMA拓扑。然后是虚拟化软件层,比如KVM需要配置正确的CPU参数和NUMA拓扑映射。最后是guest操作系统层,需要在Kylin 10中验证NUMA识别和配置工具。 用户可能遇到的典型问题包括:虚拟机无法识别NUMA拓扑,或者vCPU绑定失效。这通常是因为虚拟化层配置不当,比如忘记添加numa=on参数,或者vcpu分配不符合物理NUMA节点分布。 特别要注意的是,在虚拟机中配置NUMA比物理机更复杂,因为涉及到两层抽象:hypervisor的虚拟NUMA和物理硬件的真实NUMA。最佳实践是保持虚拟机vCPU数量不超过单个物理NUMA节点的核心数,避免跨节点访问。 对于性能调优部分,numactl工具的使用是关键,但用户可能更需要具体的配置案例。比如配置MySQL这类内存密集型服务时,通常需要显式绑定内存分配策略。 安全方面需要提醒用户,修改内核参数可能存在稳定性风险,特别是transparent huge pages的配置需要根据负载测试调整。另外,Kylin系统可能有特定的安全模块需要处理,比如kylinsec的权限控制。 考虑到用户的技术水平(能提出NUMA配置问题应该是有经验的系统管理员),回复可以包含较专业的术语和底层原理,但关键步骤还是要给出具体命令示例。比如virsh edit的详细参数设置就很有必要。</think>在 Kylin 10 虚拟机中配置 CPU NUMA 模式,需通过虚拟化层(如 KVM/QEMU)和操作系统协同完成。以下是详细步骤: --- ### **一、确认物理主机支持** 1. **检查物理机 NUMA 拓扑** 在宿主机执行: ```bash numactl --hardware ``` 输出应显示多个 NUMA 节点(如 `node 0`、`node 1`),确认物理硬件支持 NUMA。 2. **验证 CPU 标志** 检查 CPU 是否支持 NUMA: ```bash grep -i numa /proc/cpuinfo # 需包含 "numa" 相关标志 ``` --- ### **二、虚拟机配置(KVM/QEMU 环境)** #### **方法 1:使用 `virsh` 配置** 1. 编辑虚拟机 XML 配置: ```bash virsh edit <虚拟机名称> ``` 2. 在 `<cpu>` 部分启用 NUMA 拓扑: ```xml <cpu mode='host-passthrough' check='none'> <topology sockets='2' cores='4' threads='1'/> <!-- 按需调整 --> <numa> <cell id='0' cpus='0-3' memory='4194304' unit='KiB'/> <!-- 节点0:4核+4GB内存 --> <cell id='1' cpus='4-7' memory='4194304' unit='KiB'/> <!-- 节点1:4核+4GB内存 --> </numa> </cpu> ``` - `cpus`:分配给该 NUMA 节点的 vCPU 范围 - `memory`:节点内存大小(单位 KiB) #### **方法 2:使用 `virt-manager` 图形界面** 1. 打开虚拟机设置 → **CPU** 选项 2. **拓扑** 选项卡: - 设置 Socket/Core/Thread 布局(如 2 Sockets, 4 Cores, 1 Thread) 3. **NUMA** 选项卡: - 手动分配 vCPU 和内存到不同 NUMA 节点 --- ### **三、Kylin 10 系统内配置** 1. **验证 NUMA 识别** 在 Kylin 10 虚拟机内执行: ```bash lscpu | grep -i numa # 查看 NUMA 节点数 numastat # 显示 NUMA 内存分配统计 ``` 2. **安装 NUMA 工具** ```bash sudo apt install numactl # 安装管理工具 ``` 3. **关键内核参数调优** 编辑 `/etc/sysctl.conf`: ```ini vm.zone_reclaim_mode = 1 # 开启本地内存回收 kernel.numa_balancing = 1 # 启用自动 NUMA 平衡(默认开启) ``` 加载配置:`sysctl -p` 4. **绑定进程到 NUMA 节点** 启动应用时指定 NUMA 策略: ```bash numactl --cpunodebind=0 --membind=0 <程序命令> # 绑定到节点0 ``` --- ### **四、性能优化建议** 1. **vCPU 分配原则** - 单个 vCPU 不跨物理 NUMA 节点 - 虚拟机总 vCPU 数 ≤ 单个物理 NUMA 节点的核心数 2. **内存大页支持** 在虚拟机 XML 中添加: ```xml <memoryBacking> <hugepages/> </memoryBacking> ``` 3. **禁用透明大页(可选)** 在 Kylin 10 中: ```bash echo never > /sys/kernel/mm/transparent_hugepage/enabled ``` --- ### **验证配置** ```bash # 查看 NUMA 节点状态 numactl --hardware # 测试内存访问延迟 numactl -H -m <节点ID> -- lat_mem_rd 1G ``` > **重要提示**: > - **虚拟化层必须支持 NUMA 透传**(如 KVM/QEMU ≥ 2.1) > - 过度分割 NUMA 节点可能导致性能下降,建议保持虚拟机 NUMA 拓扑与物理机对齐[^1] > - 对于数据库/高性能计算场景,需结合应用层 NUMA 绑定策略[^2] [^1]: KVM 虚拟化 NUMA 调度优化指南, Linux Kernel Documentation. [^2]: Oracle 数据库 NUMA 配置白皮书, 2022. ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值