kubernates 安装

1. 前置要求

  • 硬件条件 三台主机 1主2从
  • 硬件配置 master 2核4G slave 2核2G

2. 安装

  • 访问GitHub 仓库 https://github.com/lework/kainstall

  • 运行以下脚本

      bash -c "$(curl -sSL https://cdn.jsdelivr.net/gh/lework/kainstall@master/kainstall-centos.sh)"  \
    - init \
    --master 192.168.147.128 \
    --worker 192.168.147.132,192.168.147.133 \
    --user root \
    --password 123123 \
    --port 22 \
    --version 1.20.6

    经过漫长的等待 ,会有提示信息,然后输入k8s的管理命令确认kubectl cluster-info是否运行正常,如果不成功,查看下面的日志文件进行排坑

    ...
    xzO3coGy8vsFtAkZHLsTiFAWzjYZXKIZZx-cxaZvpYfzO-uNPa3UcFL2aKiqNS0Hr-kjHhFhcMxxH-yWuwodZYn4qzeI1ZIV_-Cg1wte1s3Covb15g
    [ops] etcd backup directory: /var/lib/etcd/backups See detailed log >>> /tmp/kainstall.t2964vNRW6/kainstall.log

3. 安装dashboard

    1. 前往github https://github.com/kubernetes/dashboard,找到下载说明

    2. 下载

      kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.3.1/aio/deploy/recommended.yaml
    3. 查看dashboard是否运行kubectl get pod --namespace=kube-system,如下日志信息

      NAME                                       READY   STATUS      RESTARTS   AGE
      coredns-8496bbfb78-7l9gs 1/1 Running 1 118m
      coredns-8496bbfb78-r87cr 1/1 Running 1 118m
      default-http-backend-6946487d9b-rshx5 1/1 Running 1 119m
      etcd-k8s-master-node1 1/1 Running 1 122m
      etcd-snapshot-1625813807-5s5xf 0/1 Completed 0 118m
      kube-apiserver-k8s-master-node1 1/1 Running 1 122m
      kube-controller-manager-k8s-master-node1 1/1 Running 1 122m
      kube-flannel-ds-9pg5p 1/1 Running 1 121m
      kube-flannel-ds-whbxz 1/1 Running 1 121m
      kube-flannel-ds-xxggv 1/1 Running 1 121m
      kube-proxy-cpnnx 1/1 Running 1 121m
      kube-proxy-fv62v 1/1 Running 1 121m
      kube-proxy-t29xk 1/1 Running 1 121m
      kube-scheduler-k8s-master-node1 1/1 Running 1 122m
      metrics-server-998c79b89-qzsmj 0/1 Running 1 120m
    4. 启动代理kubectl proxy

    5. 在本地进行ssh正向代理,记得配置免密

      ssh -L localhost:8001:localhost:8001 -NT root@192.168.147.128
    6. 访问网页出现如下内容,说明服务启动完成

4. 创建dashboard用户

  1. 创建用户

    kubectl create serviceaccount dashboard-admin -n kube-system
  2. 授权 (绑定用户为集群管理用户)

    kubectl create clusterrolebinding dashboard-cluster-admin --clusterrole=cluster-admin --serviceaccount=kube-system:dashboard-admin
  3. 查看token

    kubectl describe -n=kube-system  secret dashboard-admin-token-qqrjx
    • 详细信息,复制token
    Name:         dashboard-admin-token-qqrjx
    Namespace: kube-system
    Labels: <none>
    Annotations: kubernetes.io/service-account.name: dashboard-admin
    kubernetes.io/service-account.uid: e3b577a7-fd60-4705-bfe9-df87d88b97f5 Type: kubernetes.io/service-account-token
    Data
    ====
    ca.crt: 1066 bytes
    namespace: 11 bytes
    token: eyJhbGciOiJSUzI1NiIsImtpZCI6InhiLTVQTjBLVHRkd24zNkd5QWVXWXNZaUI0M0FyVkZBNWI4S0pXRWZta2MifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJrdWJlLXN5c3RlbSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJkYXNoYm9hcmQtYWRtaW4tdG9rZW4tcXFyangiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoiZGFzaGJvYXJkLWFkbWluIiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiZTNiNTc3YTctZmQ2MC00NzA1LWJmZTktZGY4N2Q4OGI5N2Y1Iiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50Omt1YmUtc3lzdGVtOmRhc2hib2FyZC1hZG1pbiJ9.IrVjifmz2Ka0utLv17jKxdtGXG2A6XvmqIO9tcLwTSmYcsnnsUYdKDV-nKzQt7RZZmsbdangCxHOSFNN-bFVyzltHgmnCji4ViJgsgG1ATw7GAAoZBcydm-1sf9XUoQvvXJ7pX-sthpXbPjAItzfoNw5I6Re4DniuhAqsMxjqiOCkreFhV-vc0uww88InPlrfuvYesonj_L0hJnrZJOZbJ7r1QPrery3x9PfGP7F19OMTUfe_iPIu_GFhED8u6aN8OR_uhDSE_EII1zQuLWYV6ksuaxG5s-RNfmJqLfG-HnEwJheJZ_63ceA-j4N4imZ_nNozUAC732ec4_MGIYgLA

5. 总结

  1. k8s的部署难度真不是一般的高,踩坑挺多的
  2. 感谢有一键部署工具,少了很多弯路,前期调研部署工具花了较多时间,官方提供的ansible playbook 安装 会遇到网络问题。
  3. master节点一定要4g内存,之前用2g内存会挂掉

6.参考资料

  1. https://github.com/kubernetes/dashboard

  2. https://kubernetes.io/zh/docs/tasks/access-application-cluster/web-ui-dashboard/

  3. https://github.com/kubernetes/dashboard

kubernates 1.20.6安装的更多相关文章

  1. mysql 5.6.20的安装、配置服务、设置编码格式

    一.安装 安装环境        系统:Window 32        版本:Mysql 5.6.20 1. 首先从官网上http://dev.mysql.com/downloads/mysql/ ...

  2. hadoop-0.20.2安装配置

    该环境在Vmware Workstation 12 上安装配置一共三台机器master,slave1,slave2. 操作系统:Cenos 7.0 hadoop 版本:hadoop-0.20.2,版本 ...

  3. [转帖]MySQL5.7.20编译安装

    MySQL5.7.20编译安装 尝试一下 想着 我在arm上面最终安装失败了. https://www.cnblogs.com/shengdimaya/p/8027507.html 1:官网下载sou ...

  4. Ubuntu 20.04安装Docker

    Docker学习系列文章 入门必备:十本你不容错过的Docker入门到精通书籍推荐 day1.全面的Docker快速入门教程 day2.CentOS 8.4安装Docker day3.Windows1 ...

  5. Fedora 20下安装官方JDK替换OpenJDK并配置环境变量

    Fedora 20自带OpenJDK,所以如果安装官方的JDK的话要先删除OpenJDK,步骤如下: 1:rpm -qa|grep jdk 查看当前的jdk情况. 2:yum -y remove ja ...

  6. Fedora 20 Gnome安装及配置记录

    下载了F20的Gnome版,原先安装的是19KDE的,原因是昨晚看书,觉得电脑开着也没什么事情,倒不如看看能不能升级或下载点东西 原先是KDE的界面,所以打算换换风格,使用下Gnome,不过更换过程总 ...

  7. 安装MYSql Windows7下MySQL5.5.20免安装版的配置

    MySQL Windows安装包说明: 1.mysql-5.5.20-win32.msi:Windows 安装包,图形化的下一步下一步的安装. 2.mysql-5.5.20.zip,这个是window ...

  8. Mapnik 3.0.20编译安装

    1. 确定epel安装 yum install -y epel-release 2. 按照<CentOS7.2部署node-mapnik>一文中的步骤,手动安装 gcc-6.2.0 和 b ...

  9. Cassandra V2.1.20单机安装

    1. 系统调优 [root@sht-sgmhadoopcm- ~]# echo "vm.max_map_count=131072" >> /etc/sysctl.con ...

随机推荐

  1. Swagger的学习

    Swagger 号称世界上最流行的Api框架; RestFul Api文档在线自动生成工具=>Api文档与API定义同步更新 直接运行,可以在线测试API接口 支持多种语言:(Java,Php. ...

  2. [leetcode] 46. 全排列(Java)

    46. 全排列 这题我们可以借用31. 下一个排列写的nextPermutation函数来做,稍微改造一下即可 注意要先给nums排个序 class Solution { // 当没有下一个排列时re ...

  3. python 获取当天和前几天时间数据

    python 获取当天和前几天时间数据 import datetime from datetime import datetime, date, timedelta def dayDateRange( ...

  4. 桥接PyTorch和TVM

    桥接PyTorch和TVM 人工智能最引人入胜的一些应用是自然语言处理.像BERT或GPT-2之类的模型及其变体,可以获住足够多的文本信息. 这些模型属于称为Transformers的神经网络类体系结 ...

  5. 人工智能训练云燧T10

    人工智能训练云燧T10 基于邃思芯片打造的面向云端数据中心的人工智能训练加速产品,具有高性能.通用性强.生态开放等优势,可广泛应用于互联网.金融.教育.医疗.工业及政务等人工智能训练场景. 超强算力 ...

  6. 使用CUDA Warp-Level级原语

    使用CUDA Warp-Level级原语 NVIDIA GPU以SIMT(单指令,多线程)的方式执行称为warps 的线程组.许多CUDA程序通过利用warp执行来实现高性能.本文将展示如何使用cud ...

  7. Minecraft类游戏地形生成机制

    目录 前言 生成地形高度 生成生物群落 模拟雨水侵蚀.生成河流(未完) 生成洞穴.裂谷 生成植被 放置树木(Bezier曲线) 生成建筑 生成发展域(元胞自动机模型) 放置建筑(DFS) 连接道路(A ...

  8. 单点突破:MySQL之日志

    前言 开发环境:MySQL5.7.31 日志是 mysql 数据库的重要组成部分,记录着数据库运行期间各种状态信息.若数据库发生故障,可通过不同日志记录恢复数据库的原来数据.因此实际上日志系统直接决定 ...

  9. [源码解析] 深度学习分布式训练框架 horovod (3) --- Horovodrun背后做了什么

    [源码解析] 深度学习分布式训练框架 horovod (3) --- Horovodrun背后做了什么 目录 [源码解析] 深度学习分布式训练框架 horovod (3) --- Horovodrun ...

  10. 既然有 HTTP 请求,为什么还要用 RPC 调用?

    首先,实名赞扬题主的问题.这个问题非常好. 其次,实名反对各个上来就讲RPC好而HTTP不好的答案.因为,题主的观点非常对. HTTP协议,以其中的Restful规范为代表,其优势很大.它可读性好,且 ...