k8s中篇

5,部署edct

在这里插入图片描述

把三个etcd放到三个服务器root下

解压后生成一文件一目录
在这里插入图片描述

1,
在这里插入图片描述
2,

在这里插入图片描述

在这里插入图片描述

修改配置文件
在这里插入图片描述
这是配置单节点的
在这里插入图片描述
etcd_name:etcd名称
ETCD_DATA_DIR:数据库位置
ETCD_LISTEN_PEER_URLS:用于监听其他edct的
ETCD_LISTEN_CLIENT_URLS:用于监听edct以外的其他如master节点

这是集群
在这里插入图片描述
ETCD_INITIAL_CLUSTER:记录所有edct名称和端口号

3,刚才生成的证书复制到etcd下
在这里插入图片描述

###alias可以看到当前系统下的命令和命令别名
在这里插入图片描述

进行node1,和node2 edct的部署
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

回到node1上操作

在这里插入图片描述
在这里插入图片描述

node2操作
在这里插入图片描述

4,依次启动etcd
在这里插入图片描述

卡在这就对了。。。说明在等待其他edct启动

三个依次使用这个命令后。启动成功

设置永久启动
在这里插入图片描述
可以通过这个命令来检查edct集群。。。是否正常状态

/opt/etcd/bin/etcdctl --ca-file=/opt/etcd/ssl/ca.pem --cert-file=/opt/etcd/ssl/server.pem --key-file=/opt/etcd/ssl/server-key.pem  --endpoints="https://192.168.1.106:2379,https://192.168.1.105:2379,https://192.168.1.107:2379"   cluster-health   

这样算正常edct集群配置成功

在这里插入图片描述

6,部署master

apiserver证书的配置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1,解压缩
生成三个文件,一个目录

在这里插入图片描述

mv kube-apiserver.service kube-controller-manager.service kube-scheduler.service /usr/lib/systemd/system/
mv kubernetes /opt/
cp /root/TLS/k8s/{ca*pem,server.pem,server-key.pem} /opt/kubernetes/ssl/ -rvf

修改conf文件
在这里插入图片描述

修改
在这里插入图片描述
在这里插入图片描述

其他不用改

log-dir=/opt/kubernetes/logs \ 日志文件地址
etcd-servers=https://192.168.1.106:2379,https://192.168.1.105:2379,https://192.168.1.107:2379 \ 所有etcd节点端口
bind-address=192.168.1.106 \ 当前master监听的地址
secure-port=6443 \ 当前监听的端口
advertise-address=192.168.1.106 \ 通告地址
allow-privileged=true \ 是否设置超级管理员权限来创建容器
service-cluster-ip-range=10.0.0.0/24 \ service调度服务生成到的虚拟网络
enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,ResourceQuota,NodeRestriction \ 可以使用的插件
authorization-mode=RBAC,Node \ 授权模式
enable-bootstrap-token-auth=true \ 基于token自动颁发证书
token-auth-file=/opt/kubernetes/cfg/token.csv \ 基于特定用户颁发证书
service-node-port-range=30000-32767 \ service网段暴露的服务端口范围
kubelet-client-certificate=/opt/kubernetes/ssl/server.pem
–kubelet-client-key=/opt/kubernetes/ssl/server-key.pem \ 访问kubelet所使用的证书
tls-cert-file=/opt/kubernetes/ssl/server.pem
–tls-private-key-file=/opt/kubernetes/ssl/server-key.pem
–client-ca-file=/opt/kubernetes/ssl/ca.pem
–service-account-key-file=/opt/kubernetes/ssl/ca-key.pem \ 基于https访问apiserver的时候使用的证书
etcd-cafile=/opt/etcd/ssl/ca.pem
–etcd-certfile=/opt/etcd/ssl/server.pem
–etcd-keyfile=/opt/etcd/ssl/server-key.pem \ 访问etcd所使用的证书
audit-log-maxage=30
–audit-log-maxbackup=3
–audit-log-maxsize=100
–audit-log-path=/opt/kubernetes/logs/k8s-audit.log" 日志相关内容

2,controller-manager配置文件

在这里插入图片描述

allocate-node-cidrs=true \ 是否支持网络插件

不用改

3,schaduler.conf
在这里插入图片描述

也不用改

可以看到这三个文件
在这里插入图片描述
启动master节点
在这里插入图片描述

检测有无启动起来
在这里插入图片描述

也可以查看日志打印是否正确

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查看节点信息

4,配置tls 基于bootstrap自动颁发证书

在这里插入图片描述
在这里插入图片描述
第一个要为true。第二个要对这个路径的文件进行授权
在这里插入图片描述
在这里插入图片描述
对这个

中的这个

进行授权(第一次配错了,我这里换成strap2)

kubectl create clusterrolebinding kubelet-bootstrap2 \
--clusterrole=system:node-bootstrapper \
--user=kubelet-bootstrap2

代表授权成功

在这里插入图片描述

7,安装node节点

docker
在这里插入图片描述

主要三个。。。安装这三个

1,worker node节点安装docker
先在master节点把node的tar包传到两个worker中
在这里插入图片描述

2,解压缩
在这里插入图片描述

3,ls
在这里插入图片描述

4,移动管理脚本
在这里插入图片描述
在这里插入图片描述

5,解压缩docker二进制文件

在这里插入图片描述

6,将docker下的所有文件放到bin下

在这里插入图片描述

7,启动docker
在这里插入图片描述

worker节点的docker版本号跟k8s要对应

kubelet
1,
在这里插入图片描述

在这里插入图片描述

2,修改配置文件
在这里插入图片描述

server这里改成master节点的端口
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

这里是worker节点主机名
在这里插入图片描述

这里不需要改

在这里插入图片描述
这里也不需要改

#####高并发这里要改,kubelet-config.yml文件,
最大打开文件数。 最大承受pod数
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

这里改成当前主机的名称
在这里插入图片描述
在这里插入图片描述

改这里的master的地址

3,从master节点复制证书到worker节点

在这里插入图片描述
在这里插入图片描述

4,启动kubelet和kube-proxy服务

在这里插入图片描述

5,查看启动日志

在这里插入图片描述
在这里插入图片描述
没有明显错误就可以了

6,在master节点为worker节点颁发证书

在这里插入图片描述

把前面那段英文复制下来

在这里插入图片描述
在这里插入图片描述

再看下csr就是已颁发状态

7,颁发完证书后在master节点就可以执行这个命令了
在这里插入图片描述
在这里插入图片描述

出现这个代表成功,worker已加入到master里面了

8,worker2同理

在这里插入图片描述

node节点安装完毕

8,node节点进阶

###########安装网络插件

1,确认启动CNI
在这里插入图片描述
必须是CNI
在这里插入图片描述
在这里插入图片描述

能看到则正常

2,生成两个目录
在这里插入图片描述
3,找到
在这里插入图片描述
离线安装
在这里插入图片描述
4,在master节点上执行yaml脚本文件,实现worker节点网络插件功能
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

用这个命令查看是否下载镜像,启动完容器

再看node1已经变成ready状态了
在这里插入图片描述

node2,如果一直没变ready可以重启node2节点,不是大问题

5,授权apiserver访问kubelet
在这里插入图片描述

到此为止node节点配置好了。但是node2,还是没变ready

在这里插入图片描述

找到原因了,node2没有做第二步操作
在这里插入图片描述

在这里插入图片描述

再回到master

在这里插入图片描述

#####nginx

在这里插入图片描述

或者worker节点下
在这里插入图片描述

先配置加速镜像

在这里插入图片描述
在这里插入图片描述

systemctl restart docker

在这里插入图片描述

worker2
在这里插入图片描述

镜像转变tar包
在这里插入图片描述
保存到当前位置
在这里插入图片描述

放到node1里

在这里插入图片描述

tar包 导入到docker镜像

在这里插入图片描述

启动nginx容器

通过master节点启动docker容器

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这两个命令都可以查看容器有没启动起来

现在容器已经启动了。不知道是工作在worker1还是worker2
在这里插入图片描述
在这里插入图片描述

说明运行在k8s-node1节点上了

在这里插入图片描述

再启动一个nginx容器
在这里插入图片描述
再启动一个
在这里插入图片描述

在这里插入图片描述
看一下newweb和testweb分别运行在哪个节点下

在这里插入图片描述

可以看到1个在node1,一个在node2

2,暴露端口
就是端口映射
在这里插入图片描述

在这里插入图片描述

这时候可能不能直接访问web页面

可以在虚拟机上访问nginx
如果curl命令使用不了
在这里插入图片描述

在这里插入图片描述

####3,web组件

在这里插入图片描述

官方的dashboard,,,安装速度特别慢。。网络不好最好不用
在这里插入图片描述

在这里插入图片描述

等4,5个钟把

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

必须用https来访问

在这里插入图片描述

换浏览器吧

在这里插入图片描述

挺不好用的现在看第三方的
在这里插入图片描述
kuboard

放到worker1的root下
也放到worker2的root下

在这里插入图片描述
还有这个放到master下

1,docker加载tar包
在这里插入图片描述

2,回到master节点
不要立马执行start_kuboard.yaml文件。要修改配置
在这里插入图片描述
你希望kuboard运行在哪个工作节点上?

在这里插入图片描述
在这里插入图片描述

查看是否运行成功
在这里插入图片描述

查看暴露端口

在这里插入图片描述
在这里插入图片描述

生成token的方式

kubectl -n kube-system get secret $(kubectl -n kube-system get secret | grep kuboard-user | awk '{print $1}') -o go-template='{{.data.token}}' | base64 -d

生成token复制的位置

在这里插入图片描述

在这里插入图片描述

进入默认名称空间
在这里插入图片描述

就是刚才创建的那三个docker容器

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值