BusyBox

Kubernetes基础:Replication Controller之选择器

回眸只為那壹抹淺笑 提交于 2020-02-07 00:37:32
上篇文章介绍了RC和RS的基本使用方式,这篇文章来介绍一下RC选择器selector的使用方式。 RC的选择器使用示例 如下YAML示例中, RC选择器设定为busybox-prod [ root@host131 ReplicaSet ] # cat selecotr-busybox-rc.yaml --- apiVersion : v1 kind : ReplicationController metadata : name : test - rc spec : replicas : 1 selector : app : busybox - prod template : metadata : name : busybox labels : app : busybox - prod spec : containers : - name : busybox - host image : busybox : latest command : [ "sleep" ] args : [ "1000" ] ... [ root@host131 ReplicaSet ] # 结果确认 [root@host131 ReplicaSet]# kubectl create -f selecotr-busybox-rc.yaml replicationcontroller/test-rc

docker的跨主机网络Overlay,MacVlan网络的实现

五迷三道 提交于 2020-01-28 20:01:41
让外网能否访问容器的端口映射方法: 1.手动指定端口映射关系 两台虚拟机,第一台映射端口(第二台访问宿主机端口,就是访问容器端口 curl 192.168.1.1:90 。) docker run -itd --name web1 -p 90:80 nginx:latest 2>从宿主机随机映射端口到容器, docker run -itd --name web2 -p 80 nginx:latest 3》从宿主机随机映射端口到容器,容器内所有暴漏端口,都会一一映射。 docker run -itd --name web4 -P nginx:latest Join容器:container(共享网络协议栈) 容器和容器之间。 docker run -itd --name web5 busybox docker run -itd --name web6 --network container:web5 busybox:latest docker exec -it web6 /bin/sh echo 6666666 > /tmp/index.html httpd -h /tmp/ docker exec -it web5 /bin/sh get -O - -q 127.0.0.1 6666666 这时会发现,两个容器的ip地址一样。 PS:这种方法的使用场景: 由于这种网络的特殊性

Kubernetes基础:重启pod的方法

大城市里の小女人 提交于 2020-01-26 01:04:43
Kubernetes没有提供诸如docker restart类似的命令用于重启容器那样重启pod的命令,一般会结合restartPolicy进行自动重启,这篇文章整理一下偶尔需要手动进行重启的时候所需要使用的方法。 事前准备 环境准备 本文使用Kubernetes 1.17,可参看下文进行快速环境搭建: 单机版本或者集群版本环境搭建 pod准备 使用如下pod的yaml文件 [root@host131 config]# cat busybox-pod-test.yaml apiVersion: v1 kind: Pod metadata: name: test-pod spec: containers: - name: busybox-container image: busybox:latest command: ["sleep", "15"] restartPolicy: Never [root@host131 config]# 执行命令:kubectl create -f busybox-pod-volume.yaml 执行日志示例如下所示 [root@host131 ~]# kubectl get pods No resources found in default namespace. [root@host131 ~]# kubectl create -f busybox

Kubernetes存储卷介绍-emptyDir/hostPath/NFS/configMap

风流意气都作罢 提交于 2020-01-13 00:35:01
存储卷介绍 一个容器的对文件系统的写入都是发生在文件系统的可写层的,一旦该容器运行结束,所有写入数据都会被丢弃。在K8S集群之中,Pod会在各个节点之间漂移,如何保障Pod的数据持久和不同节点数据的共享。Kubernetes提出了存储卷Volume的概念,Kubernetes存储卷主要解决了依次递增的几个问题: 当运行的容器崩溃时,kubelet会重新启动该容器,但容器会以干净状态被重新启动。容器崩溃之前写入的文件将会被丢失。 当一个Pod中同时运行多个容器时,这些容器之间需要共享文件。 在k8s中,由于Pod分布在各个不同的节点之上,并不能实现不同节点之间持久性数据的共享,并且在节点故障时,可能会导致数据的永久性丢失。 Kubernetes存储卷拥有明确的生命周期,与所在的Pod的生命周期相同。因此Kubernetes存储卷独立于任何容器,所以数据在Pod重启的过程中还会保留,当然如果这个Pod被删除了,那么这些数据也会被删除。 Kubernetes 支持的卷类型 Type Type Type Type Type Type awsElasticBlockStore azureDisk azureFile cephfs cinder configMap csi downwardAPI emptyDir fc (fibre channel) flexVolume flocker

kubernetes实践:helm安装harbor

纵然是瞬间 提交于 2020-01-06 18:13:27
GitHub: Helm Chart for Harbor 1. 添加harbor的helm库 helm repo add harbor https://helm.goharbor.io 2. 将harbor下载到本地 helm fetch harbor/harbor tar xf harbor-1.1.1.tgz 3. 自定义配置 默认的values.yaml基本不需要多大改动,只有极个别的需要自定义修改 具体改什么需要根据自动需求,可以查看GitHub上面的配置列表 configuration 根据自己的特殊需求创建一个新的values文件,覆盖掉之前的值 cat new-values.yaml expose: type: ingress tls: enabled: true ingress: hosts: core: harbor.mytest.io notary: notary.mytest.io externalURL: https://harbor.mytest.io persistence: enabled: true resourcePolicy: "keep" persistentVolumeClaim: registry: storageClass: "harbor-data" chartmuseum: storageClass: "harbor-data"

Docker简介以及使用docker搭建lnmp的过程(多PHP版本)

不问归期 提交于 2020-01-01 13:31:03
一、Docker基础 Docker安装 Docker 要求 Ubuntu 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的 Ubuntu 版本是否支持 Docker。 通过 uname -r 命令查看你当前的内核版本 通过 apt-get install docker.io 安装docker Docker常见命令 容器相关操作 docker create # 创建一个容器但是不启动它 例如: docker create -- name mycon php :5.6-fpm docker run # 创建并启动一个容器     -a stdin: 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项;     -d: 后台运行容器,并返回容器ID;     -i: 以交互模式运行容器,通常与 -t 同时使用;     -t: 为容器重新分配一个伪输入终端,通常与 -i 同时使用;     --name="nginx-lb": 为容器指定一个名称;     -P: 容器的80端口映射到主机的随机端口     -p: 容器的端口映射到主机的对应端口,例如: -p 80:80     -v: 主机的目录映射(挂载)到容器的目录,例如:-v /home/ubuntu/nginx/www:/www     -m 或 --memory:设置内存使用限额。例如

Launching Linux from Busybox (pivot_root or switch_root, or ? )

江枫思渺然 提交于 2020-01-01 10:17:22
问题 On a beaglebone hardware, I want to start on a partition with a minimalist busybox system (/dev/mmcblk0p2), run some checks on the 2 other partitions (/dev/mmcblk0p5 & /dev/mmcblk0p6) containing more complete Linux systems (Angström), then start on one or the other of the 2 Linux systems based on those tests. The problem is that I cannot find how to start another system correctly from busybox. What I did: From the (perfectly working) busybox system: export PATH=/bin:/sbin:/usr/bin:/usr/sbin

Launching Linux from Busybox (pivot_root or switch_root, or ? )

本小妞迷上赌 提交于 2020-01-01 10:17:12
问题 On a beaglebone hardware, I want to start on a partition with a minimalist busybox system (/dev/mmcblk0p2), run some checks on the 2 other partitions (/dev/mmcblk0p5 & /dev/mmcblk0p6) containing more complete Linux systems (Angström), then start on one or the other of the 2 Linux systems based on those tests. The problem is that I cannot find how to start another system correctly from busybox. What I did: From the (perfectly working) busybox system: export PATH=/bin:/sbin:/usr/bin:/usr/sbin

Get date of last saturday - BusyBox 1.1.0

独自空忆成欢 提交于 2019-12-31 05:15:12
问题 Since the date in BusyBox is not as powerful as gnu date , I have problems to calculate the date of last saturday. last_sat=`date +"%Y-%m-%d" -d "last saturday"` only works fine with gnu date. I've found something like this to calculate from Epoch busybox date -D '%s' -d "$(( `busybox date +%s`+3*60 ))" but my BusyBox (v1.1.0) doesn't recognize the -D argument. Any suggestions? 回答1: For the last Saturday before today, under busybox 1.16: date -d "UTC 1970-01-01 $(date +"%s - 86400 - %w *

08: docker registry 私有仓库

限于喜欢 提交于 2019-12-31 00:52:17
docker registry 私有仓库 不需要我们自己去搭建私有仓库,只需要起一个容器(官方封装好的仓库镜像)就可以了。 有关命令: 1:docker push xx.xxx.com/google_containers/busybox #上传镜像到私有私有仓库 2:docker pull xxx.xxx.com/google_containers/busybox #下载私有仓库的busybox镜像到本地 #普通的registry docker run -d -p 5000:5000 --restart=always --name registry -v /opt/myregistry:/var/lib/registry registry --restart=always #容器服务每次重启了,自动把这个容器挂载起来启动 --name registry # 容器起来后,docker ps -a 看到的镜像名字 -v /opt/myregistry:/var/lib/registry #把宿主机的 /opt/myregistry目录,挂载到容器的/var/lib/registry 目录下面 registry #镜像名字 #启动docker registry 容器 [root@k8s129 ~]# docker run -d -p 5000:5000 --restart=always