YAML

使用 kubeadm 安装最新 Kubernetes 1.15 版本

荒凉一梦 提交于 2021-02-17 07:40:20
导读: kubeadm是Kubernetes官方提供的用于快速安装Kubernetes集群的工具,伴随Kubernetes每个版本的发布都会同步更新,kubeadm会对集群配置方面的一些实践做调整,通过实验kubeadm可以学习到Kubernetes官方在集群配置上一些新的最佳实践。 作者:青蛙小白 原文: https://blog.frognew.com/2019/07/kubeadm-install-kubernetes-1.15.html 最近发布的Kubernetes 1.15中,kubeadm对HA集群的配置已经达到beta可用,说明kubeadm距离生产环境中可用的距离越来越近了。 1.准备 1.1系统配置 在安装之前,需要先做如下准备。两台CentOS 7.6主机如下: cat /etc/hosts 192.168.99.11 node1 192.168.99.12 node2 如果各个主机启用了防火墙,需要开放Kubernetes各个组件所需要的端口,可以查看Installing kubeadm中的”Check required ports”一节。这里简单起见在各节点禁用防火墙: systemctl stop firewalld systemctl disable firewalld 禁用SELINUX: setenforce 0 vi /etc/selinux

云原生系列3 pod核心字段

可紊 提交于 2021-02-17 06:47:09
<br /> <br /> <br />pod是容器化的基础,好比大楼的地基。<br /> Pod跟容器的关系 <br /> <br />类比一下:<br /> <br />POD: 物理机<br />容器: 物理机上的一个进程;<br /> <br />容器只是Pod的一个普通字段。<br /> <br /> Pod的作用范围 <br />跟容器的linux namespace相关的东西一定是Pod级别的,pod。<br /> <br /> <br />比如:<br /> <br />网络: hostAliases : 写入/ect/hosts内容 ; sharePrcessNamespace: 共享PID 空间<br /> <br />存储: vlume<br /> <br />安全: secret<br /> <br />调度: NodeSelector 用户指定pod跟node的对应关系 ; NodeName 标识调度过了,可用来调试pod;<br /> <br /> <br /> <br /> Pod的Container元素 containers和initContainers关系 <br /> <br />initContainers先于containers创建 ; sidecar实现的重要基础;按照定义的顺序来执行;<br /> <br />containers:

Combining anchor and alias in one line in triggers parserError: 'Expected <block end>, but found '<alias>'

℡╲_俬逩灬. 提交于 2021-02-17 03:15:26
问题 I am trying to combine anchors and aliases in order to reuse values into several containers, under different names. I tried the following code: FWL_GV_NANSEN: &fwl_gv_nansen dtype: float value: 2715.0 FWL_GV_E3_2: &fwl_gv_e32 *fwl_gv_nansen the goal is simply to have another variable FWL_GV_E3_2 containing the same information than FWL_GV_NANSEN that I could refer to later on. Just the same than defining in Python (or other): a = 5.0 b = a c = b But this triggers the following error message:

Yaml schema Validation powershell

北战南征 提交于 2021-02-17 00:54:07
问题 I'm working with powershell-yaml to parse my YAML into a PowerShell object. currently, I have a problem validating my YAML schema. I've used this package yaml-schema-validator for my javascript project and I couldn't find any familiar function\moudle to help me solve this problem with Powershell. Is There a schema validation language for YAML in Powershell? 回答1: Simply put, no, I don't believe there are any Powershell native options for doc validation against a YAML schema. Since YAML is a

k8s之RBAC-基于角色的访问控制

删除回忆录丶 提交于 2021-02-16 23:41:35
一个在名称空间内的对象的完整url模板: Object_URL: /apis/<GROUP>/<VERSION>/namespaces/<NAMESPACE_NAME>/<KIND>[OJJECT_ID] role based access control , 将权限授权给角色role,让用户扮演某个角色,这样用户就会有对应的权限 . 许可授权:定义role时,会标明对哪些对象(object),做哪些操作(operations) 图解:名称空间级别的Role, 通过RoleBinding把用户user绑定到Role上 ,那么这个用户就有了管理整个名称空间的权限;集群级别的ClusterRole, 通过ClusterRoleBinding将用户user绑定到ClusterRole上 ,则该用户就有了管理整个集群的权限; 通过RoleBinding把用户user绑定到ClusterRole上,用户依然只有管理某个名称空间的权限 ,但这样做的好处是不用在每个ns中都创建Role了. 1.创建一个role kubectl create role pods-reader --verb=get,list,watch --resource=pods --dry-run -o yaml cat role-demo.yaml apiVersion: rbac.authorization.k8s.io

安装kubernetes-dashboard

ぐ巨炮叔叔 提交于 2021-02-16 20:50:24
注意:以下的命令都是在kubernetes 1.15中执行的,如果是其他版本,不保证效果。 1、创建kubernetes-dashboard服务和对应的pod kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v1.10.1/src/deploy/recommended/kubernetes-dashboard.yaml 如果发现该链接失效,请访问 https://github.com/kubernetes/dashboard ,然后查找最新的链接。 2、查看创建的服务和pod 3、重新创建一个可以供外网访问的Service # cat kubernetes-dashboard.yaml apiVersion: v1 kind: Service metadata: labels: k8s-app: kubernetes-dashboard name: kubernetes-dashboard namespace: kube-system spec: clusterIP: 10.97.14.63 externalTrafficPolicy: Cluster ports: - nodePort: 30443 port: 443 protocol: TCP targetPort: 8443

干货 | 京东云Kubernetes集群+Traefik实战

放肆的年华 提交于 2021-02-16 16:41:03
摘要 Traefik支持丰富的annotations配置,可配置众多出色的特性,例如:自动熔断、负载均衡策略、黑名单、白名单。所以 Traefik对于微服务来说简直就是一神器。 利用Traefik,并结合京东云Kubernetes集群及其他云服务(RDS,NAS,OSS,块存储等), 可快速构建弹性扩展的微服务集群。 Traefik是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。它支持多种后台(Kubernetes,Docker,Swarm,Marathon,Mesos,Consul,Etcd,Zookeeper等)。 本文大致步骤如下: Kubernetes权限配置(RBAC); Traefik部署; 创建三个实例服务; 生成Ingress规则,并通过PATH测试通过Traefik访问各个服务; Traefik配置域名及TLS证书,并实现HTTP重定向到HTTS。 本文部署Traefik使用到的Yaml文件均基于Traefik官方实例,并为适配京东云Kubernetes集群做了相关修改: https://github.com/containous/traefik/tree/master/examples/k8s 基本概念 1 Ingress边界路由 虽然Kubernetes集群内部署的pod、server都有自己的IP,但是却无法提供外网访问

Get Env Variable set in Azure Powershell in Dev Ops Pipeline

我只是一个虾纸丫 提交于 2021-02-15 07:43:58
问题 I have 2 Azure Dev Ops Pipeline Tasks within a pipeline - the first calls a powershell script that does some stuff and then sets an Env variable I want to reference again; $env:MYVALUE = "ABC" This powershell script is executed and works well - however I thought I would be able to reference $MYVALUE in the pipeline after it running; task: SqlAzureDacpacDeployment@1 displayName: 'Do The thing' inputs: ... DatabaseName: '$(MYVALUE)' ... Is it possible to obtain the ENV variable from the

容器计算资源管理&网络QoS的实现---Openshift3.9学习系列第四篇

試著忘記壹切 提交于 2021-02-14 15:30:10
前言 本文仅代表作者的个人观点; 本文的内容仅限于技术探讨,不能直接作为指导生产环境的素材; 本文素材是红帽公司产品技术和手册; 本文分为系列文章,将会有多篇,初步预计将会有8篇。 本文最后一节网络QoS部分,引用了潘晓华的文章。 一、计算资源 在OCP中,每个计算节点(默认是node节点,master节点通过配置也可以运行业务,但不建议这么做。)对于pod而言,CPU和内存都是属于计算资源。 在创建pod的时候,可以指定容器需要多少CPU和内存(RAM)。其中: CPU是以millicores的单位进行分配,即一个CPU core 1/1000的运算能力。 内存分配以字节为单位,也可以设置成 以Gi, Mi, Ki为单位。 例如下图,设置pod需要获取的CPU是100m,内存是200MiB。100m相当于1/10 CPU Core的计算能力。 二、几个参数 CPU Request pod中的每个容器都可以指定它在节点上请求的CPU量;同时Scheduler使用CPU请求来查找适合容器的节点 CPU Request表示容器可能消耗的最小CPU量 1. 如果节点上没有CPU争用,它可以使用所有可用的CPU 2.如果节点上存在CPU争用,则CPU Request会在系统上的所有容器中提供相对权重,以确定容器可以使用多少CPU时间 CPU Limits

ROS入门学习(基于Ubuntu16.04+kinetic)

≯℡__Kan透↙ 提交于 2021-02-13 16:35:18
本文主要部分全部来源于ROS官网的Tutorials. Setup roscore # making sure that we have roscore running rosrun turtlesim turtlesim_node rosrun turtlesim turtle_teleop_key # Now you can use the arrow keys of the keyboard to drive the turtle around. ROS Topics sudo apt-get install ros-kinetic- rqt sudo apt-get install ros-kinetic-rqt-common- plugins rosrun rqt_graph rqt_graph rostopic - h rostopic echo /turtle1/cmd_vel # you will now see topic datas when you press the arrow key in turtle_teleop_key terminal rostopic list -h # figure out what argument the list sub- command needs rostopic list -v # displays a