相关软件 

1、kubeadm

安装步骤 

apt-get update

  

1、禁用所有交换分区

swapoff -a

/etc/fstab

可以用free命令查看禁用情况

root@gpu-10-0-1-24:~# freetotal        used        free      shared  buff/cache   available
Mem:      528016312     6131652   343432968     6595072   178451692   512492696
Swap:             0           0           0

2、关闭防火墙

systemctl stop firewalld
systemctl disable firewalld

3、禁用SELinux 

setenforce 0

安装网络插件flannel

  

kubeadm init --pod-network-cidr=10.244.0.0/16 --apiserver-advertise-address=10.0.1.18 --kubernetes-version=v1.11.1 --ignore-preflight-errors=all //--skip-preflight-checks选项已经弃用

  

报错

[preflight] Activating the kubelet service
failure loading ca certificate: couldn't load the private key file /etc/kubernetes/pki/ca.key: open /etc/kubernetes/pki/ca.key: no such file or directory

把自定义pki密钥拷到对应目录下。

sudo: unable to resolve host gpu-10-0-1-18

在/etc/hosts文件中加上主机名映射。

getenforce

添加node节点

kubeadm join 10.0.0.39:6443 --token 4g0p8w.w5p29ukwvitim2ti
--discovery-token-ca-cert-hash sha256:21d0adbfcb409dca97e655641573b2ee51c
77a212f194e20a307cb459e5f77c8

kubeadm token list

kubeadm token create --print-join-command

apt-get update && apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat <<EOF >/etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
apt-get update
apt-get install -y kubelet kubeadm kubectl
apt-mark hold kubelet kubeadm kubectl

  

新加的节点,get nodes的ROLES为<none>

kubectl get pods -n kube-system | grep flannel

  

kubectl get pods -n kube-system -o wide | grep gpu-10-0-1-24

参考链接

https://tomoyadeng.github.io/blog/2018/10/12/k8s-in-ubuntu18.04/index.html

kubeadm token list empty:

https://www.serverlab.ca/tutorials/containers/kubernetes/how-to-add-workers-to-kubernetes-clusters/

https://stackoverflow.com/questions/51380934/unable-to-connect-worker-node-to-kubernetes-cluster

https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/install-kubeadm/

join显示成功,但是get nodes没有:

https://github.com/kubernetes/kubernetes/issues/61224

The connection to the server localhost:8080 was refused - did you specify the right host or port?

https://www.jianshu.com/p/6fa06b9bbf6a

Attempting to reclaim ephemeral-storage

ImagePullBackOff

kubectl -n kube-system logs kube-flannel-ds-jpp96 -c install-cni

node ready并不代表网络插件flannel通了。

flannel也是在镜像中启动的。

k8s可以有多个master节点。

给节点添加role标签

kubectl label node k8s-node1 node-role.kubernetes.io/worker=worker

systemctl restart kubelet会触发联网拉镜像

root@cpu-10-0-3-9:~# ks init xps-kubeflow
INFO Using context "kubernetes-admin@kubernetes" from kubeconfig file "/root/.kube/config"
INFO Creating environment "default" with namespace "default", pointing to "version:v1.8.0" cluster at address "https://10.0.3.9:6443"
INFO Generating ksonnet-lib data at path '/root/xps-kubeflow/lib/ksonnet-lib/v1.8.0'

root@cpu-10-0-3-9:~/xps-k8s# kubectl create -f xps_crd.yaml
customresourcedefinition.apiextensions.k8s.io/xps.tencent.com created

  

kubectl get crd

  

Pod sandbox changed, it will be killed and re-created.

  

docker run --security-opt=no-new-privileges --cap-drop=ALL --network=none -it -v /var/lib/kubelet/device-plugins:/var/lib/kubelet/device-plugins nvidia/k8s-device-plugin:1.11

  

emptydir只在pod范围内共享 所以只要保证一个pod一个容器就行

k8s默认不会调度到master节点上

kubectl taint nodes --all node-role.kubernetes.io/master-

  

查看所有mxjobs

kubectl get mxjobs.kubeflow.org

  

分配pod到node:

https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#affinity-and-anti-affinity

转载于:https://www.cnblogs.com/yangwenhuan/p/11484859.html

Ubuntu 16.04的k8s安装配置相关推荐

  1. ubuntu 16.04 tightvncserver VNC 安装配置,安装xrdp,x11vnc、Ubuntu 18.04

    ubuntu 安装 VNC 1,ubuntu 安装 VNC 2,VNC配置 3,macOS VNC Viewer 安装 4,安装xrdp 5,macOS 使用Microsoft Remote Desk ...

  2. ubuntu安装pr_在Ubuntu 16.04服务器上安装Zabbix 3.2

    监控服务器 - 什么是Zabbix Zabbix是企业级开源分布式监控服务器解决方案. 该软件监控网络的不同参数和服务器的完整性,还允许为任何事件配置基于电子邮件的警报. Zabbix根据存储在数据库 ...

  3. 在linux搭建wiki教程,在Ubuntu 16.04系统上安装WikkaWiki

    一.WikkaWiki介绍 WikkaWiki是一个灵活的.兼容标准的.轻量级的.平台独立的开源Wiki引擎,它使用PHP语言开发,后端存储采用了MySQL数据库.WikkaWiki的设计目标是速度快 ...

  4. Ubuntu 16.04 一系列软件安装命令,包括QQ、搜狗

    2019独角兽企业重金招聘Python工程师标准>>> Ubuntu 16.04 一系列软件安装命令,包括QQ.搜狗.Chrome.vlc.网易云音乐安装方法 2016年07月20日 ...

  5. VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面,直接使用自带远程工具)----本人亲测可用

    原文地址::VNC实现Windows远程访问Ubuntu 16.04(无需安装第三方桌面,直接使用自带远程工具)-蒲公英云 相关文章 1.VNC实现Windows远程访问Ubuntu 16.04(无需 ...

  6. 【转】Ubuntu 16.04 Nvidia驱动安装(run方式)

    转自:Ubuntu 16.04 Nvidia驱动安装(run方式)_lihe的博客-CSDN博客 1.下载驱动程序 Nvidia驱动下载 https://www.geforce.cn/drivers/ ...

  7. linux加protobuf变量环境,protobuf简单介绍和ubuntu 16.04环境下安装教程

    protobuf简单介绍 protobuf是谷歌的开源序列化协议框架,结构类似于XML,JSON这种,显著的特点是二进制的,效率高,主要用于通信协议和数据存储等方面,算是一种结构化数据的表示方法. p ...

  8. Linux Ubuntu 16.04 Python matplotlib安装中文字体,黑体,楷体,Times New Roman等,解决中文乱码

    Linux Ubuntu 16.04 Python matplotlib安装中文字体,Times New Roman等 文章目录 Linux Ubuntu 16.04 Python matplotli ...

  9. ubuntu 16.04, conda不能安装、更新包的解决办法

    ubuntu 16.04, conda不能安装.更新包的解决办法 - truth的文章 - 知乎 https://zhuanlan.zhihu.com/p/36188524 昨天打算更新 pytorc ...

  10. ubuntu 16.04 源码安装samba并且配置

    好久没发博客了,毕业季整天玩哈哈哈 最近有需求要在ubuntu 16.04 上搭一个samba服务器,要求用源码 环境: VMware workstation上的ubuntu 16.04   ,   ...

最新文章

  1. StackToQueue
  2. Java设计模式(16)中介模式(Mediator模式)
  3. 23种设计模式C++源码与UML实现--简单工厂模式
  4. 跳一跳201803-1
  5. Organization unit determine log logic enablement
  6. WPF框架教程 | 从0到1:使用Caliburn.Micro(WPF和MVVM)开发简单的计算器
  7. 设一组初始记录关键字序列为(25,50,15,35,80,85,20,40,36,70)进行一趟归并后的结果为
  8. C语言递归算法(二)
  9. MongoDb和LINQ:如何汇总和加入集合
  10. Sharding-JDBC水平分表(环境搭建)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记007
  11. 莫烦Tensorflow教程(1~14)(转)
  12. ssl介绍以及双向认证和单向认证原理
  13. Rabbitmq的安装及集群环境的搭建
  14. 九宫幻方(蓝桥)深搜
  15. 微信小程序:强大的多功能图片处理器
  16. 绿联USB转RS-485/422转换器
  17. gigabyte计算机主板图解,gigabyte主板bios设置方法
  18. 国家统计局拟用大数据预测房价走势
  19. python简单实现排列和组合的计算
  20. 如何让木马克星能在win2003上免费使用

热门文章

  1. 2008服务器文件共享,2008服务器文件共享
  2. 计算机/程序员常用英语(持续添加,包括一些简写)
  3. jira 6.X或confluence5.X linux/centos/ubuntu下设置开启启动
  4. UPUPW PHP环境集成包,增加多个PHP版本支持,可选择使用
  5. 阶段5 3.微服务项目【学成在线】_day04 页面静态化_14-页面静态化-数据模型-远程请求接口...
  6. 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第3节 线程同步机制_6_解决线程安全问题_同步方法...
  7. apropos linux
  8. redis 部署方式及常见特性
  9. ZT:Linux上安装JDK,最准确
  10. Remove Duplicates from Sorted List解题报告