https://blog.csdn.net/jinglexy/article/details/79813546

在官网web上进行kubenetes测试:
kubectl run kubernetes-bootcamp --image=docker.io/jocatalin/kubernetes-bootcamp:v1 --port=8080

kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port=8080
kubectl scale --replicas=3 deployment/kubernetes-bootcamp
kubectl scale --replicas=2 deployment/kubernetes-bootcamp

kubectl get deployment
kubectl get pod
kubectl get service

kubectl set image deployment/kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2
curl host01:30692 根据上面service的端口
curl host01:30692
kubectl rollout undo deployment/kubernetes-bootcamp
curl host01:30692 根据上面service的端口
curl host01:30692

======================================================================================

(1)安装kubelet, kubeadm和kubectl(master和slave都需要执行)
https://kubernetes.io/docs/setup/independent/install-kubeadm/
各个节点:
master: 192.168.7.163
slave1: 192.168.7.164
slave2: 192.168.7.165
把/etc/fstab里面的swap干掉,然后在~/.bashrc添加sudo /sbin/swapoff -a

(2)初始化master(如果步骤失败,执行kubeadm reset)
kubeadm init --apiserver-advertise-address 192.168.7.163 --pod-network-cidr=10.244.0.0/16
输出结果里面的最下面的一条kubeadm join记下来,后面会用到,例如:
kubeadm join 192.168.7.163:6443 --token gws3w0.vftvaze6zwe0vzhm --discovery-token-ca-cert-hash sha256:3adf3ee2350412b4ae434da02edcbcd119fa9da306a20758b8be1261716c527f
如果失败或者以后更改master参数:
sudo kubeadm reset
sudo docker stop $(docker ps |grep k8s_ | awk '{print $1}')
sudo docker rm $(docker ps |grep k8s_ | awk '{print $1}')
sudo rm -rf /var/lib/kubelet/
docker ps -a务必没有k8s_开头的容器

(3)master下配置kubectl环境
mkdir ~/.kube
sudo cp /etc/kubernetes/admin.conf ~/.kube/config
sudo chown wyt:wyt ~/.kube/config
sudo chmod 777 ~/.kube/config
sudo bash -c "kubectl completion bash > /etc/bash_completion.d/kubectl"
sudo bash -c "kubeadm completion bash > /etc/bash_completion.d/kubeadm"

(4)master下配置pod网络(安装flannel)
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

(5)slave初始化(如果有多个slave,每个slave都要执行)
执行上面的kubeadm join命令,可能会报一个错误,原因是/var/run/dockershim.sock不存在,因为没有创建slave所以不存在,这是个无限死循环,解决方法:
在kubeadm join后面加一个参数: --ignore-preflight-errors=cri

(6)slave下配置kubectl环境
mkdir ~/.kube
sudo cp /etc/kubernetes/kubelet.conf ~/.kube/config
sudo chown wyt:wyt ~/.kube/config
sudo chmod 777 ~/.kube/config
sudo bash -c "kubectl completion bash > /etc/bash_completion.d/kubectl"
sudo bash -c "kubeadm completion bash > /etc/bash_completion.d/kubeadm"

(6)相关命令
kubectl get pod --all-namespaces
kubectl get node
kubectl get deployment

(7)deployment
kubectl run nginx-deployment --image=nginx:1.7.9 --replicas=2
然后用kubectl get deployment/pod查看情况,发现pod状态是ContainerCreating,
悲了个催的,然后调试:
kubectl describe deployment nginx-deployment
kubectl describe pod nginx-deployment-6b5c99b6fd-nvjkg
提示:FailedCreatePodSandBox,发现是前面pod-network-cidr设置问题
搞定后:通过ifconfig命令,master主机网段是10.244.0.x,slave1网段是10.244.1.x
kubectl get pod --all-namespaces必须全部running,否则后面的没有意义

(8)yml示例:
https://gist.github.com/wjx0912/5941737974edc91c462f05e8a0a50dce
https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

(9)我整理的一些yml
https://gist.github.com/wjx0912

(10)接下来需要学习的要点
创建service,dns访问service,外网访问service,回滚,volume管理,helm包管理,网络部署,dashboard,集群监控,日志

kubenetes安装记录和要点的更多相关文章

  1. 分布式监控系统Zabbix-3.0.3-完整安装记录(7)-使用percona监控MySQL

    前面已经介绍了分布式监控系统Zabbix-3.0.3-完整安装记录(2)-添加mysql监控,但是没有提供可以直接使用的Key,太过简陋,监控效果不佳.要想更加仔细的监控Mysql,业内同学们都会选择 ...

  2. 关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用

    关于node.js和npm,cnpm的安装记录以及gulp自动构建工具的使用   工作环境:window下 在一切的最开始,安装node.js (中文站,更新比较慢http://nodejs.cn/) ...

  3. sourceinsight安装记录

    sourceinsight安装记录 此文章为本人使用sourceinsight一个星期之后的相关设置步骤记录和经验记录,以备以后查验,网上的相关资料都也较为完善,但是对于新手还是有一定困难的,所以在这 ...

  4. openerp安装记录及postgresql数据库问题解决

    ubuntu-14.04下openerp安装记录1.安装PostgreSQL 数据库    a.安装         sudo apt-get install postgresql    安装后ubu ...

  5. Matlab安装记录 - LED Control Activex控件安装

    Matlab安装记录-LED Control Activex控件安装 2013-12-01  22:06:36 最近在研究Matlab GUI技术,准备用于制作上位机程序:在Matlab GUI的技术 ...

  6. Arch Linux 安装记录

    Arch Linux 安装记录 基本上参考wiki上的新手指南,使用arch 2014.6.1 iso安装 设置网络 有线网络 Arch Linux 默认开启DHCP. 静态ip 首先关闭DHCP:s ...

  7. redis5.0.3单实例简单安装记录

    redis5.0.3单实例简单安装记录 日常需要测试使用,索性记录下来,免得临时又麻烦的找资料. yum -y install make gcc-c++ cmake bison-devel ncurs ...

  8. mysql5.7安装记录

    mysql安装记录 版本5.7 windows系统 一.缺少my.ini文件 [mysql]# 设置mysql客户端默认字符集default-character-set=utf8 [mysqld]#设 ...

  9. Liunx/RHEL6.5 Oracle11 安装记录

    1.创建用户组 groupadd oinstall #创建用户组oinstall groupadd dba #创建用户组dba useradd -g oinstall -g dba -m oracle ...

随机推荐

  1. SQL server 2008(Linux安装)

    今天应公司的要求,需要在阿里云上安装sql server 在本地使用,由于自己原来没有涉及过这样的安装所以走了很多的弯路.现在将我的安装过程与大家分享,希望能够帮到想要学习这个方面的人.以下是我用Ce ...

  2. C# 使用缓存数据模拟抢购

      在所有的电商网站中,不乏大量的抢购,比如双十一,双十二等等,作为一名开发人员考虑最多的就是多并发以及高并发 废话少说,开始写代码.我用了C#的MemoryCache代替试下流行的各种缓存 商品测试 ...

  3. 单片机课程设计-四位加法计算器设计参考程序(c语言)

    #include<reg52.h> typedef unsigned char uint8; typedef unsigned int uint16; sbit rw=P2^; sbit ...

  4. swing 嵌入浏览器

    需求要在swing加一个浏览器,在网上找了一个挺方便的方法,现在把代码贴上来 力求方便. package com.vtradex.page.shipment; import static javafx ...

  5. python大法好——Python 正则表达式

    Python 正则表达式 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. Python 自1.5版本起增加了re 模块,它提供 Perl 风格的正则表达式模式. r ...

  6. servlet的运行机制,转发和重定向

    一.当发送一个请求到服务器端的时候,容器(tomcat)会判断该路径属于哪一个servlet进行处理,servlet有一个抽象父类“httpservlet”,这个类是一个模板设计模式的类,其中serv ...

  7. 供Linux学习使用的在线模拟系统

    前言 我只是一名搬运工. 最近想要找一个linux服务器用于调试shell脚本,但是公司服务器又只能内网访问,外网无法使用.对安装VMWARE+Linux镜像觉得繁琐.查找了一下资料.找到了几个在线模 ...

  8. 解决matplotlib中文显示

    网上搜的很多方法都不是很好用,这里找到了一个比较好用的办法. 首先将win上的中文字体复制到linux目录下面,我这里使用的是simhei.ttf.然后参考如下代码的使用方式: import matp ...

  9. 将php脚本加入开机启动

    可以看到“/etc/rc.d/init.d”下有很多的文件,每个文件都是可以看到内容的,其实都是一些shell脚本.系统服务的启动就是通过“/etc/rc.d/init.d”中的脚本文件实现的.我们也 ...

  10. Mac 下安装nvm 后vscode 输入node -v 不起作用

    今天下午,我因为要安装不同的node版本,所有安装了nvm下载了两个不同版本的node,并且配置了环境变量. 在命令行窗口中使用起来没有任何问题,但是在vs code中敲的时候node -v 显示no ...