配置Ceph的IPV6集群
前言
对于IPV6实在是非常的陌生,所以本篇开始会讲一下最基本的网络配置,首先让网络能通起来,最开始就是因为不熟悉IPV6,而直接使用了link local地址,造成了mon部署的时候进程无法绑定到IP,从而端口没有启动,这个是在ceph社区群友 ceph-长沙-柠檬 同学的帮助下才发现问题的
IPV6是会有个link local地址的,在一个接口可以配置很多IPv6地址,所以学习路由就有可能出现很多下一跳。所以出现Link Local地址唯一标识一个节点。在本地链路看到下一跳都是对端的Link Local地址。这个地址一般是以fe80开头的,子网掩码为64,这个地方需要给机器配置一个唯一的全局单播地址
However, with IPv6, all (IPv6) interfaces will have a link local address. This address is intended to allow communications over the attached links and so is defined to be usable only on that link.
网络配置
linux下用默认的网卡配置文件
[root@node1 ceph]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.46 netmask 255.255.0.0 broadcast 192.168.255.255
inet6 fe80::20c:29ff:fec5:5a4b prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:c5:5a:4b txqueuelen 1000 (Ethernet)
RX packets 18422 bytes 1254119 (1.1 MiB)
RX errors 0 dropped 6 overruns 0 frame 0
TX packets 1938 bytes 890164 (869.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
取消NetworkManager管理
systemctl stop NetworkManager
systemctl disable NetworkManager
systemctl restart network
以免NetworkManager的干扰
这个地方我没有做自定义的IPV6的设置,让其默认的生成的地方,可以看到上面的node1的link local地址地址为 fe80::20c:29ff:fec5:5a4b
我的另外一台的地址为 fe80::20c:29ff:feda:6849
node1 fe80::20c:29ff:fec5:5a4b prefixlen 64
node2 fe80::20c:29ff:feda:6849 prefixlen 64
这个地方都是没有单播地址的,需要配置一个
配置的时候关闭掉ipv4的IP,防止影响,确认配置的就是ipv6环境,去掉IPv4的配置即可,我的网卡配置文件
TYPE="Ethernet"
BOOTPROTO="static"
DEFROUTE="yes"
PEERDNS="yes"
PEERROUTES="yes"
NM_CONTROLLED=no
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6ADDR=2008:20c:20c:20c:20c:29ff:fec5:5a4b/64
IPV6_AUTOCONF=no
IPV6_DEFROUTE="yes"
IPV6_PEERDNS="yes"
IPV6_PEERROUTES="yes"
IPV6_FAILURE_FATAL="no"
NAME="eno16777736"
UUID="0146f40c-6f4d-4c63-a9cd-7f89264613f3"
DEVICE="eno16777736"
ONBOOT="yes"
检查配置情况
[root@node1 ceph]# ifconfig
eno16777736: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::20c:29ff:fec5:5a4b prefixlen 64 scopeid 0x20<link>
inet6 2008:20c:20c:20c:20c:29ff:fec5:5a4b prefixlen 64 scopeid 0x0<global>
ether 00:0c:29:c5:5a:4b txqueuelen 1000 (Ethernet)
RX packets 9133 bytes 597664 (583.6 KiB)
RX errors 0 dropped 1 overruns 0 frame 0
TX packets 466 bytes 137983 (134.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
可以看到有两个inet6这样就是对的了
windows远程ssh连接的方式:ssh 2008:20c:20c:20c:20c:29ff:fec5:5a4b
配置hosts
在配置文件/etc/hosts中添加如下内容
2008:20c:20c:20c:20c:29ff:fec5:5a4b node1
2008:20c:20c:20c:20c:29ff:feda:6849 node2
检测是否连通
[root@node1 ~]# ping6 -I eno16777736 2008:20c:20c:20c:20c:29ff:feda:6849
ping主机名称
[root@node1 ~]# ping6 -I eno16777736 node2
注意ping6需要加上网卡名称
同样的操作在node2上也配置好,网络到这里就配置好了
集群配置
创建初始配置文件
[root@node1 ceph]# ceph-deploy new node1
[root@node1 ceph]# cat ceph.conf
[global]
fsid = f0bf4130-f4f0-4214-8b98-67103ad55d65
ms_bind_ipv6 = true
mon_initial_members = node1
mon_host = [2008:20c:20c:20c:20c:29ff:fec5:5a4b]
auth_cluster_required =cephx
auth_service_required = cephx
auth_client_required = cephx
创建mon
[root@node1 ceph]# ceph-deploy mon create node1
检查状态
[root@node1 ceph]# ceph -s
cluster d2882f75-1209-4667-bef8-3051c84cb83c
health HEALTH_ERR
no osds
monmap e1: 1 mons at {node1=[2008:20c:20c:20c:20c:29ff:fec5:5a4b]:6789/0}
election epoch 3, quorum 0 node1
osdmap e8: 0 osds: 0 up, 0 in
flags sortbitwise
pgmap v2664: 0 pgs, 0 pools, 0 bytes data, 0 objects
0 kB used, 0 kB / 0 kB avail
检查端口
[root@node1 ceph]# netstat -tunlp|grep tcp6
tcp6 0 0 :::22 :::* LISTEN 1155/sshd
tcp6 0 0 ::1:25 :::* LISTEN 1294/master
tcp6 0 0 2008:20c:20c:20c:2:6789 :::* LISTEN 8997/ceph-mon
可以看到集群已经正确的监听在了ipv6上了,后续的操作跟普通的IPV4集群一样的
变更记录
| Why | Who | When |
|---|---|---|
| 创建 | 武汉-运维-磨渣 | 2016-10-17 |
配置Ceph的IPV6集群的更多相关文章
- 【Quartz】配置最简单的集群
在许多情况,我们希望我们的定时任务是可靠的,不会因系统故障.机器宕机而导致某一笔定时任务不能按时运行.这种情况下,我们就需要为Quartz做个集群. 最简单的情况,有两台机器或两个应用,同时维护一批定 ...
- 配置drbd高可用集群
前期准备: 同步时间 (两个节点) 节点一(172.16.21.6) [root@stu21 heartbeat2]# ntpdate 172.16.0.1 31 Dec 20:59:25 ntpda ...
- Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群
Tomcat集群,Nginx集群,Tomcat+Nginx 负载均衡配置,Tomcat+Nginx集群 >>>>>>>>>>>> ...
- 大数据项目之_15_帮助文档_NTP 配置时间服务器+Linux 集群服务群起脚本+CentOS6.8 升级到 python 到 2.7
一.NTP 配置时间服务器1.1.检查当前系统时区1.2.同步时间1.3.检查软件包1.4.修改 ntp 配置文件1.5.重启 ntp 服务1.6.设置定时同步任务二.Linux 集群服务群起脚本2. ...
- 在 Linux 多节点安装配置 Apache Zookeeper 分布式集群
规划: 三台物理服务器就形成了(法定人数).对于高可用性集群,您可以使用高于3的任何奇数.例如,如果设置5台服务器,则集群可以处理两个故障节点等. 物理服务器需要开启的端口 2888 , 3888 和 ...
- dubbo配置负载均衡、集群环境
再用dubbo作为项目架构的时候,给consumer消费者用nginx提供了负载均衡策略和集群的实现, 但是想了下,consumer再多,但是提供者还是一个,最后还不都是落到了这一个provider上 ...
- db2 数据库配置HADR+TSA添加集群节点
Db2配置HADR高可用+TSA添加集群节点 一.服务器资源 Master IP:10.78.10.1 数据库:dbclassSlave IP:10.78.10.2 数据库:dbclassVIP:10 ...
- kubernetes配置(kubeconfig)对多集群的访问
配置对多集群的访问 本文展示如何使用配置文件来配置对多个集群的访问. 在将集群.用户和上下文定义在一个或多个配置文件中之后,用户可以使用 kubectl config use-context 命令快速 ...
- Ubuntu20.04配置 ES7.17.0集群
Ubuntu20.04配置 ES7.17.0集群 ES能做什么? elasticsearch简写es,es是一个高扩展.开源的全文检索和分析引擎,它可以准实时地快速存储.搜索.分析海量的数据. Ubu ...
随机推荐
- react中 受控组件和 非受控组件 浅析
一 受控组件 顾名思义,受控 也就是能够被控制,简而言之也就是 该组件ui的显示或者内部state逻辑的变化依赖外部的 props的传入. 二 非受控组件 顾名思义,非受控,也就是内部的视图变化,st ...
- Verilog基础入门——简单的语句块编写(二)
[题干] [代码] module top_module( input a, input b, output out ); assign out = a&b; endmodule [与或非门等] ...
- 如何把C++的源代码改写成C代码?而C改C++只需一步!
★ 如何把C++的源代码改写成C代码? C++解释器比C语言解释器占用的存储空间要大,想要在某些特定场合兼容C++代码,同时为了节省有限的存储空间,降低成本,也为了提高效率,将用C++语言写的源程序用 ...
- Linux如何在vim里搜索关键字
例如搜索 the写法:/the +回车 /+关键字 ,回车即可.此为从文档当前位置向下查找关键字,按n键查找关键字下一个位置: ?+关键字,回车即可.此为从文档挡圈位置向上查找关键字,按n键向 ...
- vscode配置python调试仍然直接输出
工作目录不能放在python的安装目录下
- is, ==, id 用法、代码块和缓存机制
id(): 获取对象的内存地址:print(id(i)) == : 比较两边的值是否相同 is : 判断内存地址是否相同 id相同,值一定相同 值相同,id不一定相同 代码块: Python是由代码块 ...
- 远程Jenkins新增Mac电脑节点
一,前言 上一篇博客Jenkins集成appium自动化测试(Windows篇)介绍了怎么使用远程Jenkins新建节点连接本地Windows电脑进行Appium自动化测试集成. 但是在做ios Ap ...
- linux 手动配置ip地址方法
手工配置静态的IP地址 也就是手工配置IP地址.子网掩码.网关和DNS. 设置方法如下: vi /etc/sysconfig/network-scripts/ifcfg-eth0 编辑本地网卡的配置文 ...
- linux中nginx中配置端口转发
域名指向主机IP地址,通过域名:8080才能访问网站,去掉后面的8080:或者其他的端口号,直接使用域名访问网站 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处 ...
- 一些免费API接口
转载自:https://www.cnblogs.com/haimishasha/p/6351403.html 天气接口 聚合数据: http://op.juhe.cn/onebox/weather/q ...