fix some memcached configuration error 19/4419/4
authorcarey.xu <carey.xuhan@huawei.com>
Mon, 14 Dec 2015 08:50:57 +0000 (16:50 +0800)
committercarey.xu <carey.xuhan@huawei.com>
Tue, 15 Dec 2015 01:09:17 +0000 (09:09 +0800)
JIRA: COMPASS-192

Change-Id: I919afb3c109fed151d35d94e323111b85e44073b
Signed-off-by: carey.xu <carey.xuhan@huawei.com>
deploy/adapters/ansible/openstack/HA-ansible-multinodes.yml
deploy/adapters/ansible/openstack/templates/nova.conf
deploy/adapters/ansible/roles/common/vars/main.yml
deploy/adapters/ansible/roles/dashboard/tasks/main.yml
deploy/adapters/ansible/roles/ha/templates/haproxy.cfg
deploy/adapters/ansible/roles/keystone/templates/keystone.conf
deploy/adapters/ansible/roles/memcached/tasks/main.yml [new file with mode: 0644]
deploy/adapters/ansible/roles/memcached/vars/Debian.yml [new file with mode: 0644]
deploy/adapters/ansible/roles/memcached/vars/RedHat.yml [new file with mode: 0644]
deploy/adapters/ansible/roles/memcached/vars/main.yml [new file with mode: 0644]

index 8dadd58..a60b3d0 100644 (file)
@@ -1,21 +1,19 @@
 ---
 - hosts: all
   remote_user: root
-  sudo: True
   roles:
     - common
     - setup-network
 
 - hosts: ha
   remote_user: root
-  sudo: True
   roles:
     - ha
 
 - hosts: controller
   remote_user: root
-  sudo: True
   roles:
+    - memcached
     - database
     - mq
     - keystone
@@ -38,7 +36,6 @@
 
 - hosts: compute
   remote_user: root
-  sudo: True
   roles:
     - nova-compute
     - neutron-compute
 
 - hosts: all
   remote_user: root
-  sudo: True
   roles:
     - odl_cluster
 
 - hosts: all
   remote_user: root
-  sudo: True
   roles:
     - onos_cluster
 
 
 - hosts: controller
   remote_user: root
-  sudo: True
   roles:
     - ext-network
 
 - hosts: ceph_adm
   remote_user: root
-  sudo: True
   roles:
     - ceph-deploy
 
 - hosts: all
   remote_user: root
-  sudo: True
   roles:
     - monitor
 
 - hosts: all
   remote_user: root
-  sudo: True
   roles:
     - secgroup
index 2364132..cec1144 100644 (file)
@@ -1,3 +1,9 @@
+{% set memcached_servers = [] %}
+{% for host in haproxy_hosts.values() %}
+{% set _ = memcached_servers.append('%s:11211'% host) %}
+{% endfor %}
+{% set memcached_servers = memcached_servers|join(',') %}
+
 [DEFAULT]
 dhcpbridge_flagfile=/etc/nova/nova.conf
 dhcpbridge=/usr/bin/nova-dhcpbridge
@@ -49,7 +55,7 @@ notify_on_state_change = vm_and_task_state
 notification_driver = nova.openstack.common.notifier.rpc_notifier
 notification_driver = ceilometer.compute.nova_notifier
 
-memcached_servers = {{ internal_vip.ip }}:11211
+memcached_servers = {{ memcached_servers }}
 
 [database]
 # The SQLAlchemy connection string used to connect to the database
@@ -64,6 +70,7 @@ identity_uri = http://{{ internal_vip.ip }}:35357
 admin_tenant_name = service
 admin_user = nova
 admin_password = {{ NOVA_PASS }}
+memcached_servers = {{ memcached_servers }}
 
 [glance]
 host = {{ internal_vip.ip }}
index e3dfa49..2c5b567 100644 (file)
@@ -2,7 +2,5 @@
 packages_noarch:
   - python-pip
   - ntp
-  - memcached
 
-services_noarch:
-  - memcached
+services_noarch: []
index 5afcb15..c9eccfb 100644 (file)
 - name: remove ubuntu theme
   action: "{{ ansible_pkg_mgr }} name=openstack-dashboard-ubuntu-theme state=absent"
 
-- name: update memcached conf
-  lineinfile: dest=/etc/memcached.conf state=present
-              regexp="-l *"
-              line="-l {{ internal_vip.ip }}"
-
 - name: update ubuntu horizon settings
   template: src=local_settings_debian
             dest=/etc/openstack-dashboard/local_settings.py
index 0778bb1..7d783a3 100644 (file)
@@ -169,12 +169,16 @@ listen  proxy-ceilometer_api_cluster
 
 listen  proxy-dashboarad
     bind {{ public_vip.ip }}:80
-    option tcpka
-    option httpchk
-    option tcplog
-    balance source
+    mode  http
+    balance  source
+    capture  cookie vgnvisitor= len 32
+    cookie  SERVERID insert indirect nocache
+    option  forwardfor
+    option  httpchk
+    option  httpclose
+    rspidel  ^Set-cookie:\ IP=
 {% for host,ip in haproxy_hosts.items() %}
-    server {{ host }} {{ ip }}:80 weight 1 check inter 2000 rise 2 fall 5
+    server {{ host }} {{ ip }}:80 cookie {{ host }} weight 1 check inter 2000 rise 2 fall 5
 {% endfor %}
 
 listen stats
index b022a08..22173e4 100644 (file)
@@ -1,3 +1,8 @@
+{% set memcached_servers = [] %}
+{% for host in haproxy_hosts.values() %}
+{% set _ = memcached_servers.append('%s:11211'% host) %}
+{% endfor %}
+{% set memcached_servers = memcached_servers|join(',') %}
 [DEFAULT]
 
 admin_token={{ ADMIN_TOKEN }}
@@ -518,8 +523,8 @@ log_dir = /var/log/keystone
 # (dogpile.cache.redis) be used in production deployments.
 # Small workloads (single process) like devstack can use the
 # dogpile.cache.memory backend. (string value)
-#backend=keystone.common.cache.noop
-
+backend=keystone.cache.memcache_pool
+memcache_servers={{ memcached_servers}}
 # Use a key-mangling function (sha1) to ensure fixed length
 # cache-keys. This is toggle-able for debugging purposes, it
 # is highly recommended to always leave this set to True.
@@ -540,7 +545,7 @@ log_dir = /var/log/keystone
 
 # Global toggle for all caching using the should_cache_fn
 # mechanism. (boolean value)
-#enabled=false
+enabled=true
 
 # Extra debugging from the cache backend (cache keys,
 # get/set/delete/etc calls) This is only really useful if you
diff --git a/deploy/adapters/ansible/roles/memcached/tasks/main.yml b/deploy/adapters/ansible/roles/memcached/tasks/main.yml
new file mode 100644 (file)
index 0000000..8b955cb
--- /dev/null
@@ -0,0 +1,13 @@
+---
+- include_vars: "{{ ansible_os_family }}.yml"
+
+- name: install packages
+  action: "{{ ansible_pkg_mgr }} name={{ item }} state=latest update_cache=yes"
+  with_items: packages | union(packages_noarch)
+
+- name: change memcache listen ip
+  lineinfile: dest=/etc/memcached.conf regexp="^-l " line="-l 0.0.0.0"
+
+- name: restart services
+  service: name={{ item }} state=restarted enabled=yes
+  with_items: services| union(services_noarch)
diff --git a/deploy/adapters/ansible/roles/memcached/vars/Debian.yml b/deploy/adapters/ansible/roles/memcached/vars/Debian.yml
new file mode 100644 (file)
index 0000000..7a0d09d
--- /dev/null
@@ -0,0 +1,7 @@
+---
+packages:
+  - python-memcache
+
+services: []
+
+
diff --git a/deploy/adapters/ansible/roles/memcached/vars/RedHat.yml b/deploy/adapters/ansible/roles/memcached/vars/RedHat.yml
new file mode 100644 (file)
index 0000000..8cd2462
--- /dev/null
@@ -0,0 +1,7 @@
+---
+packages:
+  - python-memcached
+
+pip_packages: []
+
+services: []
diff --git a/deploy/adapters/ansible/roles/memcached/vars/main.yml b/deploy/adapters/ansible/roles/memcached/vars/main.yml
new file mode 100644 (file)
index 0000000..40c400a
--- /dev/null
@@ -0,0 +1,6 @@
+---
+packages_noarch:
+  - memcached
+
+services_noarch:
+  - memcached