kubernetes(k8s)安裝部署

Kubernetes是一個開源的,用于管理云平臺中多個主機上的容器化的應用,Kubernetes的目標是讓部署容器化的應用簡單并且高效,Kubernetes提供了應用部署,規劃,更新,維護的一種機制。

Kubernetes一個核心的特點就是能夠自主的管理容器來保證云平臺中的容器按照用戶的期望狀態運行著(比如用戶想讓apache一直運行,用戶不需要關心怎么去做,Kubernetes會自動去監控,然后去重啟,新建,總之,讓apache一直提供服務),管理員可以加載一個微型服務,讓規劃器來找到合適的位置,同時,Kubernetes也系統提升工具以及人性化方面,讓用戶能夠方便的部署自己的應用。

Kubernetes集群包含有節點代理kubelet和Master組件(APIs, scheduler, etc),一切都基于分布式的存儲系統。下面這張圖是Kubernetes的架構圖。

?

?

Kubernetes主要由以下幾個核心組件組成:

?

etcd保存了整個集群的狀態;

apiserver提供了資源操作的唯一入口,并提供認證、授權、訪問控制、API注冊和發現等機制;

controller manager負責維護集群的狀態,比如故障檢測、自動擴展、滾動更新等;

scheduler負責資源的調度,按照預定的調度策略將Pod調度到相應的機器上;

kubelet負責維護容器的生命周期,同時也負責Volume(CVI)和網絡(CNI)的管理;

Container runtime負責鏡像管理以及Pod和容器的真正運行(CRI);

kube-proxy負責為Service提供cluster內部的服務發現和負載均衡。

?基本環境

操作系統:redhat7.2

Docker:1.12.6

網絡規劃工具,統一分配集群Docker容器的虛擬IP,并實現服務之間通信:Flannel 0.7.0

需要關閉防火墻,并連接網絡。

?

master:172.25.21.11 服務:apiserver, controller-manager, scheduler,etcd

node:172.25.21.12 服務:flannel, docker, kubelet, kube-proxy

?

master端安裝和配置etcd

配置本地解析

vim /etc/hosts

?

172.25.21.11??? server11 master

172.25.21.12??? node1

安裝etcd

yum install -y etcd

配置etcd

vim /etc/etcd/etcd.conf??? #修改部分內容如下

?

ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379"

ETCD_ADVERTISE_CLIENT_URLS="http://server11:2379"

?

其中server11表示etcd服務器主機名

?

運行etcd

systemctl start etcd??? #啟動etcd

systemctl enable etcd??? #開機自啟etcd

?

配置etcd的flannel信息

etcdctl -C 172.25.21.11:2379 set /atomic.io/network/config '{"Network":"172.17.0.1/16"}'

?

master端安裝kubernetes-master

安裝

yum install kubernetes-master

?

修改配置文件

?

vim /etc/kubernetes/apiserver

?

KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"

KUBE_ETCD_SERVERS="--etcd-servers=http://server11:2379"

KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,

其中KUBE_ADMISSION_CONTROL的原有的SecurityContextDeny和ServiceAccount是權限相關的配置需要去掉。

?

配置全局配置文件

vim /etc/kubernetes/config

?

KUBE_MASTER="--master=http://master:8080"

?

啟動master服務

systemctl start kube-apiserver kube-scheduler kube-controller-manager

1

測試master服務

?

配置node1節點

配置本地解析

vim /etc/hosts

?

172.25.21.11??? server11 master

172.25.21.12??? node1

?

安裝服務

yum install -y docker flannel kubernetes-node

?

配置flannel

vim /etc/sysconfig/flanneld

?

FLANNEL_ETCD_ENDPOINTS="http://server11:2379"

FLANNEL_ETCD_PREFIX="/atomic.io/network"

?

配置全局配置文件

vim /etc/kubernetes/config

?

KUBE_MASTER="--master=http://master:8080"

?

配置kubelet組件

vim /etc/kubernetes/kubelet

?

KUBELET_HOSTNAME="--hostname-override=node1"

KUBELET_API_SERVER="--api-servers=http://master:8080"

?

啟動服務

systemctl start kubelet kube-proxy

?

測試集群

在master節點運行

?

kubectl get nodes

---------------------

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/386882.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/386882.shtml
英文地址,請注明出處:http://en.pswp.cn/news/386882.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

react typescript 子組件調用父組件

//父組件 import * as React from reactimport { Input } from antdconst Search Input.Searchimport "./index.less"import Child from "./compon/list" interface IProps { MakeMoney?: () > void //暴露方法} export default class ProjectLis…

python random隨機數 RUNOOB python練習題50

用來練手的python練習題,原題鏈接: python練習實例50、 該練習題主要包含了random模塊隨機數的應用,下面給出幾個常用的模塊內函數。 1. 生成浮點型隨機小數 最簡單的,就是用random函數,生成 [0.0,1.0)[0.0, 1.0)[0.0,1.0)范圍…

Spring Cloud Eureka Consul使用和對比

Spring Cloud簡介 最大的區別是Eureka保證AP, Consul為CP。 Consul強一致性(C)帶來的是: 服務注冊相比Eureka會稍慢一些。因為Consul的raft協議要求必須過半數的節點都寫入成功才認為注冊成功 Leader掛掉時,重新選舉期間整個consul不可用。保證了強一致…

符號 RUNOOB python練習題 51

用來練手的python練習題,原題鏈接: python練習實例51 python中的 & 和 | 使用過程中,變量類型不同,這兩個符號的作用也不同。 1. 對于數字變量,&\&& 和 ∣|∣ 用于逐位運算 # 二進制逐位邏輯與門運算 a 0b110…

Eclipse里的快捷鍵

MyEclipse 快捷鍵1(CTRL) ------------------------------------- Ctrl1 快速修復 CtrlD: 刪除當前行 CtrlQ 定位到最后編輯的地方 CtrlL 定位在某行 CtrlO 快速顯示 OutLine CtrlT 快速顯示當前類的繼承結構 CtrlW 關閉當前Editer CtrlK 快速定位到下一個 CtrlE 快…

Python打印楊輝三角形 RUNOOB python練習題61

用來練手的python練習題,原題鏈接: python練習實例61 題干: 打印出楊輝三角形 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 1 6 15 20 15 6 1 1 7 21 35 35 21 7 1 1 8 28 56 70 56 28 8 1 1 9 36 84 126 126 84 36 9 1 實現代碼如下: import numpy as nptable…

使用Docker快速搭建Tensorflow開發環境

當我剛開始學習使用scikit-learn時,總是會出現各種各樣的包依賴問題,兜兜轉轉了一遍才全部安裝好,現在的機器學習算法開發者大都使用tensorflow、pytorch來實現自己的想法,但依然會面臨各種包版本和依賴的問題,有一段時…

Java服務GC參數調優案例

這段時間在整理jvm系列的文章,無意中發現本文,作者思路清晰通過步步分析最終解決問題。我個人特別喜歡這種實戰類的內容,經原作者的授權同意,將文章分享于此。原文鏈接:Java服務GC參數調優案例,下面為轉載此…

RUNOOB python 67 數組的元素互換

用來練手的Python練習題,原題鏈接:python練習實例67 題干: 輸入數組,最大的與第一個元素交換,最小的與最后一個元素交換,輸出數組 代碼如下: import numpy as nptable np.array([10,4,9,3,11,25,37,15,2,231,672,22]) #定義sw…

11.13 ethtool:查詢網卡參數

ethtool命令用于查詢或設置網卡參數。ethtool [devname][rootlinuxprobe ~]# ethtool eth0Settings for eth0:Supported ports: [ TP ]Supported link modes: 10baseT/Half 10baseT/Full 100baseT/Half 100baseT/Full 1000baseT/Full Supported pause frame use: NoSupports au…

微信小程序、微信公眾號、H5之間相互跳轉

一、小程序和公眾號 答案是:可以相互關聯。 在微信公眾號里可以添加小程序。 圖片有點小,我把文字打出來吧: 可關聯已有的小程序或快速創建小程序。已關聯的小程序可被使用在自定義菜單和模版消息等場景中。 公眾號可關聯同主體的10個小程…

數組元素前移后移 RUNOOB python練習題 68

用來練手的python練習題,原題鏈接: python練習實例68 題干: 有 n 個整數,使其前面各數順序向后移 m 個位置,最后 m 個數變成最前面的 m 個數 代碼如下: import numpy as np # 構造一個儲存了n個整數的numpy數組 def numbers_input(n):a n…

LRU緩存簡單實現

緩存接口定義 /*** 緩存接口* * author zhi**/ public interface ICache<K, V> {/*** 添加緩存數據* * param key* param value*/void put(K key, V value);/*** 獲取緩存數據* * param key* return*/V get(K key);/*** 刪除緩存數據* * param key* return*/V remove(K k…

Mac Eclipse安裝lombok

Lombok是一個可以通過注解的形式可以幫助消除一些必須但是顯得很臃腫的Java代碼的工具&#xff0c;通過使用對應的注解&#xff0c;可以在進行編譯源碼的時候生成對應的方法&#xff0c;比如類屬性的get/set/toString()/類的構造方法等. 下面記錄一下在Mac Eclipse是如何安裝Lo…

tf.reduce_sum()方法深度解析

首先看一下reduce_sum及其參數的注釋 : def tf.reduce_sum(input_tensor, axisNone, keepdimsFalse, nameNone) Computes the sum of elements across dimensions of a tensor. Reduces input_tensor along the dimensions given in axis. Unless keepdims is true, the rank o…

主成分分析(PCA)原理詳解_轉載

一、PCA簡介 1. 相關背景 在許多領域的研究與應用中&#xff0c;往往需要對反映事物的多個變量進行大量的觀測&#xff0c;收集大量數據以便進行分析尋找規律。多變量大樣本無疑會為研究和應用提供了豐富的信息&#xff0c;但也在一定程度上增加了數據采集的工作量&#xff0c;…

Mac cnpm裝包時提示Error: EACCES: permission denied解決辦法

Cnpm裝包時提示Error: EACCES: permission denied解決辦法 2018年03月04日 09:31:51 miniminixu 閱讀數&#xff1a;1598 版權聲明&#xff1a;本文為博主原創文章&#xff0c;未經博主允許不得轉載。 https://blog.csdn.net/miniminixu/article/details/79434609 只需在cnpm …

特征點檢測 FAST算法及代碼詳解

本文著重介紹了用于圖像特征點檢測的算法&#xff0c;FAST算法&#xff0c;以及使用matlab的實現。 FAST算法是一種拐點檢測算法&#xff0c;其主要應用于提取圖像中的特征點&#xff0c;在動態成像的一系列圖像中追蹤定位對象。眾所周知&#xff0c;我們生活的世界是動態化的…

Python Email發送,通知業務完成

Email 發送 #!/usr/bin/python # -*- coding: UTF-8 -*- import base64 import smtplib from email.mime.text import MIMEText from email.header import Header from email.utils import formataddrdef crypt(source, key):from itertools import cycleresulttempcycle(key)f…