k8s 和 Docker容器技术,当前非常流行的技术. 让人日狗的是,   这套技术栈对CN的donet 程序员不怎么友好。娓娓道来,1. 好多镜像都是需要梯子才能访问; 2. window程序员天生对命令行操作陌生。3. 好多资料都是linux 等等.....

下面我们来一起安装部署下。

一, 安装环境。

1. Docker 容器本质就是虚拟技术。简单理解就是vmware 虚拟机(注:两种不同虚拟化技术,自行研究)。 建议windows 10 以上且支持虚拟化技术环境。如果机器没有开启虚拟化,进入Boise开启。 如果不支持虚拟化,需要安装 Docker Toolbox .  本人以下机器环境如下, 下面的安装步骤演示:  windows 10 且启用虚拟化.

下载Docker 安装包. (演示使用的是Edge版本)

安装后长这个样子:

这里面有坑, 安装好以后, 不能直接勾选启用K8s选项,再说一遍,不要点. 

配置镜像,

{
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://registry.docker-cn.com"
],
"insecure-registries": [],
"debug": true,
"experimental": true
}

二, 拉取K8s镜像.

拉取镜像完成后执行如下操作.  具体可参考 博友文章. 开启和安装Kubernetes 基于Docker For Windows  按照此步骤下来, 在次不再详赘述.

Powershell 执行:

步骤a:   git clone https://github.com/AliyunContainerService/k8s-for-docker-desktop.git
cd k8s-for-docker-desktop 步骤b: .\load_images.ps1 步骤3: 打开Docker DashBoard , 勾选"Enable Kubernetes" 选项. 此步骤比较耗时,耐心等待

  

三, 安装Kubernetes Dashboard

步骤1 . 查看当前k8s的kubectl 安装是否正确.
PS执行: kubectl version 命令 步骤2: 通过yaml文件安装部署镜像.
PS执行:
kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml 或 (从之前的k8s-for-docker-desktop 目录):
PS执行: kubectl create -f kubernetes-dashboard.yaml

查看当前docker运行状态:

PS执行:  kubectl get pods --namespace kube-system

四,开启代理,

Ps: kubectl proxy

注意,只有当dashboard 容器,正常运行也就是状态为(Running),才能打开浏览器访问。当出现错误时,才看容器运行具体信息,使用如下命令:

kubectl describe pod kubernetes-dashboard-669f9bbd46-rhmst  --namespace kube-system

执行 kubernetes-dashboard.yaml 文件时,可能拉取镜像失败,导致doashboard 容器不能正常执行。

镜像拉取失败处理:

脚本

$DASHDOARD_VERSION="v1.10.1"
$HEAPSTER_VERSION="v1.5.4"
$GRAFANA_VERSION="v5.0.4"
$INFLUXDB_VERSION="v1.5.2"
$username="registry.cn-hangzhou.aliyuncs.com/google_containers"
$images="kubernetes-dashboard-amd64:${DASHDOARD_VERSION}","heapster-grafana-amd64:${GRAFANA_VERSION}","heapster-amd64:${HEAPSTER_VERSION}","heapster-influxdb-amd64:${INFLUXDB_VERSION}" foreach($item in $images)
{
docker pull ${username}/${item}
docker tag ${username}/${item} k8s.gcr.io/${item}
docker rmi ${username}/${item}
}

  

以下kubectl 常用命令:

kubectl create -f kubernetes-dashboard.yaml --删除资源

kubectl apply -f kubernetes-dashboard.yaml  --重新应用配置

五, 打开Doashbard ,

打开浏览器:

http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/overview?namespace=default

此时可能 也有问题无法登陆

"Deleted kubernetes-dashboard version 1.10.1 and switched to v2.0.0-beta8 which worked like a charm: localhost:8001/api/v1/namespaces/kubernetes-dashboard/services/https:kubernetes-dashboard:/proxy/#/overview?namespace=_all"
参考链接:https://github.com/kubernetes-sigs/kubespray/issues/5347

获取登录token 命令:

---token 登录

$TOKEN=((kubectl -n kube-system describe secret default | Select-String "token:") -split " +")[1]
kubectl config set-credentials docker-for-desktop --token="${TOKEN}"
echo $TOKEN "Any key to exit" ;
Read-Host | Out-Null ;
Exit

  

终于躺坑完毕,

windows环境下Kubernetes及Docker安装(那些坑)的更多相关文章

  1. 《高可用MySQL》1 – Windows环境下压缩版MySQL安装

    近日在读O’REILIY系列的<高可用MySQL>, 自然少不了主从(Master-Slave)配置和横向扩展相关的内容.Master-Slave这东西吧,在许多公司都是标配,开发中基本天 ...

  2. windows环境下Robot Framework的安装步骤

    Robot Framework是由python编写的开源的用来做功能性测试的自动化测试框架.本文介绍Robot Framework在windows环境下的安装步骤. 安装python从python官网 ...

  3. Windows环境下为PHP5.6安装redis扩展和memcached扩展

    一.php安装redis扩展   1.使用phpinfo()函数查看PHP的版本信息,这会决定扩展文件版本       2.根据PHP版本号,编译器版本号和CPU架构, 选择php_redis-2.2 ...

  4. Windows环境下Sybase12.5 图文安装教程

    先准备好安装文件,解压缩ASE install.rar文件,文件夹中包含一个setup.exe可执行文件,双击运行 --- > 欢迎界面出现 下面选择相应国家的协议,我们选择“中华人民共和国”, ...

  5. Windows环境下svn服务器的安装步骤

    做为一个程序开发人员,就算自己一个人写程序,也应该有一个SVN版本控制系统,以便对开发代码进行有效的管理. 下载SVN服务器 下载地址是:http://subversion.apache.org/pa ...

  6. 基于Windows环境下Myeclipse10.0下载安装破解及jdk的下载安装及环境变量的配置

    jdk的安装及环境变量的配置 1.安装JDK开发环境 附上jdk安装包的百度云链接 链接:http://pan.baidu.com/s/1mh6QTs8 密码:jkb6(当然自行去官网下载最好哒,可以 ...

  7. 一.windows环境下rabbitMQ的的安装和配置

    rabbitMQ是AMQP 0-9-1(高级消息队列协议)的一个实现,使用Erlang语言编写,利用了Erlang的分布式特性.用它来实现分布式消息队列. 1.因为是用Erlang编写的,所以首先要安 ...

  8. Windows环境下使用pip install安装lxml库

    lxml是Python语言和XML以及HTML工作的功能最丰富和最容易使用的库.lxml是为libxml2和libxslt库的一个Python化的绑定.它与众不同的地方是它兼顾了这些库的速度和功能完整 ...

  9. Windows环境下MySQL 5.6安装与配置

    1将MySQL压缩包解压到自定义目录下. 2.添加环境变量 右键单击我的电脑->属性->高级系统设置(高级)->环境变量. 点击系统变量下的新建按钮 1)    输入变量名:MYSQ ...

随机推荐

  1. 小老板,我300M的网,网速很慢怎么办?

    首先考虑是不是DNS的问题: 我们先测试一下! 一.Google的DNS: 8.8.8.8 丢包严重 PASS但是扶墙的时候是必备的,如果有扶墙的需求的话可以备用. 二.百度DNS 180.76.76 ...

  2. USACO Training Section 1.2 [USACO1.2]方块转换 Transformations

    题目描述 一块N x N(1<=N<=10)正方形的黑白瓦片的图案要被转换成新的正方形图案.写一个程序来找出将原始图案按照以下列转换方法转换成新图案的最小方式: 1:转90度:图案按顺时针 ...

  3. 数学--数论--HDU 12151七夕节

    七夕节 Problem Description 七夕节那天,月老来到数字王国,他在城门上贴了一张告示,并且和数字王国的人们说:"你们想知道你们的另一半是谁吗?那就按照告示上的方法去找吧!&q ...

  4. P5520 【[yLOI2019] 青原樱】

    P5520 [[yLOI2019] 青原樱]题解 整理博客的时候改了下分类标签,重新审一下 题目传送门 翻了翻题解区,发现基本没和我写的一样的(主要是都比我的写的简单 看题目: 第一眼,数学题:第二眼 ...

  5. Shell脚本(三)重定向

    先上一张图: 代码如下: #!/bin/bash echo "hello world" echo `ls +` 运行结果如下: PS: 1. 如果想同时将数据重定向到文件和stdo ...

  6. HDU1176(正推DP)

    时间和位置都可以决定这一秒捡到的馅饼数 不妨设\(dp[i][j]\)为在\(i\)秒\(j\)位置的最大收益 那么\(dp[0][5]=0\),dp数组的其他部分置成-1代表不能转移 那么对于第\( ...

  7. 自动化运维工具Ansible之Roles测验详解

    Ansible Roles 详解与实战案例 主机规划 添加用户账号 说明: 1. 运维人员使用的登录账号: 2. 所有的业务都放在 /app/ 下「yun用户的家目录」,避免业务数据乱放: 3. 该用 ...

  8. Coursera课程笔记----计算导论与C语言基础----Week 2

    计算机的历史与未来(Week 2) 计算机历史 早期计算机:手工计算器➡️机械计算器➡️计算机原型 现代计算机:电子管计算机➡️晶体管计算机➡️集成电路计算机➡️超大规模集成电路 早期的手工计算辅助工 ...

  9. Qt 操作sql server数据库

    添加qtsql的库 连接数据库 QSqlDatabase_db = QSqlDatabase::addDatabase("QODBC"); _db.setHostName(); _ ...

  10. python语法学习第十天--类与对象

    python面向对象语言 对象=属性+方法 OO(Object oriented面向对象)的特征: ①封装,信息隐蔽技术②继承:class A(BaseClass):③多态   类:图纸 class ...