用ubuntu脚本安装kubernetes1.2.1报错roles[${ii}]: unbound variable

用ubuntu脚本安装kubernetes1.2.1报错:./../cluster/../cluster/ubuntu/util.sh: line 48: roles[${ii}]: unbound variable的解决方案。

报错的原因:是config-default.sh里面 $roles 变量从字符串转数组时候重名引起的赋值错误。

报错的解决方法:修改config-default.sh中第24行的内容(role=${roles:-"ai i i"}) 为(role="ai i i")

     官方原始的配置文件:

## Contains configuration values for the Ubuntu cluster

# Define all your cluster nodes, MASTER node comes first"
# And separated with blank space like <user_1@ip_1> <user_2@ip_2> <user_3@ip_3> 
export nodes=${nodes:-"[email protected] [email protected] [email protected]"}

# Define all your nodes role: a(master) or i(minion) or ai(both master and minion), must be the order same 
role=${roles:-"ai i i"}
# If it practically impossible to set an array as an environment variable
# from a script, so assume variable is a string then convert it to an array
export roles=($role)

# Define minion numbers
export NUM_NODES=${NUM_NODES:-3}
# define the IP range used for service cluster IPs.

经过自己修改后的配置文件:

## Contains configuration values for the Ubuntu cluster

# Define all your cluster nodes, MASTER node comes first"
# And separated with blank space like <user_1@ip_1> <user_2@ip_2> <user_3@ip_3> 
export nodes=${nodes:-"[email protected] [email protected] [email protected]"}

# Define all your nodes role: a(master) or i(minion) or ai(both master and minion), must be the order same 
role="ai i i"
# If it practically impossible to set an array as an environment variable
# from a script, so assume variable is a string then convert it to an array
export roles=($role)

# Define minion numbers
export NUM_NODES=${NUM_NODES:-3}
# define the IP range used for service cluster IPs.


你可能感兴趣的:(variable,KUBERNETES,unbound,rolesii)