服务器需要一台台:一台主节点服务器,master、compute、infra安装部署在一起。
[root@master master]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
[root@master master]# cat /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.2.172 master.example.com master
[root@master master]# hostname
master.example.com
[root@master master]# ifconfig enp0s3
enp0s3: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.2.172 netmask 255.255.255.0 broadcast 192.168.2.255
inet6 fe80::e892:c499:5c22:cd7f prefixlen 64 scopeid 0x20<link>
ether 08:00:27:bf:6c:a4 txqueuelen 1000 (Ethernet)
RX packets 2058259 bytes 2745973294 (2.5 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1158605 bytes 102988378 (98.2 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
关闭防火墙
[root@master master]# systemctl stop firewalld
[root@master master]# systemctl disable firewalld
[root@master ~]# yum -y install docker git wget net-tools bind-utils iptables-services bridge-utils bash-completion kexec-tools sos psacct docker
[root@master ~]#yum install ansible -y
[root@master ~]# service docker restart
[root@master ~]# chkconfig docker on
ssh-keygen -f ~/.ssh/id_rsa -N ''
for host in master.example.com
do
ssh-copy-id -i ~/.ssh/id_rsa.pub $host;
done
[root@master images]# docker images
[root@master images]#./docker.images.sh load-images
[root@master ~]# git clone https://github.com/openshift/openshift-ansible /home/openshift-ansible
[root@master yum.repos.d]# cd /etc/yum.repos.d
[root@master yum.repos.d]# cat all.repo
[centos-openshift-origin311]
name=CentOS OpenShift Origin
baseurl=http://buildlogs.centos.org/centos/7/paas/x86_64/openshift-origin311/
enabled=1
gpgcheck=0
gpgkey=/etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS
[centos-openshift-origin311-testing]
name=CentOS OpenShift Origin Testing
baseurl=http://buildlogs.centos.org/centos/7/paas/x86_64/openshift-origin311/
enabled=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS
[centos-openshift-origin311-debuginfo]
name=CentOS OpenShift Origin DebugInfo
baseurl=http://debuginfo.centos.org/centos/7/paas/x86_64/
enabled=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS
[centos-openshift-origin311-source]
name=CentOS OpenShift Origin Source
baseurl=http://vault.centos.org/centos/7/paas/Source/openshift-origin311/
enabled=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-PaaS
[root@master yum.repos.d]# yum clean all && make makecache
[root@master yum.repos.d]# cd /etc/ansible/
[root@master ansible]# cat hosts
# Create an OSEv3 group that contains the masters, nodes, and etcd groups
[OSEv3:children]
masters
nodes
etcd
# Set variables common for all OSEv3 hosts
[OSEv3:vars]
# SSH user, this user should allow ssh based auth without requiring a password
ansible_ssh_user=root
# If ansible_ssh_user is not root, ansible_become must be set to true
#ansible_become=true
openshift_deployment_type=origin
# uncomment the following to enable htpasswd authentication; defaults to AllowAllPasswordIdentityProvider
#openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_disable_check=memory_availability,disk_availability,docker_image_availability,docker_storage
# host group for masters
[masters]
master.example.com
# host group for etcd
[etcd]
master.example.com
# host group for nodes, includes region info
[nodes]
master.example.com openshift_node_group_name='node-config-all-in-one'
hosts文件:
# Create an OSEv3 group that contains the masters, nodes, and etcd groups
[OSEv3:children]
masters
nodes
etcd
# Set variables common for all OSEv3 hosts
[OSEv3:vars]
# SSH user, this user should allow ssh based auth without requiring a password
ansible_ssh_user=root
# If ansible_ssh_user is not root, ansible_become must be set to true
#ansible_become=true
openshift_deployment_type=origin
# uncomment the following to enable htpasswd authentication; defaults to AllowAllPasswordIdentityProvider
#openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true', 'challenge': 'true', 'kind': 'HTPasswdPasswordIdentityProvider'}]
openshift_disable_check=memory_availability,disk_availability,docker_image_availability,docker_storage
# host group for masters
[masters]
master.example.com
# host group for etcd
[etcd]
master.example.com
#host group for nodes, includes region info
[nodes]
#master.example.com openshift_node_group_name='node-config-master'
master.example.com openshift_node_group_name='node-config-all-in-one'
#node1.example.com openshift_node_group_name='node-config-compute'
#node2.example.com openshift_node_group_name='node-config-compute'
[root@master ansible]# ansible-playbook -i hosts /home/openshift-ansible/playbooks/prerequisites.yml
[root@master ansible]# ansible-playbook -i hosts /home/openshift-ansible/playbooks/deploy_cluster.yml
[root@master ansible]#htpasswd -cb /etc/origin/master/htpasswd admin mypwd
[root@master ansible]#oc adm policy add-cluster-role-to-user cluster-admin admin
[root@master ansible]# oc get nodes
192.168.2.172 master.example.com master
如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!
赞4
添加新评论2 条评论
2019-03-29 22:59
2019-03-29 22:59