安装docker-v19.03.11 安装k8S-V1.18.1

简介: 安装docker-v19.03.11 安装k8S-V1.18.1

环境两台虚拟机

192.168.42.165

master

192.168.42.164

node1

修改主机名

1 修改主机名
2 master虚拟机
3 hostnamectl set-hostname master
4 node1虚拟机
5 hostnamectl set-hostname node1虚拟机
6 #两台机器都要执行
7 1.关闭防火墙
8 systemctl stop firewalld.service 关闭防火墙
9 systemctl disable firewalld.service 关闭防火墙开机自启
10 2.关闭selinux
11 setenforce 0
12 vi /etc/selinux/config
13 SELINUX=后面改成 disabled
14 3.设置华为的docker源
wget -O /etc/yum.repos.d/docker-ce.repo https://repo.huaweicloud.com/docker￾ce/linux/centos/docker-ce.repo
15
sudo sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+'
/etc/yum.repos.d/docker-ce.repo
16
17 sudo yum makecache fast
18 4.安装docker-ce docker-ce-cli
19 yum install -y docker-ce-19.03.11 docker-ce-cli-19.03.11
20 5.启动docker设置开机自启并查看docker版本
21 systemctl enable docker --now
22 docker --version
23 6.设置华为k8s源
24 cat <<EOF > /etc/yum.repos.d/kubernetes.repo 
25 [kubernetes]
26 name=Kubernetes 
27 baseurl=https://repo.huaweicloud.com/kubernetes/yum/repos/kubernetes-el7-x86_64
28 enabled=1
29 gpgcheck=1
30 repo_gpgcheck=0
31 gpgkey=https://repo.huaweicloud.com/kubernetes/yum/doc/yum-key.gpg
https://repo.huaweicloud.com/kubernetes/yum/doc/rpm-package-key.gpg 
32 EOF
33 yum clean all
34 yum makecache fast
35 7.更新yum源
36 yum -y update
37 8.安装所需的软件包
38 yum install epel* -y
39 yum -y install yum-utilsdevice-mapper-persistent-data lvm2
40 9.安装基础软件包
41 yum -y install wget net-tools nfs-utils lrzsz gcc gcc-c++make cmake libxml2-devel
openssl-devel curl curl-devel unzip sudo ntplibaio-devel wget vim ncurses-devel
autoconf automake zlib-devel python-devel epel-release openssh-serversocat ipvsadm
conntrack ntpdate
42 10.关闭交换分区
43 swapoff -a
44 #永久禁用,打开/etc/fstab注释掉swap那一行。
45 11.修改内核参数
46 cat <<EOF > /etc/sysctl.d/k8s.conf
47 net.bridge.bridge-nf-call-ip6tables = 1
48 net.bridge.bridge-nf-call-iptables = 1
49 EOF
50 sysctl --system
51 12.配置hosts文件
52 192.168.42.165 master
53 192.168.42.164 node1
54 13.配置master到node1免密登录
55 在master上操作
56 ssh-keygen -t rsa #一直按回车
57 cd /root && ssh-copy-id -i .ssh/id_rsa.pub root@node1
58 14.安装kubernetes1.18.1
59 yum install kubeadm-1.18.1 kubelet-1.18.1 -y
60 systemctl enable kubelet
61 15.初始化k8s集群
62 kubeadm init --apiserver-advertise-address=192.168.30.128
63 --image-repository
64 registry.aliyuncs.com/google_containers --kubernetes-version
65 v1.18.1 --service-cidr=10.96.0.0/12
66 --pod-network-cidr=10.244.0.0/16
67 mkdir -p $HOME/.kube
68 cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
69 chown $(id -u):$(id -g) $HOME/.kube/config
70 kubectl get nodes
71 [root@master ~]# kubectl get nodes
72 NAME STATUS ROLES AGE VERSION
73 master NotReady master 106m v1.18.1
74 [root@master ~]# kubeadm token generate
75 cgbo1c.hfnvut9rkh89iq81 记住这个把下面token 后面的换成这个
76 [root@master ~]# kubeadm token create cgbo1c.hfnvut9rkh89iq81 --print-join-command --
ttl=0
77 W0930 19:19:52.461302 10455 configset.go:202] WARNING: kubeadm cannot validate
component configs for API groups [kubelet.config.k8s.io kubeproxy.config.k8s.io]
78 kubeadm join 192.168.42.165:6443 --token cgbo1c.hfnvut9rkh89iq81 --discovery-token￾ca-cert-hash sha256:6afe10ddbde08d927f08c7c7e64efe5f10bb80ae291a0d9313a0692a04d4b363
79 #记住上面最后输出的命令在node1点执行
80 #node1执行
81 kubeadm join 192.168.42.165:6443 --token cgbo1c.hfnvut9rkh89iq81 --discovery-token￾ca-cert-hash sha256:6afe10ddbde08d927f08c7c7e64efe5f10bb80ae291a0d9313a0692a04d4b363
82 kubectl label node node1(节点名称) node-role.kubernetes.io/worker=worker
83 #然后master 输入 kubectl get nodes
84 [root@master ~]# kubectl get nodes
85 NAME STATUS ROLES AGE VERSION
86 master Ready master 135m v1.18.1
87 node1 Ready worker 60m v1.18.1
88
89 #创建一个命名空间为Nginx-web
90 [root@master ~]# kubectl create namespace nginx-web #nginx-web空间名字
91 namespace/nginx-web created
92
93 #运行pod
94 kubectl run nginx-pod -n nginx-web --image=nginx --port=80
95
96 -n命名空间
97 --image 指定的镜像
98 --port 暴露的端口
99
100 kubectl expose pod nginx-pod -n nginx-web --port=80 --type=ClusterIP --target-port=80
--name=nginx-server
101
102 --port=80 指定端口
103 --target-port=80 目标端口
104 --name=nginx-server 新创建的service名字
105 -n 指定要加入的命名空间
106
107 kind 允许您指定要定义的 Kubernetes 对象的类型
108
109 #创建hostpath卷
110 [root@master ~]# cat hostpath.yaml 
111 apiVersion: v1
112 kind: Pod
113 metadata:
114 name: test-pd #pod名字
115 spec:
116 containers:
117 - images: nginx #镜像
118 name: test-container #容器名字
119 volumeMounts:
120 - mountPath: /test #容器内部路径
121 name: test-volume
122 volumes:
123 - name: test-volume
124 hostPath:
125 path: /data 宿主机目录
126 type: DirectoryOrCreate
127
128
129 #创建nfs持久卷
130 master搭建nfs
131
132 node1挂载
133
134 [root@master ~]# cat nfs.yaml 
135 apiVersion: v1
136 kind: Pod
137 metadata:
138 name: test-nfs
139 spec:
140 containers:
141 - image: nginx
142 name: test-container
143 volumeMounts:
144 - mountPath: /testxiaole #容器内路径
145 name: test-volume
146 volumes:
147 - name: test-volume
148 nfs:
149 server: 192.168.30.128 #服务器地址
150 path: /opt/xiaole #容器外路径
151
152 yaml编排创建命名空间 web
153 [root@master ~]# cat createweb.yaml 
154 apiVersion: v1
155 kind: Namespace
156 metadata:
157 name: web
158


相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
11天前
|
缓存 Ubuntu Linux
Docker Buildx 简介与安装指南
Docker Buildx 是一个强大的工具,提供了多架构构建、并行构建和高级缓存管理等功能。通过正确安装和配置 Buildx,可以显著提升 Docker 镜像的构建效率和灵活性。希望本文能帮助你更好地理解和使用 Docker Buildx,以提高开发和部署的效率。
127 16
|
8天前
|
存储 虚拟化 Docker
Docker Desktop 4.38 安装与配置全流程指南(Windows平台)
Docker Desktop 是容器化应用开发与部署的一体化工具,支持本地创建、管理和运行 Docker 容器。4.38 版本新增 GPU 加速、WSL 2 性能优化和 Kubernetes 1.28 集群管理功能,适用于微服务开发和 CI/CD 流水线搭建。安装要求为 Windows 10 2004 及以上(64 位),需启用 Hyper-V 或 WSL 2。硬件最低配置为 4GB 内存、20GB 存储和虚拟化技术支持的 CPU。安装步骤包括启用系统功能、下载并运行安装程序,完成后配置镜像加速并验证功能。常见问题涵盖 WSL 2 安装不完整、磁盘空间清理及容器外网访问等。
805 12
|
1月前
|
关系型数据库 MySQL 数据库
Docker Compose V2 安装常用数据库MySQL+Mongo
以上内容涵盖了使用 Docker Compose 安装和管理 MySQL 和 MongoDB 的详细步骤,希望对您有所帮助。
175 42
|
7天前
|
人工智能 运维 Kubernetes
2025 超详细!Lens Kubernetes IDE 多平台下载安装与集群管理教程
Lens 是一款企业级 Kubernetes 可视化操作平台,2025版实现了三大技术革新:AI智能运维(异常检测准确率98.7%)、多云联邦管理(支持50+集群)和实时3D拓扑展示。本文介绍其安装环境、配置流程、核心功能及高阶技巧,帮助用户快速上手并解决常见问题。适用于 Windows、macOS 和 Ubuntu 系统,需满足最低配置要求并前置依赖组件如 kubectl 和 Helm。通过 Global Cluster Hub 实现多集群管理,AI辅助故障诊断提升运维效率,自定义监控看板和插件生态扩展提供更多功能。
|
9天前
|
弹性计算 运维 Ubuntu
在阿里云ECS云服务器上安装、配置及高效使用Docker与Docker Compose
本文介绍了在阿里云ECS上使用Ubuntu系统安装和配置Docker及Docker Compose的详细步骤。通过这些工具,可以快速部署、弹性扩展和高效管理容器化应用,满足开发和运维需求。内容涵盖Docker的安装、镜像源配置、创建Web程序镜像以及使用Docker Compose部署WordPress等实际操作,并分享了使用体验,展示了阿里云实例的高性能和稳定性。
158 4
|
1月前
|
监控 Linux PHP
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
【02】客户端服务端C语言-go语言-web端PHP语言整合内容发布-优雅草网络设备监控系统-2月12日优雅草简化Centos stream8安装zabbix7教程-本搭建教程非docker搭建教程-优雅草solution
81 20
|
1月前
|
Linux Docker 容器
安装docker-18.06报错Error: libseccomp conflicts with docker-18.06
通过这些步骤,您可以成功在CentOS上安装Docker 18.06,并解决libseccomp的冲突问题。这些方法确保系统兼容性,并保证Docker的正常运行。
69 27
|
1月前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
354 15
|
2天前
|
Ubuntu Linux Docker
如何在Ubuntu 20.04系统中安装Docker
安装 Docker 引擎的步骤如下:首先更新系统包索引 (`sudo apt update`),安装必要依赖包 (`apt-transport-https` 等),添加 Docker 官方 GPG 密钥及 APT 仓库。接着再次更新包索引并安装 Docker 引擎及相关工具 (`docker-ce` 等)。最后启动 Docker 服务并设置开机自启,通过 `docker --version` 和运行测试容器 (`sudo docker run hello-world`) 验证安装是否成功。
29 0
|
1月前
|
消息中间件 Kafka Docker
docker compose 安装 kafka
通过本文的步骤,您可以快速在本地使用 Docker Compose 安装并配置 Kafka 和 Zookeeper。Docker Compose 简化了多容器应用的管理,方便快速搭建和测试分布式系统。
95 2