Rancher安装

1. What's Rancher?

Rancher是一套容器管理平台,它可以帮助组织在生产环境中轻松快捷的部署和管理容器。 Rancher可以轻松地管理各种环境的Kubernetes,满足IT需求并为DevOps团队提供支持。

Kubernetes不仅已经成为的容器编排标准,它也正在迅速成为各类云和虚拟化厂商提供的标准基础架构。Rancher用户可以选择使用Rancher Kubernetes Engine(RKE)创建Kubernetes集群,也可以使用GKE,AKS和EKS等云Kubernetes服务。 Rancher用户还可以导入和管理现有的Kubernetes集群。

Rancher支持各类集中式身份验证系统来管理Kubernetes集群。例如,大型企业的员工可以使用其公司Active Directory凭证访问GKE中的Kubernetes集群。IT管​​理员可以在用户,组,项目,集群和云中设置访问控制和安全策略。 IT管​​理员可以在单个页面对所有Kubernetes集群的健康状况和容量进行监控。

Rancher为DevOps工程师提供了一个直观的用户界面来管理他们的服务容器,用户不需要深入了解Kubernetes概念就可以开始使用Rancher。 Rancher包含应用商店,支持一键式部署Helm和Compose模板。Rancher通过各种云、本地生态系统产品认证,其中包括安全工具,监控系统,容器仓库以及存储和网络驱动程序。下图说明了Rancher在IT和DevOps组织中扮演的角色。每个团队都会在他们选择的公共云或私有云上部署应用程序。

Rancher Platform

2. What's New?

早期的Rancher1.X版本是基于Docker以Cattle为调度引擎的容器管理平台。在Rancher1.X成功和经验的基础上,基于Kubernetes基础上重新设计Rancher2.0版本。 Rancher2.0保留了1.6版的友好功能,如UI和应用商店。但是,2.0包含许多新功能,例如:

  • 内置CI/CD;
  • 告警和日志收集;
  • 多集群管理;
  • Rancher Kubernetes Engine (RKE);
  • 与云Kubernetes服务(如GKE,EKS和AKS)集成;

3. 安装Rancher

要想在主机上安装Rancher,需要先登录到主机上,接着进行以下步骤:

  1. 通过shell工具(例如PuTTy或远程终端连接)登录到主机

  2. 在shell中执行以下命令:

    [root@localhost ~]# mkdir -p /etc/docker
    [root@localhost ~]# vim  /etc/docker/daemon.json
    [root@localhost ~]# systemctl daemon-reload
    [root@localhost ~]#  systemctl restart docker
    [root@localhost ~]# mkdir /rancher
    [root@localhost ~]# docker run -d --restart=unless-stopped -v /rancher/:/var/lib/rancher/ -p 80:80 -p 443:443 rancher/rancher:stable
    Unable to find image 'rancher/rancher:stable' locally
    stable: Pulling from rancher/rancher
    7ddbc47eeb70: Pull complete
    c1bbdc448b72: Pull complete
    8c3b70e39044: Pull complete
    45d437916d57: Pull complete
    28a9e619eb92: Pull complete
    3922b811dfe2: Pull complete
    81d9d43baeba: Pull complete
    ea183fe1d558: Pull complete
    59cb3488b9cd: Pull complete
    470bfb078fde: Pull complete
    9d3364413c7e: Pull complete
    dcceab1151c5: Pull complete
    22541110ae37: Pull complete
    594323731b75: Pull complete
    Digest: sha256:e1da0ac036379f3bb58b3a8a94ba7f794aca9ec34bb42ca24d1e935c4a744f1e
    Status: Downloaded newer image for rancher/rancher:stable
    5c8e861f6a7049eb86dc01fab3a4fdf99394538660c40557ad5ff7e2f6f55e8e
    [root@localhost ~]# docker ps -l
    CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS              PORTS                                      NAMES
    5c8e861f6a70        rancher/rancher:stable   "entrypoint.sh"     23 seconds ago      Up 21 seconds       0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   suspicious_davinci
    [root@localhost ~]#

4. 登录Rancher

登录并开始使用Rancher。登录后,您将进行一些一次性配置。

    1. 打开浏览器,输入https://<server_ip>,server_ip替换为运行Rancher容器主机的ip;

    2. 因为是自动使用的自签名证书,在第一次登录会提示安全授信问题,信任即可;

image-20180703152812587

设置管理员密码

第一次登录会要求设置管理员密码,默认管理员账号为: admin

如果没有设置密码而要求输入当前密码,可以输入密码: admin

image-20180703152943118

设置Rancher Server URL

Rancher Server URL是agent节点注册到Rancher Serverd的地址,需要保证这个地址能够被agent主机访问,不要设置为127.0.0.1或者localhost

5 添加k8s集群

[root@k8s-master ~]# kubectl apply -f https://192.168.180.137/v3/import/bgf67bfvhnhx6btnz4l4ktnqlzn4dq5wm942vsq7rxmv6w2zk5ht2c.yaml
Unable to connect to the server: x509: certificate signed by unknown authority
[root@k8s-master ~]# ll
总用量 279904
-rw-------. 1 root root      1731 12月 18 00:07 anaconda-ks.cfg
drwxr-xr-x  3 root root        59 1月   7 17:20 efk
-rw-r--r--. 1 root root      1779 12月 18 00:11 initial-setup-ks.cfg
-rwxr-xr-x  1 root root  39305216 1月   5 19:40 kubeadm
-rw-r--r--  1 root root      1028 12月 19 22:26 kubeadm-config.yaml
-rw-r--r--  1 root root      4668 12月 19 22:20 kubeadm-init.log
-rw-r--r--  1 root root     14416 12月 19 22:36 kube-flannel.yml
-rw-r--r--. 1 root root       484 12月 18 09:40 kubernetes.conf
-rw-r--r--  1 root root       199 1月   7 00:57 load-images.sh
drwxr-xr-x  2 root root       315 8月   2 17:16 prometheus
-rw-r--r--  1 root root 247267436 1月   7 00:57 prometheus.tar.gz
[root@k8s-master ~]# curl --insecure -sfL https://192.168.180.137/v3/import/bgf67bfvhnhx6btnz4l4ktnqlzn4dq5wm942vsq7rxmv6w2zk5ht2c.yaml | kubectl apply -f -
clusterrole.rbac.authorization.k8s.io/proxy-clusterrole-kubeapiserver created
clusterrolebinding.rbac.authorization.k8s.io/proxy-role-binding-kubernetes-master created
namespace/cattle-system created
serviceaccount/cattle created
clusterrolebinding.rbac.authorization.k8s.io/cattle-admin-binding created
secret/cattle-credentials-e3c7b4d created
clusterrole.rbac.authorization.k8s.io/cattle-admin created
deployment.apps/cattle-cluster-agent created
daemonset.apps/cattle-node-agent created

 

原文地址:https://www.cnblogs.com/dalianpai/p/12168650.html