“部署群集与 CoreOS Kubernetes”的版本间的差异
(未显示2个用户的2个中间版本) | |||
第1行: | 第1行: | ||
+ | <span data-link_translate_zh_title="部署群集与 CoreOS Kubernetes" data-link_translate_zh_url="部署群集与 CoreOS Kubernetes"></span>[[:zh:部署群集与 CoreOS Kubernetes]][[zh:部署群集与 CoreOS Kubernetes]] | ||
<span data-link_translate_he_title="לפרוס את אשכול Kubernetes עם CoreOS" data-link_translate_he_url="%D7%9C%D7%A4%D7%A8%D7%95%D7%A1+%D7%90%D7%AA+%D7%90%D7%A9%D7%9B%D7%95%D7%9C+Kubernetes+%D7%A2%D7%9D+CoreOS"></span>[[:he:לפרוס את אשכול Kubernetes עם CoreOS]][[he:לפרוס את אשכול Kubernetes עם CoreOS]] | <span data-link_translate_he_title="לפרוס את אשכול Kubernetes עם CoreOS" data-link_translate_he_url="%D7%9C%D7%A4%D7%A8%D7%95%D7%A1+%D7%90%D7%AA+%D7%90%D7%A9%D7%9B%D7%95%D7%9C+Kubernetes+%D7%A2%D7%9D+CoreOS"></span>[[:he:לפרוס את אשכול Kubernetes עם CoreOS]][[he:לפרוס את אשכול Kubernetes עם CoreOS]] | ||
<span data-link_translate_ro_title="Implementaţi un cluster Kubernetes cu CoreOS" data-link_translate_ro_url="Implementa%C5%A3i+un+cluster+Kubernetes+cu+CoreOS"></span>[[:ro:Implementaţi un cluster Kubernetes cu CoreOS]][[ro:Implementaţi un cluster Kubernetes cu CoreOS]] | <span data-link_translate_ro_title="Implementaţi un cluster Kubernetes cu CoreOS" data-link_translate_ro_url="Implementa%C5%A3i+un+cluster+Kubernetes+cu+CoreOS"></span>[[:ro:Implementaţi un cluster Kubernetes cu CoreOS]][[ro:Implementaţi un cluster Kubernetes cu CoreOS]] | ||
第18行: | 第19行: | ||
− | + | {{#seo: | |
+ | |title=Your page title | ||
+ | |title_mode=append | ||
+ | |keywords=these,are,your,keywords | ||
+ | |description=编辑“部署群集与 CoreOS Kubernetes | ||
+ | |image=Uploaded_file.png | ||
+ | |image_alt=Wiki Logo | ||
+ | }} | ||
第31行: | 第39行: | ||
<!--T:2--> | <!--T:2--> | ||
− | Kubernetes 是由谷歌创建用于管理应用程序容器与码头工人在群集上的多个主机的开放业务流程源系统 (3 在我们的示例中的 VM CoreOS ).它允许部署、 维护和可扩展性的应用程序。有关详细信息,你可以去 [https://github.com/GoogleCloudPlatform/kubernetes/ Kubernetes github] | + | Kubernetes 是由谷歌创建用于管理应用程序容器与码头工人在群集上的多个主机的开放业务流程源系统 (3 在我们的示例中的 VM CoreOS ).它允许部署、 维护和可扩展性的应用程序。有关详细信息,你可以去 [https://github.com/GoogleCloudPlatform/kubernetes/ '''Kubernetes''' github] |
第180行: | 第188行: | ||
<!--T:23--> | <!--T:23--> | ||
− | 覆盖文件云-通过在所有您将扮演 Kubernetes 奴才的实例上执行以下命令默认到我们 Kubernetes 奴才配置 config.yml ('''只有在将扮演角色节点的实例 /小仆和比下面相同的顺序 ''') : | + | 覆盖文件云-通过在所有您将扮演 Kubernetes 奴才的实例上执行以下命令默认到我们 ''Kubernetes'' 奴才配置 config.yml ('''只有在将扮演角色节点的实例 /小仆和比下面相同的顺序 ''') : |
2020年4月14日 (二) 14:39的最新版本
zh:部署群集与 CoreOS Kubernetes
he:לפרוס את אשכול Kubernetes עם CoreOS
ro:Implementaţi un cluster Kubernetes cu CoreOS
pl:Wdróż klaster Kubernetes z CoreOS
de:Bereitstellen eines Clusters Kubernetes mit CoreOS
nl:Implementeer een cluster Kubernetes met CoreOS
it:Distribuire un cluster Kubernetes con CoreOS
pt:Implantar um cluster Kubernetes com CoreOS
es:Implementar un clúster Kubernetes con CoreOS
en:Deploy a cluster Kubernetes with CoreOS
ru:Развертывание кластера Kubernetes с CoreOS
ja:クラスター コア Os と Kubernetes を展開します。
ar:نشر مجموعة كوبيرنيتيس مع CoreOS
fr:Deployer un cluster Kubernetes avec CoreOS
这篇文章是从由软件进行自动翻译。你可以看到这篇文章的源代码
本过程描述了如何快速部署和简单群集 Kubernetes 多节点与 3 CoreOS 的实例。在客户端模式下工作的 Kubernetes - 服务器,客户机 Kubernetes 名为 "Kubernetes 小仆 " 和服务器 "Kubernetes 大师 ".Kubernetes 主实例是将集中编排实例 Kubernetes 奴才的实例。CoreOS 的实例在我们的示例中,将扮演主 Kubernetes 和其他两个实例将扮演节点 Kubernetes (小仆 ).
Kubernetes 是由谷歌创建用于管理应用程序容器与码头工人在群集上的多个主机的开放业务流程源系统 (3 在我们的示例中的 VM CoreOS ).它允许部署、 维护和可扩展性的应用程序。有关详细信息,你可以去 Kubernetes github
我们假设你 3 已经部署 CoreOS 实例,曲 '他们可以互相交流 和您登录 ssh 用户核心。
如果这不已经做了,更新您的 CoreOS 实例,以便他们至少是在版本 CoreOS 中 653.0.0 和包括 DCE 2 (请参阅我们的常见问题 手动更新 CoreOS).在我们的例子中我们的身体在稳定 CoreOS 681.2.0.
$ cat /etc/lsb-release
DISTRIB_ID=CoreOS
DISTRIB_RELEASE=681.2.0
DISTRIB_CODENAME="Red Dog"
DISTRIB_DESCRIPTION="CoreOS 681.2.0"
我们还必须确保我们所有的 CoreOS 实例有不同机的正确操作上下文群集的 ID。只是删除该文件 /etc/machine-id 然后重新启动每个您的实例 CoreOS 要么 :
$ sudo rm -f /etc/machine-id && sudo reboot
Kubernetes 主实例配置 :
覆盖文件云-通过执行以下命令默认到我们 Kubernetes 主配置 config.yml (只有在将行为作为主节点和相同的顺序比下面的实例 ) :
core@Kube-MASTER ~ $ sudo wget -O /usr/share/oem/cloud-config.yml http://mirror02.ikoula.com/priv/coreos/kubernetes-master.yaml
--2015-06-22 15:55:48-- http://mirror02.ikoula.com/priv/coreos/kubernetes-master.yaml
Resolving mirror02.ikoula.com... 80.93.X.X, 2a00:c70:1:80:93:81:178:1
Connecting to mirror02.ikoula.com|80.93.X.X|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 8913 (8.7K) [text/plain]
Saving to: '/usr/share/oem/cloud-config.yml'
<!--T:11-->
/usr/share/oem/cloud-config.yml 100%[===================================================================================================>] 8.70K --.-KB/s in 0s
<!--T:12-->
2015-06-22 15:55:48 (148 MB/s) - '/usr/share/oem/cloud-config.yml' saved [8913/8913]
core@Kube-MASTER ~ $ export `cat /etc/environment`
core@Kube-MASTER ~ $ sudo sed -i 's#PRIVATE_IP#'$COREOS_PRIVATE_IPV4'#g' /usr/share/oem/cloud-config.yml
我们重新启动我们的实例,其配置是有效 :
core@Kube-MASTER ~ $ sudo reboot
我们检查我们的身体正确初始化 :
core@Kube-MASTER ~ $ sudo fleetctl list-machines
MACHINE IP METADATA
aee19a88... 10.1.1.138 role=master
core@Kube-MASTER ~ $ sudo etcdctl ls --recursive
/coreos.com
/coreos.com/updateengine
/coreos.com/updateengine/rebootlock
/coreos.com/updateengine/rebootlock/semaphore
/coreos.com/network
/coreos.com/network/config
/coreos.com/network/subnets
/coreos.com/network/subnets/10.244.69.0-24
/registry
/registry/ranges
/registry/ranges/serviceips
/registry/ranges/servicenodeports
/registry/namespaces
/registry/namespaces/default
/registry/services
/registry/services/endpoints
/registry/services/endpoints/default
/registry/services/endpoints/default/kubernetes
/registry/services/endpoints/default/kubernetes-ro
/registry/services/specs
/registry/services/specs/default
/registry/services/specs/default/kubernetes
/registry/services/specs/default/kubernetes-ro
/registry/serviceaccounts
/registry/serviceaccounts/default
/registry/serviceaccounts/default/default
您还可以查看服务 /侦听端口 (有服务器组件 /大师 Kubernetes ):
core@Kube-MASTER ~ $ sudo netstat -taupen | grep LISTEN
tcp 0 0 10.1.1.138:7001 0.0.0.0:* LISTEN 232 16319 634/etcd2
tcp 0 0 10.1.1.138:7080 0.0.0.0:* LISTEN 0 19392 1047/kube-apiserver
tcp 0 0 0.0.0.0:5000 0.0.0.0:* LISTEN 0 19142 973/python
tcp 0 0 127.0.0.1:10251 0.0.0.0:* LISTEN 0 20047 1075/kube-scheduler
tcp 0 0 10.1.1.138:6443 0.0.0.0:* LISTEN 0 19406 1047/kube-apiserver
tcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN 245 14794 502/systemd-resolve
tcp 0 0 127.0.0.1:10252 0.0.0.0:* LISTEN 0 19653 1058/kube-controlle
tcp 0 0 10.1.1.138:2380 0.0.0.0:* LISTEN 232 16313 634/etcd2
tcp6 0 0 :::8080 :::* LISTEN 0 19390 1047/kube-apiserver
tcp6 0 0 :::22 :::* LISTEN 0 13647 1/systemd
tcp6 0 0 :::4001 :::* LISTEN 232 16321 634/etcd2
tcp6 0 0 :::2379 :::* LISTEN 232 16320 634/etcd2
tcp6 0 0 :::5355 :::* LISTEN 245 14796 502/systemd-resolve
配置实例 Kubernetes 奴才 :
覆盖文件云-通过在所有您将扮演 Kubernetes 奴才的实例上执行以下命令默认到我们 Kubernetes 奴才配置 config.yml (只有在将扮演角色节点的实例 /小仆和比下面相同的顺序 ) :
core@Kube-MINION1 ~ $ sudo wget -O /usr/share/oem/cloud-config.yml http://mirror02.ikoula.com/priv/coreos/kubernetes-minion.yaml
--2015-06-22 16:39:26-- http://mirror02.ikoula.com/priv/coreos/kubernetes-minion.yaml
Resolving mirror02.ikoula.com... 80.93.X.X, 2a00:c70:1:80:93:81:178:1
Connecting to mirror02.ikoula.com|80.93.X.X|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5210 (5.1K) [text/plain]
Saving to: '/usr/share/oem/cloud-config.yml'
<!--T:25-->
/usr/share/oem/cloud-config.yml 100%[===================================================================================================>] 5.09K --.-KB/s in 0s
<!--T:26-->
2015-06-22 16:39:26 (428 MB/s) - '/usr/share/oem/cloud-config.yml' saved [5210/5210]
core@Kube-MINION1 ~ $ export `cat /etc/environment`
谨慎是必要适应你 kubernetes 的主实例,下面的命令中的专用 ip 地址 (取代 10.1.1.138 你 kubernetes 主实例的 ip 私营 ) 下面的命令 :
core@Kube-MINION1 ~ $ sudo sed -i 's#MASTER_PRIVATE_IP#10.1.1.138#g' /usr/share/oem/cloud-config.yml
最后一次你有执行这些命令相同地对每个您的实例 /节点 kubernetes 小仆,重新启动它们,它们的配置是有效的和什么加入群集。
core@Kube-MINION1 ~ $ sudo reboot
我们确认我们 2 嗯,实例 kubernetes 奴才加入我们群集 (可以在您的群集实例的任何成员上运行以下命令 ) :
core@Kube-MASTER ~ $ sudo fleetctl list-machines
MACHINE IP METADATA
5097f972... 10.1.1.215 role=node
aee19a88... 10.1.1.138 role=master
fe86214c... 10.1.1.83 role=node
core@Kube-MINION1 ~ $ sudo etcdctl ls --recursive
/coreos.com
/coreos.com/updateengine
/coreos.com/updateengine/rebootlock
/coreos.com/updateengine/rebootlock/semaphore
/coreos.com/network
/coreos.com/network/config
/coreos.com/network/subnets
/coreos.com/network/subnets/10.244.69.0-24
/coreos.com/network/subnets/10.244.38.0-24
/coreos.com/network/subnets/10.244.23.0-24
/registry
/registry/ranges
/registry/ranges/serviceips
/registry/ranges/servicenodeports
/registry/namespaces
/registry/namespaces/default
/registry/services
/registry/services/specs
/registry/services/specs/default
/registry/services/specs/default/kubernetes
/registry/services/specs/default/kubernetes-ro
/registry/services/endpoints
/registry/services/endpoints/default
/registry/services/endpoints/default/kubernetes
/registry/services/endpoints/default/kubernetes-ro
/registry/serviceaccounts
/registry/serviceaccounts/default
/registry/serviceaccounts/default/default
/registry/events
/registry/events/default
/registry/events/default/10.1.1.215.13ea16c9c70924f4
/registry/events/default/10.1.1.83.13ea16f74bd4de1c
/registry/events/default/10.1.1.83.13ea16f77a4e7ab2
/registry/events/default/10.1.1.215.13ea16c991a4ee57
/registry/minions
/registry/minions/10.1.1.215
/registry/minions/10.1.1.83
core@Kube-MINION2 ~ $ sudo etcdctl ls --recursive
/coreos.com
/coreos.com/updateengine
/coreos.com/updateengine/rebootlock
/coreos.com/updateengine/rebootlock/semaphore
/coreos.com/network
/coreos.com/network/config
/coreos.com/network/subnets
/coreos.com/network/subnets/10.244.69.0-24
/coreos.com/network/subnets/10.244.38.0-24
/coreos.com/network/subnets/10.244.23.0-24
/registry
/registry/ranges
/registry/ranges/serviceips
/registry/ranges/servicenodeports
/registry/namespaces
/registry/namespaces/default
/registry/services
/registry/services/specs
/registry/services/specs/default
/registry/services/specs/default/kubernetes
/registry/services/specs/default/kubernetes-ro
/registry/services/endpoints
/registry/services/endpoints/default
/registry/services/endpoints/default/kubernetes
/registry/services/endpoints/default/kubernetes-ro
/registry/serviceaccounts
/registry/serviceaccounts/default
/registry/serviceaccounts/default/default
/registry/events
/registry/events/default
/registry/events/default/10.1.1.83.13ea16f77a4e7ab2
/registry/events/default/10.1.1.215.13ea16c991a4ee57
/registry/events/default/10.1.1.215.13ea16c9c70924f4
/registry/events/default/10.1.1.83.13ea16f74bd4de1c
/registry/minions
/registry/minions/10.1.1.215
/registry/minions/10.1.1.83
在我们的实例上 Kubernetes 奴才在这里服务 /侦听端口 (包括其中的信息交换通过主 Kubernetes Kubelet 服务 ) :
core@Kube-MINION1 ~ $ sudo netstat -taupen | grep LISTEN
tcp 0 0 127.0.0.1:10249 0.0.0.0:* LISTEN 0 18280 849/kube-proxy
tcp 0 0 0.0.0.0:5355 0.0.0.0:* LISTEN 245 14843 500/systemd-resolve
tcp6 0 0 :::49005 :::* LISTEN 0 18284 849/kube-proxy
tcp6 0 0 :::10255 :::* LISTEN 0 19213 1025/kubelet
tcp6 0 0 :::47666 :::* LISTEN 0 18309 849/kube-proxy
tcp6 0 0 :::22 :::* LISTEN 0 13669 1/systemd
tcp6 0 0 :::4001 :::* LISTEN 232 16106 617/etcd2
tcp6 0 0 :::4194 :::* LISTEN 0 19096 1025/kubelet
tcp6 0 0 :::10248 :::* LISTEN 0 19210 1025/kubelet
tcp6 0 0 :::10250 :::* LISTEN 0 19305 1025/kubelet
tcp6 0 0 :::2379 :::* LISTEN 232 16105 617/etcd2
tcp6 0 0 :::5355 :::* LISTEN 245 14845 500/systemd-resolve
与大师 Kubernetes API 沟通核查 :
用户界面 Kubernetes :
若要访问仪表板 Kubernetes,您需要允许连接到端口 8080 (Kubernetes 主 API 服务器 ) 并进行了一个端口,如果需要转发 (转发区 ) 港口 8080 你 Kubernetes 的主实例。然后,只需转到 url http://adresse_ip_publique_instance_kubernetes_master:8080/static/app/#/dashboard/ 在您的浏览器 :
自该仪表板,你属于其它可能要在您的节点上显示信息 (Kubernetes 小仆 ).为此,您可以点击 "意见 " :
单击 "节点 " :
你节点 Kubernetes 奴才列表 :
单击其中一个显示该节点相关信息 (版本的码头工人、 系统、 KubeProxy 和 Kubelet,等等。) :
Kubernetes CLI :
您还可以使用工具 Kubectl 自你 Kubernetes 的主实例。要这样做,您必须安装此实用程序,如下所示 :
一旦登录到 ssh 上您的实例 Kubernetes 主类型以下命令 :
core@Kube-MASTER ~ $ sudo wget -O /opt/bin/kubectl https://storage.googleapis.com/kubernetes-release/release/v0.17.0/bin/linux/amd64/kubectl
--2015-06-23 11:39:09-- https://storage.googleapis.com/kubernetes-release/release/v0.17.0/bin/linux/amd64/kubectl
Resolving storage.googleapis.com... 64.233.166.128, 2a00:1450:400c:c09::80
Connecting to storage.googleapis.com|64.233.166.128|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 20077224 (19M) [application/octet-stream]
Saving to: '/opt/bin/kubectl'
<!--T:54-->
/opt/bin/kubectl 100%[===================================================================================================>] 19.15M 1.18MB/s in 16s
<!--T:55-->
2015-06-23 11:39:26 (1.18 MB/s) - '/opt/bin/kubectl' saved [20077224/20077224]
core@Kube-MASTER ~ $ sudo chmod 755 /opt/bin/kubectl
良好的沟通与您的 API Kubernetes 测试 :
core@Kube-MASTER ~ $ kubectl get node
NAME LABELS STATUS
10.1.1.215 kubernetes.io/hostname=10.1.1.215 Ready
10.1.1.83 kubernetes.io/hostname=10.1.1.83 Ready
core@Kube-MASTER ~ $ kubectl cluster-info
Kubernetes master is running at http://localhost:8080
我们因此可以在我们的群集部署 Nginx 的第一个集装箱 :
core@Kube-MASTER ~ $ kubectl run-container nginx --image=nginx
CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS
nginx nginx nginx run-container=nginx 1
然后我们可以甚至这个容器部署我们主机、 过氧化物酶活性及 ip 是名称是影响 :
core@Kube-MASTER ~ $ kubectl get pods
POD IP CONTAINER(S) IMAGE(S) HOST LABELS STATUS CREATED MESSAGE
nginx-zia71 10.244.38.2 10.1.1.215/10.1.1.215 run-container=nginx Running 3 minutes
nginx nginx Running 1 minutes
我们要找到这相同的信息,通过 Kubernete UI 仪表板 "意见 " 然后 "豆荚 " :
我们可以看到部署的主机上,这个容器,同名的过氧化物酶和其 ip 地址的 ip :
点击它获取更多的细节上我们圆荚体 :
我们可以简单地停止我们的集装箱 :
core@Kube-MASTER ~ $ kubectl stop rc nginx
replicationcontrollers/nginx
我们还可以部署与我们集装箱 2 复制副本 :
core@Kube-MASTER ~ $ kubectl run-container nginx --image=nginx --replicas=2
CONTROLLER CONTAINER(S) IMAGE(S) SELECTOR REPLICAS
nginx nginx nginx run-container=nginx 2
core@Kube-MASTER ~ $ kubectl get pods
POD IP CONTAINER(S) IMAGE(S) HOST LABELS STATUS CREATED MESSAGE
nginx-7gen5 10.244.38.3 10.1.1.215/10.1.1.215 run-container=nginx Running About a minute
nginx nginx Running 39 seconds
nginx-w4xue 10.244.23.3 10.1.1.83/10.1.1.83 run-container=nginx Running About a minute
nginx nginx Running About a minute
有关详细信息,在体系结构、 组件和 Kubernetes 群集操作我们邀请您阅读官方文档 "Kubernetes 体系结构" :
开启评论自动刷新