安装了最小化redhat7,在bash环境下,不能用tab键补全命令
例如,我在设置防火墙的时候,输出firewall-cmd ,按两下tab键,没有显示选项命令。
经过一番搜索,这是由于系统缺少了bash-completion;
用yum安装,reboot之后,补全命令可用。
安装了最小化redhat7,在bash环境下,不能用tab键补全命令
例如,我在设置防火墙的时候,输出firewall-cmd ,按两下tab键,没有显示选项命令。
经过一番搜索,这是由于系统缺少了bash-completion;
用yum安装,reboot之后,补全命令可用。
Keepalived的作用是检测后端TCP服务的状态,如果有一台提供TCP服务的后端节点死机,或者工作出现故障,keepalived会及时检测到,并将有故障的节点从系统中剔除,当提供TCP服务的节点恢复并且正常提供服务后keepalived会自动将TCP服务的节点加入到集群中。这些工作都是keepalived自动完成,不需要人工干涉,需要人工做的只是修复发生故障的服务器,以下通过示例来演示。
前提:为了测试能顺利进行,需先关闭selinux和firewalld。
测试环境如下:
名称 | IP |
---|---|
keepalived主机 | 10.0.0.20 |
keepalived备机 | 10.0.0.21 |
http服务器1 | 10.0.0.22 |
http服务器2 | 10.0.0.23 |
virtual ip | 10.0.0.100 |
$ sudo yum install -y httpd
# http服务器1设置
echo “10.0.0.22” >/var/www/html/index.html
# http服务器2设置
echo “10.0.0.23” >/var/www/html/index.html
$ sudo systemctl start httpd
$ sudo systemctl enable httpd
#安装依赖文件与keepalive
$ sudo yum install -y openssl openssl-devel keepalived
$ sudo vim /etc/keepalived/keepalived.conf
vrrp_instance VI_1 {
#指定该节点为主节点,备用节点设置为BACKUP
state MASTER
#绑定虚拟IP的网络接口
interface eno16777736
#VRRP组名,两个节点设置一样,以指明各个节点同属一VRRP组
virtual_router_id 51
#主节点的优先级,数值在1~254,注意从节点必须比主节点的优先级别低
priority 50
##组播信息发送间隔,两个节点需一致
advert_int 1
#设置验证信息,两个节点需一致
authentication{
auth_type PASS
auth_pass 1111
}
#指定虚拟IP,两个节点需设置一样
virtual_ipaddress{
10.0.0.100
}
}
#虚拟IP服务
virtual_server 10.0.0.100 80 {
#设定检查间隔
delay_loop 6
#指定LVS算法
lb_algo rr
#指定LVS模式
lb_kind NAT
nat_mask 255.255.255.0
#持久连接设置,会话保持时间
persistence_timeout 50
#转发协议为TCP
protocol TCP
#后端实际TCP服务配置
real_server 10.0.0.22 80 {
weight 1
}
real_server 10.0.0.23 80 {
weight 1
}
}
# 其它配置跟keepalived主机相同
state BACKUP
priority 30
/etc/keepalived/keepalived.conf为keepalived的主配置文件。 以上配置state表示主节点为10.0.0.20,副节点为10.0.0.21,虚拟IP为 10.0.0.100。 后端的真实服务器为10.0.0.22和10.0.0.23。 当通过10.0.0.100访问web服务器时,自动转到后端真实服务器,后端节点的权重相同,类似轮询的模式。
$ sudo systemctl start keepalived
$ sudo systemctl enable keepalived
$ ip addr show
以上测试结果说明,当keepalived备机在keepalived主机宕机的情况会自动接管了资源。但待keepalived主机恢复正常的时候,主机会重新接管资源。
系列目录:
今天周末,沉浸在 k8s
集群部署完成带来的极大满足中开始回顾之前看过的关于 k8s
的各种博客。。。然后,我觉得很有必要补一篇纯手动部署的文章。。。
环境说明:
软件环境说明:
系列目录:
经过几天的部署、熟悉和理解,对 k8s
的概念和结构都有了一定了解。而在实际操作中,我们的服务运行在服务器,通常都会做反向代理和负载均衡,增强灵活性。这篇博客就来实现 k8s
的反向代理和负载均衡。
环境说明:
软件环境说明:
系列目录:
在上一篇博客中,我们的 k8s 集群基本就已经部署完成了。但是为了方便了解 k8s 的各项概念,我们再继续把 k8s 的 Dashboard UI图形化界面 插件搭建起来。
环境说明:
软件环境说明:
系列目录:
接上步骤,我们已经成功初始化了 Master
和 Node01
节点,并将其加入到同一个集群内。但是两个节点目前均是 NotReady
状态,这是因为我们的集群还没有安装网络插件,而 k8s
不自带网络插件。
环境说明:
软件环境说明:
系列目录:
经过一天的捣腾,终于是把 Master
初始化出来了,现在咱们来把 Node
节点孵化出来!
环境说明:
软件环境说明:
这次的重心当然是 Node
节点了。
今天准备把 yum 安装的 Docker 1.13.2 卸载,安装 Docker-CE 17.03.2,于是:
yum remove docker*
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm
wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
开始安装:
[root@localhost ~]# yum install docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
已加载插件:fastestmirror
正在检查 docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm: docker-ce-17.03.2.ce-1.el7.centos.x86_64
docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm 将被安装
正在检查 docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm: docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch
docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm 将被安装
正在解决依赖关系
--> 正在检查事务
---> 软件包 docker-ce.x86_64.0.17.03.2.ce-1.el7.centos 将被 安装
--> 正在处理依赖关系 libltdl.so.7()(64bit),它被软件包 docker-ce-17.03.2.ce-1.el7.centos.x86_64 需要
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
base | 3.6 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/2): extras/7/x86_64/primary_db | 143 kB 00:00:05
(2/2): updates/7/x86_64/primary_db | 1.2 MB 00:00:05
---> 软件包 docker-ce-selinux.noarch.0.17.03.2.ce-1.el7.centos 将被 安装
--> 正在检查事务
---> 软件包 libtool-ltdl.x86_64.0.2.4.2-22.el7_3 将被 安装
--> 处理 docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch 与 docker-selinux 的冲突
没有匹配的可升级软件包:docker-ce-selinux
--> 解决依赖关系完成
错误:docker-ce-selinux conflicts with 2:container-selinux-2.55-1.el7.noarch
您可以尝试添加 --skip-broken 选项来解决该问题
您可以尝试执行:rpm -Va --nofiles --nodigest
竟然报依赖错误,几番尝试之后才从错误信息中找到冲突组件:
错误:docker-ce-selinux conflicts with 2:container-selinux-2.55-1.el7.noarch 也就是:container-selinux-2.55-1.el7.noarch
继续:
rpm -e container-selinux-2.55-1.el7.noarch
yum install docker-ce-17.03.2.ce-1.el7.centos.x86_64.rpm docker-ce-selinux-17.03.2.ce-1.el7.centos.noarch.rpm
解决!
系列目录:
经过一夜的休整,整个人又活力满满呢哈哈!
那么,今天就正式开始搭建 k8s
集群环境。先从 Master
节点开始,了解的朋友应该知道,Master
节点搭建因为要下载 Google
的镜像,对于这么这种只有小水管的用户,压力很大啊!不过今天演示我们不使用小水管,ok,看我骚操作
环境说明:
软件环境说明:
这里依旧使用 Master
机器(这不废话吗)。
系列目录:
搭建k8s集群必然少不了要安装k8s,在CentOS中,一般我们可以设置yum源安装。但是,本着打破砂锅问到底的精神,源码摆在那里,不自己编译需要的版本怎么行!~
环境说明:
软件环境说明:
这里使用 Master
做编译机器。