Docker + k8s 的搭建部署 学习文档

docker+k8s在这里插入图片描述

Docker是一个开源的应用容器引擎,使用Go语言开发,

基于Linux内核的cgroup,namespace,Union FS等技术,对应用进程进行封装隔离,并且独立于宿主机与其他进程。Docker理念是将应用及依赖包打包到一个可移植的容器中,可发布到任意Linux发行版Docker引擎上。

使用沙箱机制运行程序,程序之间相互隔离。

Docker技术已经成为开发、运维职位必备的专业技能之一,非常有必要深入学习下,我这里整理了一下我搭建docker和k8s思路供大家参考一下。

首先说一下我们的实验环境:
docker 私有仓库主机 192.168.1.100
k8s 管理主机 192.168.1.10
docker node节点1 192.168.1.11
docker node节点2 192.168.1.12
docker node节点3 192.168.1.13

部署docker私有仓库和docker

[root@register ~] # yum -y install docker-distribution //部署仓库
[root@register ~] # yum -y install docker

[root@node1 ~] # yum -y install docker //部署node节点
[root@node2 ~] # yum -y install docker //部署node节点
[root@node3 ~] # yum -y install docker //部署node节点

修改三台node节点的配置文件(三台都需要做,我只举例一台)
vim /etc/sysconfig/docker
13 ADD_REGISTRY=’–add-registry registry:5000’ //指定私有仓库主机
24 INSECURE_REGISTRY=’–insecure-registry registry:5000’

systemctl enable --now docker //启动docker 并设置开机自起

上传镜像
[root@register ~] # docker load -i centos.tar
[root@register ~] # docker load -i kubernetes-dashboard.tar
[root@register ~] # docker load -i pod-infrastructure.tar

验证结果
curl http://192.168.1.100:5000/v2/_catalog

配置 k8s主机
yum -y install kubernetes-master.x86_64 kubernetes-client.x86_64 etcd //安装软件包

修改配置文件
vim /etc/etcd/etcd.conf
6: ETCD_LISTEN_CLIENT_URLS=“http://192.168.1.10:2379”

vim /etc/kubernetes/config
22: KUBE_MASTER="–master=http://192.168.1.10:8080"

vim /etc/kubernetes/apiserver
8: KUBE_API_ADDRESS="–insecure-bind-address=0.0.0.0"
17: KUBE_ETCD_SERVERS="–etcd-servers=http://192.168.1.10:2379"
23: 删除 ServiceAccount 参数

启动服务
systemctl start etcd kube-apiserver.service kube-scheduler.service kube-controller-manager.service

开机自启
systemctl enable etcd kube-apiserver.service kube-scheduler.service kube-controller-manager.service

查看服务启动状态
systemctl status etcd kube-apiserver.service kube-scheduler.service kube-controller-manager.service

在三台node主机上部署配置 k8s - minion
yum -y install kubernetes-node.x86_64 //安装软件包

修改配置文件
vim /etc/sysconfig/docker
4: 添加参数 --insecure-registry=192.168.1.100:5000 --add-registry 192.168.1.100:5000

vim /etc/kubernetes/config
22: KUBE_MASTER="–master=http://192.168.1.10:8080"

vim /etc/kubernetes/kubelet
5: KUBELET_ADDRESS="–address=0.0.0.0"
11: KUBELET_HOSTNAME="–hostname-override=本机名称"
14: 添加 --kubeconfig=/etc/kubernetes/kubelet.kubeconfig
–pod-infra-container-image=pod-infrastructure:latest

编写yaml文件
vim /etc/kubernetes/kubelet.kubeconfig
apiVersion: v1
kind: Config
clusters:

  • cluster:
    server: http://192.168.1.10:8080 ###Master的IP,即自身IP
    name: local
    contexts:
  • context:
    cluster: local
    name: local
    current-context: local

启动k8s
systemctl start kubelet.service kube-proxy.service

开机自启
systemctl enable kubelet.service kube-proxy.service

发布了14 篇原创文章 · 获赞 8 · 访问量 1055

猜你喜欢

转载自blog.csdn.net/weixin_46033563/article/details/103637572
今日推荐