IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> RKE方式安装k8s集群和Dashboard -> 正文阅读

[游戏开发]RKE方式安装k8s集群和Dashboard

前言

需要在电脑上安装好VirtualBox和Vagrant

构建3台虚拟机

1、编写Vagrantfile文件

内容如下:

Vagrant.configure("2") do |config|
  config.vm.box_check_update = false
  config.vm.provider 'virtualbox' do |vb|
  vb.customize [ "guestproperty", "set", :id, "/VirtualBox/GuestAdd/VBoxService/--timesync-set-threshold", 1000 ]
  end  
  $num_instances = 3
  # curl https://discovery.etcd.io/new?size=3
  (1..$num_instances).each do |i|
    config.vm.define "node#{i}" do |node|
      node.vm.box = "centos/7"
      node.vm.hostname = "node#{i}"
      ip = "172.17.8.#{i+100}"
      node.vm.network "private_network", ip: ip
      node.vm.provider "virtualbox" do |vb|
        vb.memory = "8192"
        if i==1 then
            vb.cpus = 2
        else
            vb.cpus = 1
        end
        vb.name = "node#{i}"
      end
    end
  end
end

2、启动3台虚拟机

在Vagrantfile文件所在目录的控制台下执行命令:

vagrant up

等待完成,完成后,在VirtualBox主页:

在这里插入图片描述

虚拟机配置用户名密码ssh连接

3台虚拟机都需要安装

配置参考:windows下VirtualBox和vagrant组合安装centos 中的“用户名密码ssh”

虚拟机docker安装

3台虚拟机都需要安装

安装教程:docker安装教程

安装 Kubernetes 命令行工具 kubectl

3台虚拟机都需要安装

执行命令:

yum install wget
wget https://dl.k8s.io/release/v1.24.0/bin/linux/amd64/kubectl && chmod +x kubectl && cp kubectl /usr/bin/

如果报错:curl: (1) Protocol “https not supported or disabled in libcurl

安装RKE命令行工具

只有主节点做即可

wget https://rancher-mirror.rancher.cn/rke/v1.3.10/rke_linux-amd64 && mv rke_linux-amd64 rke && chmod +x rke && ./rke --version && cp rke /usr/bin/

进行机器配置

adduser rke -G docker

1、禁用 SELinux

vi /etc/selinux/config

将第七行SELINUX=enforcing改为SELINUX=disabled
在这里插入图片描述

2、禁用 swap

vi /etc/fstab

使用 # 注释掉有 swap 的一行

在这里插入图片描述

3、关闭防火墙

systemctl stop firewalld.service
systemctl disable firewalld.service

4、重启查看效果

reboot
/usr/sbin/sestatus -v
free -h

在这里插入图片描述

5、设置用户

CentOS7不能使用root用户安装

添加用户:

adduser rke -G docker

给新添加的用户设置密码:

passwd rke

中途需要输入2次密码
在这里插入图片描述

确认新用户是否有权限:

su rke
docker ps -a

在这里插入图片描述

6、设置SSH

这个地方要给全部的机器配置ssh(包括自己)注意在新用户下操作:

ssh-keygen
ssh-copy-id rke@172.17.8.101
ssh-copy-id rke@172.17.8.102
ssh-copy-id rke@172.17.8.103

第一个红框位置输入yes,第二个红框位置输入密码

在这里插入图片描述

编辑rke.yaml

仅在主节点,在新用户下操作

vi rke.yaml

rke.yaml内容(里面的IP换成各自的IP哦):

nodes:
  - address: 172.17.8.101
    user: rke
    role: [controlplane, worker, etcd]
  - address: 172.17.8.102
    user: rke
    role: [controlplane, worker, etcd]
  - address: 172.17.8.103
    user: rke
    role: [worker]

services:
  etcd:
    snapshot: true
    creation: 6h
    retention: 24h

# 当使用外部 TLS 终止,并且使用 ingress-nginx v0.22或以上版本时,必须。
ingress:
  provider: nginx
  options:
    use-forwarded-headers: “true”
ded-headers: “true”

安装集群

也是在新用户下操作:

rke up --config rke.yaml

这步执行时间较长,多等一会,需要下载很多镜像~~~~

运行完成后执行 :

mkdir ~/.kube && mv kube_config_rke.yaml ~/.kube/config

最后,执行下面的命令确认集群安装完成

kubectl get node

安装kubernetes Dashboard

依然是在新用户下:

切换到~目录下

1、获取dashboard的yaml文件

wget https://raw.githubusercontent.com/kubernetes/dashboard/v2.0.4/aio/deploy/recommended.yaml

2、修改文件

修改service部分,默认service是ClusterIP类型,这里改称NodePort类型,是集群外部能否访问

下面标红框的地方为新增加的:
在这里插入图片描述

3、执行yaml文件

kubectl apply -f recommended.yaml

4、查看服务状态

kubectl get all -n kubernetes-dashboard

下面红框的可以看出服务已经运行了

在这里插入图片描述

5、接下来浏览器访问

IP:30010,端口就是你在第二步中添加的,输入网址后,点击高级继续访问就出现下面的页面了

在这里插入图片描述

6、创建登录用户信息

创建文件admin-role.yaml,内容如下:

kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: admin
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
roleRef:
  kind: ClusterRole
  name: cluster-admin
  apiGroup: rbac.authorization.k8s.io
subjects:
- kind: ServiceAccount
  name: admin
  namespace: kube-system
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: admin
  namespace: kube-system
  labels:
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile

将其执行到集群中:

kubectl apply -f admin-role.yaml

7、获取token

查看kubernetes-dashboard下面的secret

kubectl -n kube-system get secret | grep admin-token

在这里插入图片描述

在执行下面的命令:

kubectl describe secret 红框的名字 -n kubernetes-dashboard

红框内就是token
在这里插入图片描述

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-05-06 11:17:25  更:2022-05-06 11:18:14 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 11:36:30-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码